...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
auto_start_dbg
build_info
catch_system_errors
color_output
detect_fp_exceptions
detect_memory_leaks
help
list_content
list_labels
log_format
log_level
log_sink
logger
output_format
random
report_format
report_level
report_memory_leaks_to
report_sink
result_code
run_test
save_pattern
show_progress
use_alt_stack
usage
wait_for_debugger
Following sections provide detailed specification for all Unit Test Framework runtime parameters. Each parameter specification includes:
<prefix><name>[<separator><value>]
. For example: --param=<value>
.
[]
around separator and
value indicate that argument value is optional. For example: -q[ <value>]
.
Note | |
---|---|
All command line argument formats support parameter name guessing. What this means is that is if command like format is like this: --long_parameter_name=<value> you can in fact use any unambiguous prefix of the parameter name to specify the argument. For example: --long_param=123 or --long_p=123. If parameter name prefix you chose is ambiguous the framework lets you know which parameters match specified prefix. For example, try --log=all |
The Unit Test Framework runtime parameters take value of the following types: string, boolean, enumeration, unsigned, long. Formats required for values of these types are following:
Values of these types are expected in the same format they are represented in C++.
Values of these types are options with yes/no or true/false meaning. True values are represented by case insensitive strings: "Y", "YES", "TRUE", "1". False values are represented by case insensitive strings: "N", "NO", "FALSE", "0".
Values of an enumeration type are expected as case sensitive strings representing enumeration value names. Each parameter with an enumeration value lists all valid names in a parameter`s description.