diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2010-11-30 10:42:31 +0000 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2010-11-30 10:42:31 +0000 |
commit | 17233ce2113aa730752ae3420cc209b2a72ab616 (patch) | |
tree | fd147e3ee7cb8c6f88204f66adeead712139ab16 /HACKING | |
parent | ba7ec6aea325b0a6df5777afc057df087f669a7b (diff) | |
download | libguestfs-17233ce2113aa730752ae3420cc209b2a72ab616.tar.gz libguestfs-17233ce2113aa730752ae3420cc209b2a72ab616.tar.xz libguestfs-17233ce2113aa730752ae3420cc209b2a72ab616.zip |
capitests: Move test documentation into HACKING file.
Diffstat (limited to 'HACKING')
-rw-r--r-- | HACKING | 37 |
1 files changed, 36 insertions, 1 deletions
@@ -69,7 +69,7 @@ appliance/ The qemu appliance, build scripts and so on. capitests/ - Automated tests of the C API. + Automated tests of the C API. See "Tests" below. cat/ The 'virt-cat', 'virt-filesystems' and 'virt-ls' commands and @@ -163,6 +163,41 @@ src/ test-tool/ Interactive qemu/kernel test tool. +Tests +---------------------------------------------------------------------- + +You can supply zero or as many tests as you want per API call. + +Note that the test environment has 3 block devices, of size 500MB, +50MB and 10MB (respectively /dev/sda, /dev/sdb, /dev/sdc), and +a fourth ISO block device with some known files on it (/dev/sdd). + +Note for partitioning purposes, the 500MB device has 1015 cylinders. +Number of cylinders was 63 for IDE emulated disks with precisely +the same size. How exactly this is calculated is a mystery. + +The ISO block device (/dev/sdd) comes from images/test.iso. + +To be able to run the tests in a reasonable amount of time, +the virtual machine and block devices are reused between tests. +So don't try testing kill_subprocess :-x + +Between each test we blockdev-setrw, umount-all, lvm-remove-all. + +Don't assume anything about the previous contents of the block +devices. Use 'Init*' to create some initial scenarios. + +You can add a prerequisite clause to any individual test. This +is a run-time check, which, if it fails, causes the test to be +skipped. Useful if testing a command which might not work on +all variations of libguestfs builds. A test that has prerequisite +of 'Always' is run unconditionally. + +In addition, packagers can skip individual tests by setting the +environment variables: eg: + SKIP_TEST_<CMD>_<NUM>=1 SKIP_TEST_COMMAND_3=1 (skips test #3 of command) + SKIP_TEST_<CMD>=1 SKIP_TEST_ZEROFREE=1 (skips all zerofree tests) + Debugging ---------------------------------------------------------------------- |