summaryrefslogtreecommitdiffstats
path: root/shell_cmds/sh/tests/expansion/pathname2.0
diff options
context:
space:
mode:
Diffstat (limited to 'shell_cmds/sh/tests/expansion/pathname2.0')
-rw-r--r--shell_cmds/sh/tests/expansion/pathname2.035
1 files changed, 35 insertions, 0 deletions
diff --git a/shell_cmds/sh/tests/expansion/pathname2.0 b/shell_cmds/sh/tests/expansion/pathname2.0
new file mode 100644
index 0000000..3efffb7
--- /dev/null
+++ b/shell_cmds/sh/tests/expansion/pathname2.0
@@ -0,0 +1,35 @@
+# $FreeBSD: head/bin/sh/tests/expansion/pathname2.0 302937 2016-07-16 13:26:18Z ache $
+
+unset LC_ALL
+LC_COLLATE=C
+export LC_COLLATE
+
+failures=0
+
+check() {
+ testcase=$1
+ expect=$2
+ eval "set -- $testcase"
+ actual="$*"
+ if [ "$actual" != "$expect" ]; then
+ failures=$((failures+1))
+ printf '%s\n' "For $testcase, expected $expect actual $actual"
+ fi
+}
+
+set -e
+T=$(mktemp -d ${TMPDIR:-/tmp}/sh-test.XXXXXX)
+trap 'rm -rf $T' 0
+cd -P $T
+
+mkdir testdir testdir2 'testdir/*' 'testdir/?' testdir/a testdir/b testdir2/b
+mkdir testdir2/.c
+touch testf 'testdir/*/1' 'testdir/?/1' testdir/a/1 testdir/b/1 testdir2/b/.a
+
+check '*\/' 'testdir/ testdir2/'
+check '"testdir/"*"/1"' 'testdir/*/1 testdir/?/1 testdir/a/1 testdir/b/1'
+check '"testdir/"*"/"*' 'testdir/*/1 testdir/?/1 testdir/a/1 testdir/b/1'
+check '"testdir/"*\/*' 'testdir/*/1 testdir/?/1 testdir/a/1 testdir/b/1'
+check '"testdir"*"/"*"/"*' 'testdir/*/1 testdir/?/1 testdir/a/1 testdir/b/1'
+
+exit $((failures != 0))