# file : tests/test/script/common.testscript # copyright : Copyright (c) 2014-2019 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file # Commonly-used build system test project setup and driver command line # (test module using testscript tests). # +mkdir build +cat <<"EOI" >=build/bootstrap.build project = test amalgamation = using test EOI # We assume the specified target if any is in out_base which would be two # levels up from our working directory. # +if! $empty($target) cat <<"EOI" >=build/root.build target = \$src_root/../../$string([name] $target) testscript{*}: test = \$target EOI end # The "cat & build" setup: first cat ($c) the testscript, then run build ($b) # which will execute the testscript. We have to quote stdin because of the # command line re-expansion. # # Note that the buildfile is clever hack that relies on the first target # automatically becoming dir{./}'s prerequisite. # c = cat >=testscript b = $0 --no-default-options --serial-stop --quiet --buildfile - test \ <"'testscript{testscript}: \$target'" \ &?test/***