19#include "pw_unit_test/event_handler.h"
21namespace pw::unit_test {
25template <
size_t kNumHandlers>
29 typename... EventHandlers,
30 typename = std::enable_if_t<
sizeof...(EventHandlers) == kNumHandlers>>
32 : event_handlers_{&event_handlers...} {}
36 event_handler->TestProgramStart(program_summary);
41 event_handler->EnvironmentsSetUpEnd();
46 event_handler->TestSuiteStart(test_suite);
51 event_handler->TestSuiteEnd(test_suite);
56 event_handler->EnvironmentsTearDownEnd();
61 event_handler->TestProgramEnd(program_summary);
66 event_handler->RunAllTestsStart();
71 event_handler->RunAllTestsEnd(run_tests_summary);
76 event_handler->TestCaseStart(test_case);
81 event_handler->TestCaseEnd(test_case, result);
87 event_handler->TestCaseExpect(test_case, expectation);
92 event_handler->TestCaseDisabled(test_case);
97 static_assert(kNumHandlers > 0);
98 std::array<EventHandler*, kNumHandlers> event_handlers_;
Definition: event_handler.h:115
Definition: multi_event_handler.h:26
void TestCaseEnd(const TestCase &test_case, TestResult result) override
Definition: multi_event_handler.h:79
void TestSuiteStart(const TestSuite &test_suite) override
Called before the test suite starts.
Definition: multi_event_handler.h:44
void RunAllTestsStart() override
Called before all tests are run.
Definition: multi_event_handler.h:64
void RunAllTestsEnd(const RunTestsSummary &run_tests_summary) override
Called after all tests are run.
Definition: multi_event_handler.h:69
void TestCaseExpect(const TestCase &test_case, const TestExpectation &expectation) override
Definition: multi_event_handler.h:84
void TestProgramEnd(const ProgramSummary &program_summary) override
Called after all test activities have ended.
Definition: multi_event_handler.h:59
void EnvironmentsTearDownEnd() override
Called after environment teardown for each iteration of tests ends.
Definition: multi_event_handler.h:54
void TestSuiteEnd(const TestSuite &test_suite) override
Called after the test suite ends.
Definition: multi_event_handler.h:49
void EnvironmentsSetUpEnd() override
Called after environment setup for each iteration of tests ends.
Definition: multi_event_handler.h:39
void TestCaseStart(const TestCase &test_case) override
Called when a new test case is started.
Definition: multi_event_handler.h:74
void TestCaseDisabled(const TestCase &test_case) override
Called when a disabled test case is encountered.
Definition: multi_event_handler.h:90
void TestProgramStart(const ProgramSummary &program_summary) override
Called before any test activity starts.
Definition: multi_event_handler.h:34
Definition: event_handler.h:66
Definition: event_handler.h:52
Definition: event_handler.h:27
Definition: event_handler.h:38
Definition: event_handler.h:77