opnsense-src/tools/regression/bin/sh/parser/heredoc1.0
Jilles Tjoelker f76db14de9 MFC r196607,r198453,r204016,r204017,r204836,r204842,r205105,r205153
Various testcases that work correctly with stable/8 sh.

Note: this creates some gaps in the numbering due to lower-numbered tests
for new functionality which is not or not yet MFC'ed.
2010-03-28 19:34:57 +00:00

85 lines
744 B
Text

# $FreeBSD$
failures=0
check() {
if ! eval "[ $* ]"; then
echo "Failed: $*"
: $((failures += 1))
fi
}
check '"$(cat <<EOF
hi
EOF
)" = hi'
check '"$(cat <<EOF
${$+hi}
EOF
)" = hi'
unset yy
check '"$(cat <<EOF
${yy-hi}
EOF
)" = hi'
check '"$(cat <<EOF
${$+hi
there}
EOF
)" = "hi
there"'
check '"$(cat <<EOF
$((1+1))
EOF
)" = 2'
check '"$(cat <<EOF
$(echo hi)
EOF
)" = hi'
check '"$(cat <<EOF
`echo hi`
EOF
)" = hi'
check '"$(cat <<\EOF
${$+hi}
EOF
)" = "\${\$+hi}"'
check '"$(cat <<\EOF
$(
EOF
)" = \$\('
check '"$(cat <<\EOF
`
EOF
)" = \`'
check '"$(cat <<EOF
"
EOF
)" = \"'
check '"$(cat <<\EOF
"
EOF
)" = \"'
check '"$(cat <<esac
'"'"'
esac
)" = "'"'"'"'
check '"$(cat <<\)
'"'"'
)
)" = "'"'"'"'
exit $((failures != 0))