X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=docs%2Ftestsuite;h=bf85cb1fbe34411cffa0c19b71d79dd4b6ea6193;hb=aa0b1f599f25cfe858ebbc7fa80d459bcdb2ae02;hp=71c6a427862fb4b4a46c32f093923a25e21c2c63;hpb=eb837cbd009dab61e713ca12c0d882d707c3f2a3;p=i3%2Fi3 diff --git a/docs/testsuite b/docs/testsuite index 71c6a427..bf85cb1f 100644 --- a/docs/testsuite +++ b/docs/testsuite @@ -41,10 +41,10 @@ Apart from this document, you should also have a look at: http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf 2. The latest Perl documentation of the "i3test" (general testcase setup) and "i3test::Test" (additional test instructions) modules: - http://build.i3wm.org/docs/lib-i3test.html respectively - http://build.i3wm.org/docs/lib-i3test-test.html + https://build.i3wm.org/docs/lib-i3test.html respectively + https://build.i3wm.org/docs/lib-i3test-test.html 3. The latest documentation on i3’s IPC interface: - http://build.i3wm.org/docs/ipc.html + https://build.i3wm.org/docs/ipc.html == Implementation @@ -75,13 +75,16 @@ used to install the testsuite. Many users prefer to use the more modern +cpanminus+ instead, though (because it asks no questions and just works): The tests additionally require +Xephyr(1)+ to run a nested X server. Install -+xserver-xephyr+ on Debian or +xorg-xserver-xephyr+ on Arch Linux. ++xserver-xephyr+ on Debian or +xorg-server-xephyr+ on Arch Linux. .Installing testsuite dependencies using cpanminus (preferred) -------------------------------------------------------------------------------- $ cd ~/i3/testcases $ sudo apt-get install cpanminus $ sudo cpanm . +$ cd ~/i3/AnyEvent-I3 +$ sudo cpanm Module::Install +$ sudo cpanm . -------------------------------------------------------------------------------- If you don’t want to use cpanminus for some reason, the same works with cpan: @@ -90,10 +93,13 @@ If you don’t want to use cpanminus for some reason, the same works with cpan: -------------------------------------------------------------------------------- $ cd ~/i3/testcases $ sudo cpan . +$ cd ~/i3/AnyEvent-I3 +$ sudo cpan Module::Install +$ sudo cpan . -------------------------------------------------------------------------------- In case you don’t have root permissions, you can also install into your home -directory, see http://michael.stapelberg.de/cpan/ +directory, see https://michael.stapelberg.de/cpan/ === Mechanisms @@ -112,9 +118,20 @@ the tests without an X session with Xvfb, such as with +xvfb-run ./complete-run+. This will also speed up the tests significantly especially on machines without a powerful video card. -.Example invocation of complete-run.pl+ +.Example invocation of +complete-run.pl+ --------------------------------------- -$ cd ~/i3/testcases +$ cd ~/i3 + +$ autoreconf -fi + +$ mkdir -p build && cd build + +$ ../configure + +$ make -j8 +# output omitted because it is very long + +$ cd testcases $ ./complete-run.pl # output omitted because it is very long @@ -160,6 +177,41 @@ $ ./complete-run.pl --parallel=1 --keep-xserver-output This will show the output of Xephyr, which is the X server implementation we use for testing. +===== make command: +make check+ +Make check runs the i3 testsuite. +You can still use ./testcases/complete-run.pl to get the interactive progress output. + +.Example invocation of +make check+ +--------------------------------------- +$ cd ~/i3 + +$ autoreconf -fi + +$ mkdir -p build && cd build + +$ ../configure + +$ make -j8 +# output omitted because it is very long + +$ make check +# output omitted because it is very long +PASS: testcases/complete-run.pl +============================================================================ +Testsuite summary for i3 4.13 +============================================================================ +# TOTAL: 1 +# PASS: 1 +# SKIP: 0 +# XFAIL: 0 +# FAIL: 0 +# XPASS: 0 +# ERROR: 0 +============================================================================ + +$ less test-suite.log +---------------------------------------- + ==== Coverage testing Coverage testing is possible with +lcov+, the front-end for GCC's coverage @@ -188,7 +240,7 @@ interface which i3 provides. It is used for the startup process of i3, for terminating it cleanly and (most importantly) for modifying and getting the current state (layout tree). -See [http://i3wm.org/docs/ipc.html] for documentation on the IPC interface. +See [https://i3wm.org/docs/ipc.html] for documentation on the IPC interface. ==== X11::XCB