mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-09-22 18:16:17 +02:00
62dca6c1cf
We have tests that are failing in some environments, but it's difficult to handle them because: - for some environments we just allow all the tests to fail: DANGEROUS - when we don't allow failures we have flacky tests: A CI pain So, to avoid this and ensure that: - New failing tests are tracked in all platforms - gitlab integration on tests reports is working - coverage is reported also for failing tests Add support for `can_fail` keyword on tests that would mark the test as part of the `failing` test suite. Not adding the suite directly when defining the tests as this is definitely simpler and allows to define conditions more clearly (see next commits). Now, add a default test setup that does not run the failing and flaky tests by default (not to bother distributors with testing well-known issues) and eventually run all the tests in CI: - Non-flaky tests cannot fail in all platforms - Failing and Flaky tests can fail In both cases we save the test reports so that gitlab integration is preserved.
17 lines
437 B
Bash
Executable File
17 lines
437 B
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
./.gitlab-ci/check-missing-install-tag.py _build
|
|
|
|
meson test \
|
|
-C _build \
|
|
--timeout-multiplier "${MESON_TEST_TIMEOUT_MULTIPLIER}" \
|
|
"$@"
|
|
|
|
# Run only the flaky tests, so we can log the failures but without hard failing
|
|
meson test \
|
|
-C _build \
|
|
--timeout-multiplier "${MESON_TEST_TIMEOUT_MULTIPLIER}" \
|
|
"$@" --setup=unstable_tests --suite=failing --suite=flaky || true
|