# file : libbuild2/build/script/parser+body.test.testscript # license : MIT; see accompanying LICENSE file test.options += -b : lines : $* <>EOO s = 'foo' if echo "$s" | sed 's/o/a/p' >>>? 'bar' f = 'baz' else f = 'fox' end depdb clear depdb string "$s" depdb hash "$f" foo "$s" "$f" EOI foo "$s" "$f" EOO : temp_dir : { test.options += -t : no : $* <false foo EOI : yes : $* <true foo f = $~/f EOI : preamble-no : $* <false f1 = $~/f2 depdb string "$f1" f2 = $~/f3 depdb string "$f2" foo "$f1" "$f2" EOI : preamble-yes : $* <true f1 = $~/f1 depdb string "$f1" f2 = $~/f2 foo "$f2" EOI } : command : $* <>EOF foo >| 2>- &a &?b foo >=c 2>~/error:.*/ &!c foo >>:/~%EOS% %.* abc %xyz.*% EOS EOF : if-else : $* <>EOF if foo bar elif fox if fix baz end biz end if! foo bar elif! fox baz end EOF : quoting : $* <>EOO foo 'bar' "baz" '' "" "$foo" "foo$bar" "fo"o "foo"\" "foo\\" "foo\"<" fo\"o fo\\o fo\>EOE != 0 buildfile:11:4: error: expected newline instead of EOE