blob: a7039b5015ec4c40b5bdc01b3d1ad7a0efdee360 (
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
|
type: Group
instructions:
- type: ScheduleUploadTestResults
- type: PrependToEnvironmentVariable
variableName: PATH
variableValue: "{{.Env.PYTHON3_PATH}}:"
disable_if:
condition: property
property: host.os
equals_value: Windows
- type: EnvironmentVariable
variableName: TESTRUNNER
variableValue: "{{.Env.LIBEXEC_INSTALL_DIR}}qt-testrunner.py --"
# Running wasm tests with the coin testrunner is not yet implemented
disable_if:
condition: property
property: target.osVersion
in_values: [WebAssembly]
- type: AppendToEnvironmentVariable
variableName: TESTRUNNER
variableValue: " {{.SourceDir}}/coin_qnx_qemu_runner.sh"
enable_if:
condition: property
property: target.osVersion
in_values: [QNX_710]
- type: Group
enable_if:
condition: property
property: features
contains_value: UseAddressSanitizer
instructions:
- type: EnvironmentVariable
variableName: ASAN_OPTIONS
variableValue: "malloc_context_size=100:detect_leaks=0"
- type: EnvironmentVariable
# Override qt-testrunner as we don't want to gather test statistics
# because many tests FAIL when built with ASAN.
variableName: TESTRUNNER
variableValue: "{{.Env.LIBEXEC_INSTALL_DIR}}sanitizer-testrunner.py"
- type: EnvironmentVariable
variableName: COIN_CTEST_RESULTSDIR
variableValue: "{{.AgentWorkingDir}}\\testresults"
enable_if:
condition: property
property: host.os
equals_value: Windows
- type: EnvironmentVariable
variableName: COIN_CTEST_RESULTSDIR
variableValue: "{{.AgentWorkingDir}}/testresults"
disable_if:
condition: property
property: host.os
equals_value: Windows
# Keep the testrun quiet for ASAN testruns, since there are FAILs happening all over the place...
- type: EnvironmentVariable
variableName: CTEST_ARGS
variableValue: "-V"
disable_if:
condition: property
property: features
contains_value: UseAddressSanitizer
# ...and only print the output from a failing test, i.e. test with ASAN errors.
- type: EnvironmentVariable
variableName: CTEST_OUTPUT_ON_FAILURE
variableValue: "1"
enable_if:
condition: property
property: features
contains_value: UseAddressSanitizer
- type: AppendToEnvironmentVariable
variableName: CTEST_ARGS
variableValue: " --stop-on-failure"
enable_if:
condition: property
property: features
contains_value: AbortTestingOnFirstFailure
# Enable CTest's JUnit XML summary only for recent versions
- type: AppendToEnvironmentVariable
variableName: CTEST_ARGS
variableValue: " --output-junit {{.Env.COIN_CTEST_RESULTSDIR}}{{.Env.CI_PATH_SEP}}test_summary.ctest_junit_xml"
enable_if:
condition: runtime
env_var: CMAKE_MIN_SUPPORTED_BIN_PATH
equals_value: null
- !include "{{qt/qtbase}}/coin_module_test_android_start_emulator.yaml"
- type: EnvironmentVariable
variableName: COIN_CROSS_PLATFORM_VERSION_TEST
variableValue: "TRUE"
enable_if:
condition: and
conditions:
- condition: property
property: platformDependency
not_equals_value: null
- condition: property
property: platformDependency.target.osVersion
not_equals_property: target.osVersion
- condition: property
property: features
contains_value: TestOnly
- type: ExecuteCommand
command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
ignoreExitCode: false
maxTimeInSeconds: 10800
maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}"
userMessageOnFailure: >
Failed to run tests.
- type: Group
instructions:
# Qttestrunner does not work with bic tests.
- type: EnvironmentVariable
variableName: TESTRUNNER
variableValue: ""
- type: EnvironmentVariable
variableName: QT_MODULE_TO_TEST
variableValue: "{{.SourceDir}}"
- type: PrependToEnvironmentVariable
variableName: PATH
variableValue: "{{.InstallDir}}/bin:"
- type: InstallSourceArchive
maxTimeInSeconds: 600
maxTimeBetweenOutput: 600
project: qt/qtqa
ref: dev
directory: qt/qtqa
userMessageOnFailure: "Could not install qt/qtqa source archive. Please investigate why."
- type: ChangeDirectory
directory: "{{.AgentWorkingDir}}/qt/qtqa/tests/postbuild/bic"
- type: ExecuteCommand
command: ["{{.InstallDir}}/bin/qmake"]
maxTimeInSeconds: 7200
maxTimeBetweenOutput: 300
userMessageOnFailure: "Failed to execute qmake for bic tests"
- type: RunQtUnitTest
runTestCommand: ["make", "check", "-j1"]
directory: "{{.AgentWorkingDir}}/qt/qtqa/tests/postbuild/bic"
testRepetitionAllowance: 0
maxTimeInSeconds: 7200
maxTimeBetweenOutput: 300
userMessageOnFailure: "Running bic tests failed."
enable_if:
condition: and
conditions:
- condition: property
property: features
contains_value: Packaging
- condition: property
property: target.os
equals_value: Linux
- condition: property
property: features
contains_value: EnableBicTests
|