2023-04-08 00:35:25 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
cd "${0%/*}" || exit 1
|
|
|
|
. ../run-tests
|
|
|
|
|
2023-04-10 13:10:14 +00:00
|
|
|
export name=Willy
|
2023-04-08 00:35:25 +00:00
|
|
|
wrapped() {
|
2023-04-10 13:10:14 +00:00
|
|
|
# Wrapping 'cat' in a subshell eats the trailing whitespace
|
|
|
|
# The echo adds a newline, which is preserved.
|
2023-04-08 00:35:25 +00:00
|
|
|
echo "<b>$(cat)</b>"
|
|
|
|
}
|
|
|
|
template() {
|
|
|
|
cat <<EOF
|
|
|
|
{{#wrapped}}
|
|
|
|
{{name}} is awesome.
|
|
|
|
{{/wrapped}}
|
|
|
|
... this is the last line.
|
|
|
|
EOF
|
|
|
|
}
|
2023-04-23 14:24:12 +00:00
|
|
|
|
|
|
|
# We don't expect {{name}} to be changed. The function returns whatever content
|
|
|
|
# that should be the result. There is a separate test where the function handles
|
|
|
|
# parsing mustache tags.
|
|
|
|
export expected=$'<b> {{name}} is awesome.</b>\n... this is the last line.\n'
|
2023-04-08 00:35:25 +00:00
|
|
|
|
|
|
|
runTest
|