deferred_reporter Class
Deferred reporter class for a specific expression. More...
Declaration
Included Headers
Base class
| class | deferred_reporter_base |
|
Base class for a deferred reporter that collects messages into a string. More... | |
Public Constructors Index
template <class Expr_T> | |
| deferred_reporter (const Expr_T &expr, bool abort, const reflection::source_location &location, subtest &subtest, expression_formatter &expression) | |
|
Constructs a deferred reporter for a specific expression. More... | |
Public Destructor Index
| ~deferred_reporter ()=default | |
|
Destructor for the deferred reporter. More... | |
Public Operators Index
template <class T> | |
| auto & | operator<< (const T &msg) |
|
Appends a message to the reporter. More... | |
Public Member Functions Index
| bool | value () const |
|
Retrieves the result value. More... | |
Protected Member Attributes Index
| bool | abort_ = false |
|
Indicates whether the reporting should abort further processing. More... | |
| std::string | deferred_output_ {} |
|
String to collect the expectation message passed via operator<<(). More... | |
| bool | has_expression_ = false |
|
Indicates whether the reporter has an associated expression. More... | |
| const reflection::source_location | location_ {} |
|
Stores the source location associated with the report. More... | |
| subtest & | subtest_ |
|
Reference to the test case invoking this report. More... | |
| bool | value_ {} |
|
Stores the result value of the report. More... | |
Description
Deferred reporter class for a specific expression.
The deferred_reporter class extends deferred_reporter_base to provide deferred reporting functionality for a specific test expression within the framework.
This class is responsible for capturing the expression under evaluation, the abort status, and the source location. It is intended exclusively for internal use and is implemented in the include/micro-os-plus/micro-test-plus folder to ensure a structured and modular codebase.
Definition at line 219 of file deferred-reporter.h.
Public Constructors
deferred_reporter()
|
Constructs a deferred reporter for a specific expression.
- Parameters
-
expr The expression under evaluation.
abort Indicates whether reporting should abort further processing.
location The source location relevant to the report.
subtest The subtest that owns this deferred report.
expression The expression formatter to format the expression text.
This constructor initialises a deferred reporter for a specific expression, capturing the evaluation result, abort status, and source location.
The expression is evaluated and its boolean result is passed to the base class. The abort flag determines whether further test execution should be halted if the expectation fails. The source location provides contextual information for reporting purposes.
Declaration at line 234 of file deferred-reporter.h, definition at line 157 of file deferred-reporter-inlines.h.
References micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_reporter_base, micro_os_plus::micro_test_plus::detail::deferred_reporter_base::abort_, micro_os_plus::micro_test_plus::detail::expression_formatter::clear and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::has_expression_.
Public Destructor
~deferred_reporter()
| default |
Destructor for the deferred reporter.
Definition at line 241 of file deferred-reporter.h.
Public Operators
operator<<()
|
Appends a message to the reporter.
- Template Parameters
-
T The type of the message to append.
- Parameters
-
msg The message to append.
- Returns
Reference to the current reporter instance.
This operator overload enables the deferred reporter to accumulate expectation messages by appending the provided value to the internal message string.
If the argument is a char, it is appended directly as a character. If the argument is of another arithmetic type, it is converted to a string using a fixed-size buffer and std::to_chars to avoid dynamic memory allocation. For all other types, the value is appended directly.
Declaration at line 153 of file deferred-reporter.h, definition at line 108 of file deferred-reporter-inlines.h.
Reference micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_output_.
Public Member Functions
value()
| inline nodiscard |
Retrieves the result value.
- Parameters
None.
- Return Values
-
true The reported condition was met.
false The reported condition was not met.
Returns the result value stored in value_.
Declaration at line 165 of file deferred-reporter.h, definition at line 87 of file deferred-reporter-inlines.h.
Reference micro_os_plus::micro_test_plus::detail::deferred_reporter_base::value_.
Referenced by micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_reporter_base.
Protected Member Attributes
abort_
| protected |
Indicates whether the reporting should abort further processing.
Definition at line 177 of file deferred-reporter.h.
Referenced by deferred_reporter and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base.
deferred_output_
| protected |
String to collect the expectation message passed via operator<<().
Definition at line 193 of file deferred-reporter.h.
Referenced by micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::operator<<.
has_expression_
| protected |
Indicates whether the reporter has an associated expression.
Definition at line 182 of file deferred-reporter.h.
Referenced by deferred_reporter and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base.
location_
| protected |
Stores the source location associated with the report.
Definition at line 187 of file deferred-reporter.h.
Referenced by micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_reporter_base and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base.
subtest_
| protected |
Reference to the test case invoking this report.
Definition at line 198 of file deferred-reporter.h.
Referenced by micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_reporter_base and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base.
value_
| protected |
Stores the result value of the report.
Definition at line 171 of file deferred-reporter.h.
Referenced by micro_os_plus::micro_test_plus::detail::deferred_reporter_base::deferred_reporter_base, micro_os_plus::micro_test_plus::detail::deferred_reporter_base::~deferred_reporter_base and micro_os_plus::micro_test_plus::detail::deferred_reporter_base::value.
The documentation for this class was generated from the following files:
Generated via doxygen2docusaurus 2.2.0 by Doxygen 1.17.0.