| 13111 | } |
| 13112 | |
| 13113 | Totals execute() { |
| 13114 | auto const& invalidArgs = m_config->testSpec().getInvalidArgs(); |
| 13115 | Totals totals; |
| 13116 | m_context.testGroupStarting(m_config->name(), 1, 1); |
| 13117 | for (auto const& testCase : m_tests) { |
| 13118 | if (!m_context.aborting()) |
| 13119 | totals += m_context.runTest(*testCase); |
| 13120 | else |
| 13121 | m_context.reporter().skipTest(*testCase); |
| 13122 | } |
| 13123 | |
| 13124 | for (auto const& match : m_matches) { |
| 13125 | if (match.tests.empty()) { |
| 13126 | m_context.reporter().noMatchingTestCases(match.name); |
| 13127 | totals.error = -1; |
| 13128 | } |
| 13129 | } |
| 13130 | |
| 13131 | if (!invalidArgs.empty()) { |
| 13132 | for (auto const& invalidArg: invalidArgs) |
| 13133 | m_context.reporter().reportInvalidArguments(invalidArg); |
| 13134 | } |
| 13135 | |
| 13136 | m_context.testGroupEnded(m_config->name(), totals, 1, 1); |
| 13137 | return totals; |
| 13138 | } |
| 13139 | |
| 13140 | private: |
| 13141 | using Tests = std::set<TestCase const*>; |
no test coverage detected