3.1.16. Unit Test¶
The tool is located in tools/waf-tools
.
3.1.16.1. Tool Documentation¶
Implements a waf tool to configure a Ceedling project to foxBMS specific needs and builds and runs the tests.
For information on Ceedling see https://github.com/ThrowTheSwitch/Ceedling.
- f_unit_test.add_ceedling_task(self)¶
Task creator for ceedling. If the coverage option is set, use the coverage task, otherwise the standard task without coverage.
- class f_unit_test.ceedling(*args: Any, **kwargs: Any)¶
Bases:
waflib.Task.
class to run Ceedling
- always_run = True¶
Ceedling handles the need for a re-run, so always run this task
- Type
str
- color = 'GREEN'¶
color in which the command line is displayed in the terminal
- Type
str
- run_str = '${RUBY} ${CEEDLING} ${CEEDLING_OPTIONS} ${CEEDLING_TEST_OPTIONS}'¶
string to be interpolated to create the command line to run ceedling (conf.env.CEEDLING_TEST_OPTIONS are applied).
- Type
str
- class f_unit_test.ceedling_coverage(*args: Any, **kwargs: Any)¶
Bases:
waflib.Task.
Call ceedling with coverage options
- always_run = True¶
Ceedling handles the need for a re-run, so always run this task
- Type
str
- color = 'GREEN'¶
color in which the command line is displayed in the terminal
- Type
str
- run_str = '${RUBY} ${CEEDLING} ${CEEDLING_OPTIONS} ${CEEDLING_COVERAGE_OPTIONS}'¶
string to be interpolated to create the command line to run ceedling (conf.env.CEEDLING_COVERAGE_OPTIONS are applied).
- Type
str
- f_unit_test.configure(conf)¶
configuration step of the Ceedling waf tool:
Find required software (ruby, gcc, gcov, gcovr and ceedling)
configure a ceedling project