summaryrefslogtreecommitdiffstats
path: root/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'coin/instructions/cmake_run_ctest_enforce_exit_code.yaml')
-rw-r--r--coin/instructions/cmake_run_ctest_enforce_exit_code.yaml52
1 files changed, 50 insertions, 2 deletions
diff --git a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml b/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml
index ba9b1f3a79..a7039b5015 100644
--- a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml
+++ b/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml
@@ -11,6 +11,11 @@ instructions:
- 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"
@@ -26,7 +31,7 @@ instructions:
instructions:
- type: EnvironmentVariable
variableName: ASAN_OPTIONS
- variableValue: "malloc_context_size=100"
+ 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.
@@ -46,9 +51,24 @@ instructions:
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"
@@ -56,12 +76,40 @@ instructions:
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: 900
+ maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}"
userMessageOnFailure: >
Failed to run tests.