git/t/chainlint/subshell-here-doc.test
Eric Sunshine 3042b6bb59 chainlint: match "quoted" here-doc tags
A here-doc tag can be quoted ('EOF'/"EOF") or escaped (\EOF) to suppress
interpolation within the body. chainlint recognizes single-quoted and
escaped tags, but does not know about double-quoted tags. For
completeness, teach it to recognize double-quoted tags, as well.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2018-08-29 10:57:38 -07:00

40 lines
620 B
Plaintext

(
# LINT: stitch together incomplete \-ending lines
# LINT: swallow here-doc to avoid false positives in content
echo wobba \
gorgo snoot \
wafta snurb <<-EOF &&
quoth the raven,
nevermore...
EOF
# LINT: missing "&&" on 'cat'
cat <<EOF >bip
fish fly high
EOF
# LINT: swallow here-doc (EOF is last line of subshell)
echo <<-\EOF >bop
gomez
morticia
wednesday
pugsly
EOF
) &&
(
# LINT: swallow here-doc with arbitrary tag
cat <<-\ARBITRARY >bup &&
glink
FIZZ
ARBITRARY
cat <<-'ARBITRARY2' >bup2 &&
glink
FIZZ
ARBITRARY2
cat <<-"ARBITRARY3" >bup3 &&
glink
FIZZ
ARBITRARY3
meep
)