123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- #! /bin/sh
- . test-init.sh
- cp "$am_testaux_srcdir"/trivial-test-driver . \
- || fatal_ "failed to fetch auxiliary script trivial-test-driver"
- cat >> configure.ac << 'END'
- AC_OUTPUT
- END
- cat > Makefile.am << 'END'
- TEST_EXTENSIONS = .t
- T_LOG_DRIVER = $(SHELL) $(srcdir)/trivial-test-driver
- TESTS = \
- pass.t \
- fail.t \
- fail2.t \
- pass-fail.t \
- pass4-skip.t \
- pass3-skip2-xfail.t \
- pass-xpass-fail-xfail-skip-error.t
- END
- cat > pass.t << 'END'
- echo %% pass %%
- echo PASS: pass
- END
- cat > fail.t << 'END'
- echo %% fail %%
- echo FAIL: fail
- END
- cat > fail2.t << 'END'
- echo %% fail2 %%
- echo FAIL: stdout >&1
- echo FAIL: stderr >&2
- echo :PASS: this should be ignored
- END
- cat > pass-fail.t << 'END'
- echo %% pass-fail %%
- echo 'FAIL: this fails :-('
- echo 'some randome message'
- echo 'some randome warning' >&2
- echo 'PASS: this passes :-)'
- echo 'INFO: blah'
- echo 'WARNING: blah blah' >&2
- END
- cat > pass4-skip.t << 'END'
- echo %% pass4-skip %%
- echo PASS: on stdout >&1
- echo PASS: on stderr >&2
- echo PASS: 3
- echo PASS: 4
- echo SKIP: 1
- echo this FAIL: should be ignored
- echo FAIL as should this
- exit 99
- END
- cat > pass3-skip2-xfail.t << 'END'
- echo %% pass4-skip2-xfail %%
- echo 'PASS: -v'
- echo 'PASS: --verbose'
- echo 'SKIP: Oops, unsupported system.'
- echo 'PASS: -#-#-#-'
- cp || echo "SKIP: cp cannot read users' mind" >&2
- mv || echo "XFAIL: mv cannot read users' mind yet"
- exit 127
- END
- cat > pass-xpass-fail-xfail-skip-error.t << 'END'
- echo PASS:
- echo FAIL:
- echo XFAIL:
- echo XPASS:
- echo SKIP:
- echo ERROR:
- echo %% pass-xpass-fail-xfail-skip-error %%
- END
- chmod a+x *.t
- $ACLOCAL
- $AUTOCONF
- $AUTOMAKE
- for vpath in : false; do
- if $vpath; then
- mkdir build
- cd build
- srcdir=..
- else
- srcdir=.
- fi
- $srcdir/configure
- run_make -O -e FAIL check || { cat test-suite.log; exit 1; }
- cat test-suite.log
-
-
- $FGREP INVALID.NAME stdout test-suite.log && exit 1
- test -f BAD.LOG && exit 1
- test -f BAD.TRS && exit 1
-
- cat pass.log
- cat fail.log
- cat fail2.log
- cat pass-fail.log
- cat pass4-skip.log
- cat pass3-skip2-xfail.log
- cat pass-xpass-fail-xfail-skip-error.log
- count_test_results total=23 pass=10 fail=5 skip=4 xfail=2 xpass=1 error=1
- tst=pass-xpass-fail-xfail-skip-error
- grep "^PASS: $tst\.t, testcase 1" stdout
- grep "^FAIL: $tst\.t, testcase 2" stdout
- grep "^XFAIL: $tst\.t, testcase 3" stdout
- grep "^XPASS: $tst\.t, testcase 4" stdout
- grep "^SKIP: $tst\.t, testcase 5" stdout
- grep "^ERROR: $tst\.t, testcase 6" stdout
-
-
-
-
-
- grep '%%' test-suite.log
- grep '%% fail %%' test-suite.log
- grep '%% fail2 %%' test-suite.log
- grep '%% pass-fail %%' test-suite.log
- grep '%% pass-xpass-fail-xfail-skip-error %%' test-suite.log
- test $(grep -c '%% ' test-suite.log) -eq 4
- run_make -O TESTS='pass.t pass3-skip2-xfail.t' check
- cat test-suite.log
- count_test_results total=7 pass=4 fail=0 skip=2 xfail=1 xpass=0 error=0
- cd $srcdir
- done
- :
|