on xenial help sign in
When running qmluitests, make sure that they use LANGUAGE=C, fixing a test failure when running locally in the US.
79684a3Michael Terry
cmake/modules/QmlTest.cmake+15−3
@@ -27,11 +27,14 @@ endif()
27
27
28set(qmlscene_exe ${CMAKE_BINARY_DIR}/tests/uqmlscene/uqmlscene)
28set(qmlscene_exe ${CMAKE_BINARY_DIR}/tests/uqmlscene/uqmlscene)
29
29
30+set(test_env UNITY_TESTING=1)
31+
30macro(add_manual_qml_test SUBPATH COMPONENT_NAME)
32macro(add_manual_qml_test SUBPATH COMPONENT_NAME)
31 set(options NO_ADD_TEST NO_TARGETS)
33 set(options NO_ADD_TEST NO_TARGETS)
32 set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT)
34 set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT)
33
35
34 cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN})
36 cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN})
37+ cmake_parse_arguments(qmltest_default "${options}" "" "${multi_value_keywords}" ${qmltest_DEFAULT_PROPERTIES})
35
38
36 set(qmlscene_TARGET try${COMPONENT_NAME})
39 set(qmlscene_TARGET try${COMPONENT_NAME})
37 set(qmltest_FILE ${SUBPATH}/tst_${COMPONENT_NAME})
40 set(qmltest_FILE ${SUBPATH}/tst_${COMPONENT_NAME})
@@ -49,8 +52,12 @@ macro(add_manual_qml_test SUBPATH COMPONENT_NAME)
49 endforeach(IMPORT_PATH)
52 endforeach(IMPORT_PATH)
50 endif()
53 endif()
51
54
55+ if("${qmltest_ENVIRONMENT}" STREQUAL "")
56+ set(qmltest_ENVIRONMENT "${qmltest_default_ENVIRONMENT}")
57+ endif()
58+
52 set(qmlscene_command
59 set(qmlscene_command
53− env ${qmltest_ENVIRONMENT}
60+ env ${test_env} ${qmltest_ENVIRONMENT}
54 ${qmlscene_exe} -qmljsdebugger=port:3768 ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
61 ${qmlscene_exe} -qmljsdebugger=port:3768 ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
55 ${qmlscene_imports}
62 ${qmlscene_imports}
56 )
63 )
@@ -71,6 +78,7 @@ macro(add_qml_test_internal SUBPATH COMPONENT_NAME ITERATIONS)
71 set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT)
78 set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT)
72
79
73 cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN})
80 cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN})
81+ cmake_parse_arguments(qmltest_default "${options}" "" "${multi_value_keywords}" ${qmltest_DEFAULT_PROPERTIES})
74
82
75 set(qmltest_TARGET test${COMPONENT_NAME})
83 set(qmltest_TARGET test${COMPONENT_NAME})
76 set(qmltest_xvfb_TARGET xvfbtest${COMPONENT_NAME})
84 set(qmltest_xvfb_TARGET xvfbtest${COMPONENT_NAME})
@@ -102,8 +110,12 @@ macro(add_qml_test_internal SUBPATH COMPONENT_NAME ITERATIONS)
102 set(ITERATIONS_STRING "")
110 set(ITERATIONS_STRING "")
103 endif()
111 endif()
104
112
113+ if("${qmltest_ENVIRONMENT}" STREQUAL "")
114+ set(qmltest_ENVIRONMENT "${qmltest_default_ENVIRONMENT}")
115+ endif()
116+
105 set(qmltest_command
117 set(qmltest_command
106− env ${qmltest_ENVIRONMENT} UNITY_TESTING=1
118+ env ${test_env} ${qmltest_ENVIRONMENT}
107 ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
119 ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
108 ${qmltestrunner_imports}
120 ${qmltestrunner_imports}
109 ${ITERATIONS_STRING}
121 ${ITERATIONS_STRING}
@@ -117,7 +129,7 @@ macro(add_qml_test_internal SUBPATH COMPONENT_NAME ITERATIONS)
117 set(LD_PRELOAD_PATH "LD_PRELOAD=/usr/lib/${ARCH_TRIPLET}/mesa/libGL.so.1")
129 set(LD_PRELOAD_PATH "LD_PRELOAD=/usr/lib/${ARCH_TRIPLET}/mesa/libGL.so.1")
118 endif()
130 endif()
119 set(qmltest_xvfb_command
131 set(qmltest_xvfb_command
120− env ${qmltest_ENVIRONMENT} ${LD_PRELOAD_PATH} UNITY_TESTING=1
132+ env ${test_env} ${qmltest_ENVIRONMENT} ${LD_PRELOAD_PATH}
121 xvfb-run --server-args "-screen 0 1024x768x24" --auto-servernum
133 xvfb-run --server-args "-screen 0 1024x768x24" --auto-servernum
122 ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
134 ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
123 ${qmltestrunner_imports}
135 ${qmltestrunner_imports}
tests/plugins/Utils/CMakeLists.txt−1
@@ -11,7 +11,6 @@ macro(run_tests)
11 -o ${CMAKE_BINARY_DIR}/${_test}.xml,xunitxml
11 -o ${CMAKE_BINARY_DIR}/${_test}.xml,xunitxml
12 -o -,txt)
12 -o -,txt)
13 add_test(NAME ${_test} COMMAND ${testCommand})
13 add_test(NAME ${_test} COMMAND ${testCommand})
14− set_tests_properties(${_test} PROPERTIES ENVIRONMENT "LC_ALL=C")
15 add_custom_target(${_test} env "LC_ALL=C" ${testCommand})
14 add_custom_target(${_test} env "LC_ALL=C" ${testCommand})
16 add_executable(${_test}Exec ${_test}.cpp modeltest.cpp)
15 add_executable(${_test}Exec ${_test}.cpp modeltest.cpp)
17 qt5_use_modules(${_test}Exec Test Core Qml)
16 qt5_use_modules(${_test}Exec Test Core Qml)