2 util-linux regression tests
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 It's expected that for each invasive change or important bugfix you will
6 include a test to your patch.
8 Compile binaries, libs, extra test programs and run the basic tests:
12 Compile extra test programs only:
16 Note that the configure option --disable-static disables many of libmount and
19 Run all tests including tests that require root permissions:
22 # ./run.sh [options, see --help]
24 Alternatively using sudo and make:
27 $ sudo -E make check TS_OPTS="--parallel=1"
29 note that as root you have to manually remove output and diff directories
33 or run 'make clean' as root.
39 $ ./run.sh <test_directory-name>
46 or individual test script, for example:
50 The tests is possible to exclude by ./run.sh --exclude=<list> where the
51 <list> is blank separated test names in format "testdir/testname", for example:
53 $ ./run.sh --exclude="mount/move"
55 The --exclude is evaluated by the ./run.sh script only. See below
57 TS_OPT_testdir_[testscript_]fake=
59 environment variable which provides more powerful functionality to skip tests.
62 *** WARNING for root users ***
64 The tests touch your /etc/fstab, initialize loop devices or scsi_debug devices
65 if executed with root permissions.
67 Please, be careful and use these tests only for development and never on
73 The fuzz targets can be built and run along with the other tests (after installing
76 $ ./tools/config-gen fuzz
84 Evaluated by "make check" to override the default command (run.sh).
86 - build all test dependencies, but skip the actual test
87 $ make check TS_COMMAND="true"
91 Evaluated by "make check" to pass options.to run.sh (see ./run.sh --help).
94 $ make check TS_OPTS="--parallel=1 utmp"
96 TS_OPT_testdir_[testscript_]fake="<yes|no>"
98 Evaluated by any test script to skip certain tests.
100 - skip all the tests within "fdisk" test-directory:
101 $ make check TS_OPT_fdisk_fake="yes"
103 - skip only "fdisk/bsd" test:
104 $ make check TS_OPT_fdisk_bsd_fake="yes"
106 - skip all "fdisk" tests except fdisk/bsd:
107 $ make check TS_OPT_fdisk_fake="yes" TS_OPT_fdisk_bsd_fake="no"
109 TS_OPT_testdir_[testscript_]known_fail="<yes|no>"
111 Similar usage like TS_OPT_*_fake above. "known_fail" means that the given
112 test will run but (negative) results will be ignored. The build log and test
113 diffs will still remind you about the issue.
115 TS_OPT_testdir_[testscript_]verbose="<yes|no>"
117 Set verbosity for certain tests. Similar usage like TS_OPT_*_fake above.
119 TS_OPT_testdir_[testscript_]memcheck="<yes|no>"
121 Run certain tests with valgrind. Similar usage like TS_OPT_*_fake above.
127 Coveralls coverage reports
129 URL: https://coveralls.io/github/util-linux/util-linux
131 lgtm CI - automatically executed security code analysis
133 URL: https://lgtm.com/projects/g/util-linux/util-linux/
137 URL: https://scan.coverity.com/projects/karelzak-util-linux
139 Fossies codespell report
141 URL: https://fossies.org/linux/test/util-linux-master.tar.gz/codespell.html
145 URL: https://google.github.io/oss-fuzz/
146 URL: https://oss-fuzz-build-logs.storage.googleapis.com/index.html#util-linux
147 URL: https://oss-fuzz.com/coverage-report/job/libfuzzer_asan_util-linux/latest
151 URL: https://google.github.io/oss-fuzz/getting-started/continuous-integration/
152 URL: https://github.com/util-linux/util-linux/actions?query=workflow%3ACIFuzz