# file : tests/test/simple/generated/testscript # license : MIT; see accompanying LICENSE file test.arguments = test clean .include ../../common.testscript # @@ in module # +cat <<EOI >+build/bootstrap.build using version EOI +cat <<EOI >=manifest : 1 name: test version: 1.2.3 EOI # This one is a bit tricky since we need an executable to run. We don't want # to be building anything as part of our test project so what we do is test # the directory target with an overridden test target (note that $src_root # here refers to the root of the project being tested). : input : ln -s $src_base/input.in ./; $* <<EOI driver = $src_root/../exe{driver} ./: test = $driver ./: $driver ./: file{input}: test.input = true file{input}: in{input} $src_root/manifest #@@ in module EOI : output : ln -s $src_base/output.in ./; $* <<EOI driver = $src_root/../exe{driver} ./: test = $driver ./: $driver ./: file{output}: test.stdout = true file{output}: in{output} $src_root/manifest #@@ in module EOI : timeout : { : operation : { : no-output : ln -s $src_base/output.in ./; $* config.test.timeout=1 <<EOI 2>>/~%EOE% != 0 driver = $src_root/../exe{driver} ./: test = $driver ./: test.options = -s ./: $driver EOI error: test dir{./} failed % error: .+ -s terminated: execution timeout expired% % info: test command line: .+% EOE : output : ln -s $src_base/output.in ./; $* config.test.timeout=1 &output &output.d <<EOI 2>>/~%EOE% != 0 driver = $src_root/../exe{driver} ./: test = $driver ./: test.options = -s ./: $driver ./: file{output}: test.stdout = true file{output}: in{output} $src_root/manifest #@@ in module EOI error: test dir{./} failed % error: diff .+ terminated: execution timeout expired% % error: .+ -s terminated: execution timeout expired% % info: test command line: .+% EOE } : test : { : no-output : ln -s $src_base/output.in ./; $* config.test.timeout=/1 <<EOI 2>>/~%EOE% != 0 driver = $src_root/../exe{driver} ./: test = $driver ./: test.options = -s ./: $driver EOI error: test dir{./} failed % error: .+ -s terminated: execution timeout expired% % info: test command line: .+% EOE } } : runner : if ($cxx.target.class != 'windows') { cat <<EOI >=run; #!/bin/sh if test "$1" = "--trace"; then shift echo "tracing" fi "$@" EOI chmod u+x run; echo 'tracing' >=output.in; cat $src_base/output.in >+output.in; $* config.test.runner="./run --trace" <<EOI driver = $src_root/../exe{driver} ./: test = $driver ./: $driver ./: file{output}: test.stdout = true file{output}: in{output} $src_root/manifest #@@ in module EOI }