# file : tests/common.test # copyright : Copyright (c) 2014-2018 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file # Commonly-used variables setup and driver command line. # # Use the same build system driver as the one running the tests (as opposed # to one that may or may not be found via PATH). Note that this implies that # we don't support cross-testing. # # A common approach will be to run build2 as a sanity check in a directory # produced or updated by a command being tested. # build = $recall($build.path) test.options += --build $build # Helper commands that can be used by tests to prepare the testing environment # or validate an outcome of the command being tested. They are likely to get # additional options and redirects appended prior to use. A common approach # will be to redirect output to the null device for commands that are used for # test setup, and to match it for commands being tested or performing teardown # (for example, to make sure that configuration post-test state is valid and is # as expected). # clean = $* clean deinit = $* deinit init = $* init fetch = $* fetch new = $* new status = $* status sync = $* sync update = $* update config = $* config # All testscripts are named after bdep commands, for example sync.test. So the # testscript scope id is a name of the command being tested. # cmd = [string] $@ test.arguments = $cmd