diff options
author | Andrii Doroshenko (Xrayez) <xrayez@gmail.com> | 2020-07-26 14:46:44 +0300 |
---|---|---|
committer | Andrii Doroshenko (Xrayez) <xrayez@gmail.com> | 2020-07-26 17:41:46 +0300 |
commit | 60f53140b85748f6ce61c353facc15f45fd7ae4a (patch) | |
tree | 395e4ef4e22335cc772abe435092988185ae4677 /modules/SCsub | |
parent | 9856c8fda45c080886603515320faec4858d46dd (diff) |
Enable support for C++ modules tests
Modules-specific tests can be written under respective module folders.
Each module should have "tests" folder created with the tests implemented
as `doctest` headers, so they can be collected by the buildsystem and
included directly in `tests/test_main.cpp` to be compiled.
Diffstat (limited to 'modules/SCsub')
-rw-r--r-- | modules/SCsub | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/modules/SCsub b/modules/SCsub index 9155a53eaf..2d774306e4 100644 --- a/modules/SCsub +++ b/modules/SCsub @@ -1,10 +1,10 @@ #!/usr/bin/env python -Import("env") - import modules_builders import os +Import("env") + env_modules = env.Clone() Export("env_modules") @@ -12,6 +12,15 @@ Export("env_modules") # Header with MODULE_*_ENABLED defines. env.CommandNoCache("modules_enabled.gen.h", Value(env.module_list), modules_builders.generate_modules_enabled) +# Header to be included in `tests/test_main.cpp` to run module-specific tests. +if env["tests"]: + env.CommandNoCache( + "modules_tests.gen.h", + Value(env.module_list), + Action(modules_builders.generate_modules_tests, "Generating modules tests header."), + ) + env.AlwaysBuild("modules_tests.gen.h") + vs_sources = [] # libmodule_<name>.a for each active module. for name, path in env.module_list.items(): |