1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-01 17:51:22 +03:00
systemd/test
Evgeny Vereshchagin 55161d41eb tests: remove unnecessary /sys/fs/cgroup/systemd checking
A unified hierarchy obsoletes this checking
2015-11-25 11:43:58 +00:00
..
bus-policy
loopy.service.d
mocks
TEST-01-BASIC Merge pull request #1957 from zonque/qemu-test 2015-11-24 15:02:20 +01:00
TEST-02-CRYPTSETUP tests: fix ls: cannot access /var/tmp/systemd-test.*/journal/*/*.journal 2015-11-19 14:52:41 +00:00
TEST-03-JOBS
test-execute test-execute: Add tests for new PassEnvironment= directive 2015-11-11 07:55:23 -08:00
test-path
.gitignore
a.service
b.service
basic.target
c.service
d.service
daughter.service
e.service
end.service
f.service
g.service
grandchild.service
h.service
hello-after-sleep.target
hello.service
loopy2.service
loopy3.service
loopy4.service
loopy.service
Makefile
parent-deep.slice
parent.slice
README.testsuite tests: fix initrd searching on Debian/Ubuntu 2015-11-20 12:10:12 +00:00
rule-syntax-check.py
sched_idle_bad.service
sched_idle_ok.service
sched_rr_bad.service
sched_rr_change.service
sched_rr_ok.service
shutdown.target
sleep.service
sockets.target
son.service
splash.bmp
sys.tar.xz
sysinit.target
sysv-generator-test.py
test-efi-create-disk.sh
test-functions tests: remove unnecessary /sys/fs/cgroup/systemd checking 2015-11-25 11:43:58 +00:00
testsuite.target
timers.target
udev-test.pl
unstoppable.service tests: fix unstoppable service 2015-11-12 03:24:10 +00: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
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 or Debian'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