#! /bin/sh # Copyright (C) 2011-2021 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 . # Basic TAP test protocol support: # - "Bail out!" magic . test-init.sh . tap-setup.sh : > exp #------------------------------------------------------------------ # Bailout without explanation. cat > a.test <> exp < b.test <> exp < c.test <> exp < d.test <> exp # error += 1 #------------------------------------------------------------------ # TAP input comprised only of a bailout directive. cat > e.test <> exp # error += 1 #------------------------------------------------------------------ # Doing the sums above, we have: test_counts='total=12 pass=3 fail=1 xpass=1 xfail=1 skip=1 error=5' run_make -O -e FAIL TESTS='a.test b.test c.test d.test e.test' check count_test_results $test_counts LC_ALL=C sort exp > t mv -f t exp # We need the sort below to account for parallel make usage. grep ': [abcde]\.test' stdout | LC_ALL=C sort > got cat exp cat got diff exp got :