From: Dmitry V. Levin Date: Thu, 29 May 2014 21:14:14 +0000 (+0000) Subject: tests: add a test for -c and -w options X-Git-Tag: v4.9~74 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=772e32b67b0ebf1791140e9074769cbed0871478;p=strace tests: add a test for -c and -w options * tests/count.test: New test. * tests/Makefile.am (TESTS): Add it. --- diff --git a/tests/Makefile.am b/tests/Makefile.am index c63c41f6..e65312c2 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -15,6 +15,7 @@ TESTS = \ net.test \ net-fd.test \ uio.test \ + count.test \ detach-sleeping.test \ detach-stopped.test \ detach-running.test diff --git a/tests/count.test b/tests/count.test new file mode 100755 index 00000000..bc7ae7cd --- /dev/null +++ b/tests/count.test @@ -0,0 +1,44 @@ +#!/bin/sh + +# Check whether -c and -w options work. + +. "${srcdir=.}/init.sh" + +check_prog sleep +check_prog grep + +make_log() +{ + $STRACE $args > $LOG 2>&1 || { + cat $LOG + fail_ "$STRACE $args failed" + } +} + +grep_log() +{ + LC_ALL=C grep -E -x -e "$*" $LOG > /dev/null || { + cat $LOG + fail_ "unexpected output from $STRACE $args" + } +} + +args='-c sleep 1' +make_log +grep nanosleep $LOG > /dev/null || + skip_ 'sleep does not use nanosleep' +grep_log ' *[^ ]+ +0\.0[^n]*nanosleep' + +args='-c -enanosleep sleep 1' +make_log +grep_log ' *[^ ]+ +0\.0[^n]*nanosleep' + +args='-cw sleep 1' +make_log +grep_log ' *[^ ]+ +1\.0[^n]*nanosleep' + +args='-cw -enanosleep sleep 1' +make_log +grep_log '100\.00 +1\.0[^n]*nanosleep' + +exit 0