summaryrefslogtreecommitdiff
path: root/regress
diff options
context:
space:
mode:
authorrillig <rillig>2006-09-20 07:39:54 +0000
committerrillig <rillig>2006-09-20 07:39:54 +0000
commit6e496a30497e1d18906154f089ee8dea59646264 (patch)
tree0a7c5533e95677d43da86932adddfbe0c2f116af /regress
parent6017cc85bf416d7c4dd7de4a44a4135eea317c99 (diff)
downloadpkgsrc-6e496a30497e1d18906154f089ee8dea59646264.tar.gz
Added a testsuite for sed(1) to make sure it can handle character
classes.
Diffstat (limited to 'regress')
-rw-r--r--regress/tools/Makefile6
-rw-r--r--regress/tools/files/sed-test.sh39
2 files changed, 42 insertions, 3 deletions
diff --git a/regress/tools/Makefile b/regress/tools/Makefile
index 310144d1e5f..211cb998255 100644
--- a/regress/tools/Makefile
+++ b/regress/tools/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.4 2006/06/25 21:47:28 rillig Exp $
+# $NetBSD: Makefile,v 1.5 2006/09/20 07:39:54 rillig Exp $
#
DISTNAME= # not applicable
@@ -12,8 +12,8 @@ COMMENT= Test whether the TOOLS do what I expect
NO_CHECKSUM= yes
WRKSRC= ${WRKDIR}
-REGRESS_TESTS= awk sort tr
-USE_TOOLS+= awk sort tr
+REGRESS_TESTS= awk sed sort tr
+USE_TOOLS+= awk sed sort tr
do-build:
.for t in ${REGRESS_TESTS}
diff --git a/regress/tools/files/sed-test.sh b/regress/tools/files/sed-test.sh
new file mode 100644
index 00000000000..26f10bd43e6
--- /dev/null
+++ b/regress/tools/files/sed-test.sh
@@ -0,0 +1,39 @@
+#! /bin/sh
+# $NetBSD: sed-test.sh,v 1.1 2006/09/20 07:39:55 rillig Exp $
+#
+
+set -e
+
+mydir=`dirname "$0"`
+. "${mydir}/tests.subr"
+
+#
+# Functions specific for the "sed" testsuite.
+#
+
+# usage: sed_test <testname> <input> <expected-output> <args...>
+sed_test() {
+ testname=$1; input=$2; expected=$3; shift 3;
+
+ testcase_start "${testname}"
+ output=`sed "$@" <<EOF
+$input
+EOF
+`
+ assert_equal "${testname}" "${expected}" "${output}"
+}
+
+#
+# The actual test.
+#
+
+nl="
+"
+
+#
+# Make sure that sed(1) can handle character classes.
+#
+sed_test "[[:character classes:]]" \
+ "hello${nl}foo bar" \
+ "hello" \
+ -e "/[[:space:]]/d"