mirror of
https://github.com/X11Libre/xserver.git
synced 2026-10-06 22:55:10 +00:00
Add a test-suite for in-server unit-testing.
This patch adds a test/ directory that contains the setup for a unit-testing suite designed for in-server unit-testing. All functions available to the X server are available to the test binaries through static linking. This test suite uses the glib testing framework. Do not use glib calls outside of the test/ directory. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
parent
c2c515ead3
commit
4eac0df060
4 changed files with 260 additions and 0 deletions
36
test/README
Normal file
36
test/README
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
X server test suite
|
||||
|
||||
This suite contains a set of tests to verify the behaviour of functions used
|
||||
internally to the server. This test suite is based on glib's testing
|
||||
framework [1].
|
||||
|
||||
= 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" 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. If the test reproduces a
|
||||
particular bug, using g_test_bug().
|
||||
|
||||
== Misc ==
|
||||
|
||||
The programs "gtester" and "gtester-report" may be used to generate XML/HTML
|
||||
log files of tests succeeded and failed.
|
||||
|
||||
---------
|
||||
|
||||
[1] http://library.gnome.org/devel/glib/stable/glib-Testing.html
|
||||
Loading…
Reference in a new issue