xserver/test
Michel Dänzer e58203c1e2 test: Kill weston whenever shell exits
This script runs with -e, so if the timeout command returns a non-0
exit status (meaning the while loop timed out), the script exits
immediately as well.

This would leave weston running in the background, which resulted in
meson waiting for weston to terminate until hitting meson's own timeout.

Instead, explicitly kill weston whenever the shell exits. This results
in meson recording the test as failed immediately.

As a bonus, we can drop the special handling around run-piglit.sh.

v2:
* Use trap (José Expósito)
v3:
* Explicitly use bash, and document a bashism we rely on
  (Olivier Fourdan)
2023-10-09 14:22:19 +00:00
..
bigreq test: Fix build dependency for bigreq test 2017-12-08 11:36:24 -05:00
bugs glamor: make use of GL_EXT_texture_format_BGRA8888 2022-12-01 08:41:57 +00:00
damage test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
scripts test: Kill weston whenever shell exits 2023-10-09 14:22:19 +00:00
sync test: const correctness fix 2017-10-04 11:19:09 -04:00
xi1 Remove "All rights reserved" from Oracle copyright notices 2023-02-25 09:40:41 -08:00
xi2 test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
.gitignore tests: Convert test/ to single binary 2017-01-12 15:01:36 -05:00
README test: Fix typo and drop documentation references to glib. 2015-09-23 10:48:12 -04:00
fixes.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
hashtabletest.c tests: Convert test/ to single binary 2017-01-12 15:01:36 -05:00
input.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
list.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
meson.build meson: add glamor gles2 tests 2022-12-01 08:41:57 +00:00
misc.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
signal-logging.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
simple-xinit.c simple-xinit: Introduce an escaped "--" argument. 2019-03-27 09:50:19 -07:00
string.c Remove "All rights reserved" from Oracle copyright notices 2023-02-25 09:40:41 -08:00
test_xkb.c xkb: rename xkb.h to xkb-procs.h 2022-07-08 14:27:04 +00:00
tests-common.c tests: Convert test/xi1/ to single binary 2017-01-12 15:01:29 -05:00
tests-common.h Use ARRAY_SIZE all over the tree 2017-10-30 13:45:20 -04:00
tests.c tests: Fix guards for ld -wrap 2017-02-23 13:16:07 -05:00
tests.h tests: Convert test/ to single binary 2017-01-12 15:01:36 -05:00
touch.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
xfree86.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00
xtest.c test: #undef NDEBUG so assert is not compiled away 2021-12-08 20:59:21 +00:00

                        X server test suite

This suite contains a set of tests to verify the behaviour of functions used
internally to the server.

= How it works =
Through some automake abuse, we link the test programs with the same static
libraries as the Xorg binary. The test suites can then call various functions
and verify their behaviour - without the need to start the server or connect
clients.

This testing only works for functions that do not rely on a particular state
of the X server. Unless the test suite replicates the expected state, which
may be difficult.

= How to run the tests =
Run "make check" in the test directory. This will compile the tests and execute
them in the order specified in the TESTS variable in test/Makefile.am.

Each set of tests related to a subsystem are available as a binary that can be
executed directly. For example, run "xkb" to perform some xkb-related tests.

== Adding a new test ==
When adding a new test, ensure that you add a short description of what the
test does and what the expected outcome is.