summaryrefslogtreecommitdiff
path: root/regress/tools/files/sh-test.sh
diff options
context:
space:
mode:
Diffstat (limited to 'regress/tools/files/sh-test.sh')
-rw-r--r--regress/tools/files/sh-test.sh41
1 files changed, 41 insertions, 0 deletions
diff --git a/regress/tools/files/sh-test.sh b/regress/tools/files/sh-test.sh
new file mode 100644
index 00000000000..d3dab9d9a51
--- /dev/null
+++ b/regress/tools/files/sh-test.sh
@@ -0,0 +1,41 @@
+#! /bin/sh
+# $NetBSD: sh-test.sh,v 1.1 2006/11/09 12:39:55 rillig Exp $
+#
+
+set -e
+
+mydir=`dirname "$0"`
+. "${mydir}/tests.subr"
+
+#
+# Functions specific for the sh testsuite.
+#
+
+# usage: sh_test <testname> <input> <expected-output> <args...>
+sh_test() {
+ testname=$1; input=$2; expected=$3; shift 3;
+
+ testcase_start "${testname}"
+ output=`sh ${1+"$@"} <<EOF
+$input
+EOF
+`
+ assert_equal "${testname}" "${expected}" "${output}"
+}
+
+# usage: sh_assert_equals "testname" "expected" "got"
+sh_assert_equals() {
+
+ testcase_start "$1"
+ assert_equal "$1" "$2" "$3"
+}
+
+#
+# The actual test.
+#
+
+nl="
+"
+
+line="#define bindir \"/usr/bin\" /* bar */"
+sh_assert_equals "removing C comments" "#define bindir \"/usr/bin\" " "${line%%/\**}"