Update tapview and tapdiffer.
authorEric S. Raymond <esr@thyrsus.com>
Mon, 15 Jan 2024 10:03:53 +0000 (05:03 -0500)
committerEric S. Raymond <esr@thyrsus.com>
Mon, 15 Jan 2024 10:03:53 +0000 (05:03 -0500)
tests/tapdiffer
tests/tapview

index 679867ea9d80de619e03451826ade1f26b691907..ea1cfa7041f5ca004f8edb737ea2c533da6b200d 100755 (executable)
@@ -1,6 +1,4 @@
 #! /bin/sh
-# SPDX-FileCopyrightText: Copyright Eric S. Raymond <esr@thyrsus.com>
-# SPDX-License-Identifier: MIT-0
 #
 # tapdiffer - Render diff between input and checkfile as a TAP report
 #
 # OSD-compliant; otherwise the following SPDX tag incorporates the
 # MIT No Attribution license by reference.
 #
+# SPDX-FileCopyrightText: (C) Eric S. Raymond <esr@thyrsus.com>
+# SPDX-License-Identifier: MIT-0
+#
 # A newer version may be available at https://gitlab.com/esr/tapview
 # Check your last commit dqte for this file against the commit list
 # there to see if it might be a good idea to update.
 #
-if [ "$1" = "-b" ]
-then
-    diffopts=-ub
-    shift
-else
-    diffopts=-u
-fi
+diffopts=-u
+while getopts bn opt
+do
+    case $opt in
+       b) diffopts=-ub;;
+       *) echo "tapdiffer: unknown option ${opt}."; exit 1;;
+    esac
+done
+# shellcheck disable=SC2004
+shift $(($OPTIND - 1))
 
 legend=$1
 checkfile=$2
@@ -37,7 +41,7 @@ if diff --text "${diffopts}" "${checkfile}" - >/tmp/tapdiff$$
 then
        echo "ok - ${legend}"
 else
-       echo "not ok - ${checkfile}: ${legend}"
+       echo "not ok - ${legend}"
        if [ ! "${QUIET}" = 1 ]
        then
                echo "  --- |"
index b96b4367972a7a0a10fb8bc40f55cfef388bd678..0a36f88cada4f0d6774051d4210217c0969bbdbe 100755 (executable)
@@ -4,14 +4,15 @@
 # This code is intended to be embedded in your project. The author
 # grants permission for it to be distributed under the prevailing
 # license of your project if you choose, provided that license is
-# OSD-compliant; otherwise the following SPDX tag incorporates a
-# license by reference.
+# OSD-compliant; otherwise the following SPDX tag incorporates the
+# MIT No Attribution license by reference.
 #
-# SPDX-FileCopyrightText: Copyright Eric S. Raymond <esr@thyrsus.com>
-# SPDX-License-Identifier: BSD-2-Clause
+# SPDX-FileCopyrightText: (C) Eric S. Raymond <esr@thyrsus.com>
+# SPDX-License-Identifier: MIT-0
 #
-# This is version 1.6
 # A newer version may be available at https://gitlab.com/esr/tapview
+# Check your last commit date for this file against the commit list
+# there to see if it might be a good idea to update.
 #
 OK="."
 FAIL="F"
@@ -19,13 +20,16 @@ SKIP="s"
 TODO_NOT_OK="x"
 TODO_OK="u"
 
+LF='
+'
+
 ship_char() {
     # shellcheck disable=SC2039
     printf '%s' "$1"   # https://www.etalabs.net/sh_tricks.html
 }
 
 ship_line() {
-    report="${report}${1}\n"
+    report="${report}${1}$LF"
 }
 
 ship_error() {
@@ -34,7 +38,7 @@ ship_error() {
     then
        echo ""
     fi
-    report="${report}${1}\n"
+    report="${report}${1}$LF"
     echo "${report}"
     exit 1
 }
@@ -76,6 +80,10 @@ context_pop () {
     then
        ship_line "Expected $(context_get expect) tests but only ${testcount} ran."
        status=1
+     elif [ "$(context_get plan)" != "" ] && [ "$(context_get expect)" -lt "$(context_get count)" ]
+    then
+       ship_line "${testcount} ran but $(context_get expect) expected."
+       status=1
     fi
 }