| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 | #! /bin/sh# Copyright (C) 2011-2017 Free Software Foundation, Inc.## This program is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation; either version 2, or (at your option)# any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with this program.  If not, see <http://www.gnu.org/licenses/>.# parallel-tests:#   - Automake can correctly handle conditionals contents for the#     LOG_DRIVER variables.. test-init.shcp "$am_testaux_srcdir"/trivial-test-driver . \  || fatal_ "failed to fetch auxiliary script trivial-test-driver"cp "$am_scriptdir"/tap-driver.sh . \  || fatal_ "failed to fetch auxiliary script tap-driver.sh"cat >> configure.ac << ENDAM_CONDITIONAL([COND1], [:])AM_CONDITIONAL([COND2], [false])AM_CONDITIONAL([COND3], [false])AC_SUBST([PERL], ['$PERL'])AC_SUBST([my_LOG_DRIVER], ['\${SHELL} \${top_srcdir}/trivial-test-driver'])AM_SUBST_NOTMAKE([my_LOG_DRIVER])AC_OUTPUTEND$ACLOCAL$AUTOCONFcat > Makefile.am << 'END'TESTS = foo bar.test baz.shEXTRA_DIST = $(TESTS) tap-driver.sh trivial-test-driverTEST_EXTENSIONS = .test .shLOG_DRIVER =SH_LOG_DRIVER = $(tap_rulez)if COND1LOG_DRIVER += @my_LOG_DRIVER@if COND2tap_rulez = falseelse !COND2tap_rulez = $(PERL) $(srcdir)/tap-driver.shendif !COND2endif COND1ENDcat > foo <<'END'#!/bin/shecho "PASS: from $0"echo "SKIP: from $0"exit 1 # exit status should be ignored by the trivial-test-driver.ENDcat > bar.test <<'END'#!/bin/shexit 0ENDcat > baz.sh <<'END'#!/bin/shecho 1..3echo 'ok 1'echo 'not ok 2 # TODO'echo 'not ok 3 # TODO'ENDchmod a+x foo bar.test baz.sh$AUTOMAKE -atest -f test-drivergrep DRIVER Makefile.in || exit 99 # For debugging.grep '^my_LOG_DRIVER *=' Makefile.in \  && fatal_ 'unexpected $(my_LOG_DRIVER) in Makefile.in'grep '^TEST_LOG_DRIVER =.*\$(SHELL).*/test-driver' Makefile.in$PERL -MTAP::Parser -e 1 \  || skip_ "cannot import TAP::Parser perl module"./configuredo_count (){  count_test_results total=6 pass=3 fail=0 skip=1 xfail=2 xpass=0 error=0  grep '^PASS: foo, testcase 1 *$' stdout  grep '^SKIP: foo, testcase 2 *$' stdout  grep '^PASS: bar\.test *$' stdout  $EGREP 'PASS: baz\.sh 1( |$)' stdout  $EGREP 'XFAIL: baz\.sh 2( |$)' stdout  $EGREP 'XFAIL: baz\.sh 3( |$)' stdout}run_make -O -e IGNORE checkcat test-suite.logcat foo.logcat bar.logcat baz.logtest $am_make_rc -eq 0 || exit 1do_countrun_make -O distcheckdo_count:
 |