1206145Sjilles# $FreeBSD: releng/11.0/bin/sh/tests/parser/heredoc2.0 211405 2010-08-16 21:14:49Z jilles $
2206145Sjilles
3206145Sjillesfailures=0
4206145Sjilles
5206145Sjillescheck() {
6206145Sjilles	if ! eval "[ $* ]"; then
7206145Sjilles		echo "Failed: $*"
8206145Sjilles		: $((failures += 1))
9206145Sjilles	fi
10206145Sjilles}
11206145Sjilles
12206145Sjilless='ast*que?non' sq=\' dq=\"
13206145Sjilles
14206145Sjillescheck '"$(cat <<EOF
15206145Sjilles${s}
16206145SjillesEOF
17206145Sjilles)" = "ast*que?non"'
18206145Sjilles
19206145Sjillescheck '"$(cat <<EOF
20206145Sjilles${s+'$sq'x'$sq'}
21206145SjillesEOF
22206145Sjilles)" = ${sq}x${sq}'
23206145Sjilles
24206145Sjillescheck '"$(cat <<EOF
25206145Sjilles${s#ast}
26206145SjillesEOF
27206145Sjilles)" = "*que?non"'
28206145Sjilles
29206145Sjillescheck '"$(cat <<EOF
30206145Sjilles${s##"ast"}
31206145SjillesEOF
32206145Sjilles)" = "*que?non"'
33206145Sjilles
34206145Sjillescheck '"$(cat <<EOF
35206145Sjilles${s##'$sq'ast'$sq'}
36206145SjillesEOF
37206145Sjilles)" = "*que?non"'
38206145Sjilles
39206145Sjillesexit $((failures != 0))
40