af6e264b46
The current regexp checks for a \s+ in the beginning, however that will only match if there is a \n in the `ps` output before test-schedbatch, but that will not happen if test-schedbatch is the first process in the list, which happens if the PID of test-schedbatch is low enough to bring it up in the sorted list. Fix it by enabling newline-sensitive matching with (?n) which then allows using ^ and $ anchors in the regexp (including an optional \r introduced by expect.) Matching the end of line also improves checking that the last field matches 18 exactly and not something like 181, etc. Tested that `make check` does not break and also fixed the flakiness seen in an environment with few processes running under the test user which made the issue more frequent. Signed-off-by: Filipe Brandenburger <filbranden@google.com> Signed-off-by: Craig Small <csmall@enc.com.au> |
||
---|---|---|
.. | ||
config | ||
free.test | ||
kill.test | ||
lib.test | ||
pgrep.test | ||
pkill.test | ||
pmap.test | ||
ps.test | ||
pwdx.test | ||
slabtop.test | ||
sysctl.test | ||
uptime.test | ||
vmstat.test | ||
w.test | ||
.gitignore | ||
Makefile.am | ||
README |
How to use check suite ---------------------- You need DejaGNU package. Assuming you have it all you need to do is make check Something failed now what ------------------------- First determine what did not work. If only one check failed you can run it individually in debugging mode. For example runtest -a -de -v w.test/w.exp Expect binary is /usr/bin/expect Using /usr/share/dejagnu/runtest.exp as main test driver [...] Do not bother capturing screen output, it is in testrun.log which test suite generated. $ ls testrun.* dbg.log dbg.log testrun.log testrun.sum The reason why test failed should be in dbg.log. Assuming you figured out the reason you could write a patch fixing w.test/w.exp and send it to upstream. If you do not know how, or have time, to fix the issue create tar.gz file containing test run logs and submit it to upstream maintainers. Notice that in later case upstream sometimes has to ask clarifying questions about environment where problem occurred.