1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-14 15:21:37 +03:00
systemd/test
Zbigniew Jędrzejewski-Szmek 739d81ddd0 test: wrap $LOOPDEV in quotes
Otherwise things go awry if it is not set ('[ -b ]' is not the same as '[ -b "" ]'!).
2013-12-10 07:46:21 -05:00
..
TEST-01-BASIC test: rework run_qemu 2013-12-10 07:46:21 -05:00
TEST-02-CRYPTSETUP test: rework run_qemu 2013-12-10 07:46:21 -05:00
TEST-03-JOBS test: rework run_qemu 2013-12-10 07:46:21 -05:00
.gitignore update .gitignore 2013-01-28 03:54:49 +01:00
a.service
b.service
c.service
d.service
daughter.service cgroups: Cache controller masks and optimize queues. 2013-11-22 11:22:47 +10:00
e.service
end.service
f.service
g.service
h.service
hello-after-sleep.target test: add test for jobs 2013-01-25 22:29:56 +01:00
hello.service test: add test for jobs 2013-01-25 22:29:56 +01:00
Makefile
parent.slice cgroups: Cache controller masks and optimize queues. 2013-11-22 11:22:47 +10:00
README.testsuite test: rework run_qemu 2013-12-10 07:46:21 -05:00
rule-syntax-check.py test: add licence header and switch to LGPL 2013-08-14 22:55:40 +02:00
rules-test.sh test: add licence header and switch to LGPL 2013-08-14 22:55:40 +02:00
sched_idle_bad.service
sched_idle_ok.service
sched_rr_bad.service
sched_rr_change.service
sched_rr_ok.service
sleep.service test: add test for jobs 2013-01-25 22:29:56 +01:00
son.service cgroups: Cache controller masks and optimize queues. 2013-11-22 11:22:47 +10:00
sys.tar.xz
test-functions test: wrap $LOOPDEV in quotes 2013-12-10 07:46:21 -05:00
testsuite.target
udev-test.pl Fix spelling errors using 'codespell' tool 2013-04-15 08:40:05 -04:00
unstoppable.service test: test irreversible jobs 2013-02-23 14:18:17 +01:00

The extended testsuite only works with uid=0. It contains of several
subdirectories named "test/TEST-??-*", which are run one by one.

To run the extended testsuite do the following:

$ make all
$ cd test
$ sudo make clean check
...
make[1]: Entering directory `/mnt/data/harald/git/systemd/test/TEST-01-BASIC'
Making all in .
Making all in po
Making all in docs/libudev
Making all in docs/gudev
TEST: Basic systemd setup [OK]
make[1]: Leaving directory `/mnt/data/harald/git/systemd/test/TEST-01-BASIC'
...

If one of the tests fails, then $subdir/test.log contains the log file of
the test.

To debug a special testcase of the testsuite do:

$ make all
$ cd test/TEST-01-BASIC
$ sudo make clean setup run

QEMU
====

If you want to log in the testsuite virtual machine, you can specify
additional kernel command line parameter with $KERNEL_APPEND.

$ sudo make KERNEL_APPEND="systemd.unit=multi-user.target" clean setup run

you can even skip the "clean" and "setup" if you want to run the machine again.

$ sudo make KERNEL_APPEND="systemd.unit=multi-user.target" run

You can specify a different kernel and initramfs with $KERNEL_BIN and $INITRD.
(Fedora's default kernel path and initramfs are used by default)

$ sudo make KERNEL_BIN=/boot/vmlinuz-foo INITRD=/boot/initramfs-bar clean check

A script will try to find your QEMU binary. If you want to specify a different
one you can use $QEMU_BIN.

$ sudo make QEMU_BIN=/path/to/qemu/qemu-kvm clean check