blob: a70362a0c8a1d49a91d61c64ae911dd533952897 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
###########################
# GSettings Schema
###########################
# build the necessary schemas
set_directory_properties (PROPERTIES
ADDITIONAL_MAKE_CLEAN_FILES gschemas.compiled)
set_source_files_properties (gschemas.compiled GENERATED)
# GSettings:
# compile the org.ayatana.display schema into a gschemas.compiled file in this directory,
# and help the tests to find that file by setting -DSCHEMA_DIR
set (XDG_DATA_DIRS "${CMAKE_CURRENT_BINARY_DIR}/gsettings-schemas")
set (SCHEMA_DIR "${XDG_DATA_DIRS}/glib-2.0/schemas")
set (DISPLAY_SCHEMA ${CMAKE_BINARY_DIR}/data/org.ayatana.display.gschema.xml)
add_definitions(-DSCHEMA_DIR="${SCHEMA_DIR}")
execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} gio-2.0 --variable glib_compile_schemas
OUTPUT_VARIABLE COMPILE_SCHEMA_EXECUTABLE
OUTPUT_STRIP_TRAILING_WHITESPACE)
add_custom_command (OUTPUT gschemas.compiled
DEPENDS ${CMAKE_BINARY_DIR}/data/org.ayatana.display.gschema.xml
COMMAND mkdir -p ${SCHEMA_DIR}
COMMAND cp -f ${DISPLAY_SCHEMA} ${SCHEMA_DIR}
COMMAND ${COMPILE_SCHEMA_EXECUTABLE} ${SCHEMA_DIR})
set(SERVICE_LINK_LIBRARIES
${SERVICE_LIB}
${SERVICE_DEPS_LIBRARIES}
)
set(QT_LINK_LIBRARIES
test-utils
Qt5::Core
Qt5::Test
Qt5::DBus
)
set(TEST_LINK_LIBRARIES
${TEST_DEPS_LIBRARIES}
${GTEST_LIBRARIES}
${GMOCK_LIBRARIES}
)
add_definitions(
-DGREETER_TEMPLATE="${CMAKE_SOURCE_DIR}/tests/utils/mock-greeter.py"
)
function(add_test_by_name name)
set(TEST_NAME ${name})
set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
add_executable (${TEST_NAME} ${TEST_NAME}.cpp gschemas.compiled)
target_link_options(${TEST_NAME} PRIVATE -no-pie)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
target_link_libraries(${TEST_NAME} ${SERVICE_LINK_LIBRARIES} ${TEST_LINK_LIBRARIES} ${THREAD_LINK_LIBRARIES})
endfunction()
add_test_by_name(adbd-client-test)
add_test_by_name(rotation-lock-test)
function(add_qt_test_by_name name)
set(TEST_NAME ${name})
set(COVERAGE_TEST_TARGETS ${COVERAGE_TEST_TARGETS} ${TEST_NAME} PARENT_SCOPE)
add_executable (${TEST_NAME} ${TEST_NAME}.cpp)
target_link_options(${TEST_NAME} PRIVATE -no-pie)
add_test(${TEST_NAME} ${TEST_NAME})
set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT ${CTEST_ENVIRONMENT})
target_link_libraries(${TEST_NAME} ${SERVICE_LINK_LIBRARIES} ${QT_LINK_LIBRARIES} ${TEST_LINK_LIBRARIES} ${THREAD_LINK_LIBRARIES})
endfunction()
add_qt_test_by_name(greeter-test)
add_qt_test_by_name(usb-snap-test)
set(COVERAGE_TEST_TARGETS
${COVERAGE_TEST_TARGETS}
PARENT_SCOPE
)
|