aboutsummaryrefslogtreecommitdiffstats
path: root/shell_cmds/sh/tests/parser/heredoc2.0
diff options
context:
space:
mode:
Diffstat (limited to 'shell_cmds/sh/tests/parser/heredoc2.0')
-rw-r--r--shell_cmds/sh/tests/parser/heredoc2.039
1 files changed, 39 insertions, 0 deletions
diff --git a/shell_cmds/sh/tests/parser/heredoc2.0 b/shell_cmds/sh/tests/parser/heredoc2.0
new file mode 100644
index 0000000..f07f5d4
--- /dev/null
+++ b/shell_cmds/sh/tests/parser/heredoc2.0
@@ -0,0 +1,39 @@
+# $FreeBSD: head/bin/sh/tests/parser/heredoc2.0 211405 2010-08-16 21:14:49Z jilles $
+
+failures=0
+
+check() {
+ if ! eval "[ $* ]"; then
+ echo "Failed: $*"
+ : $((failures += 1))
+ fi
+}
+
+s='ast*que?non' sq=\' dq=\"
+
+check '"$(cat <<EOF
+${s}
+EOF
+)" = "ast*que?non"'
+
+check '"$(cat <<EOF
+${s+'$sq'x'$sq'}
+EOF
+)" = ${sq}x${sq}'
+
+check '"$(cat <<EOF
+${s#ast}
+EOF
+)" = "*que?non"'
+
+check '"$(cat <<EOF
+${s##"ast"}
+EOF
+)" = "*que?non"'
+
+check '"$(cat <<EOF
+${s##'$sq'ast'$sq'}
+EOF
+)" = "*que?non"'
+
+exit $((failures != 0))