| 2419 | } |
| 2420 | |
| 2421 | void test_run_start() override { |
| 2422 | xml.writeDeclaration(); |
| 2423 | |
| 2424 | // remove .exe extension - mainly to have the same output on UNIX and Windows |
| 2425 | std::string binary_name = skipPathFromFilename(opt.binary_name.c_str()); |
| 2426 | #ifdef DOCTEST_PLATFORM_WINDOWS |
| 2427 | if(binary_name.rfind(".exe") != std::string::npos) |
| 2428 | binary_name = binary_name.substr(0, binary_name.length() - 4); |
| 2429 | #endif // DOCTEST_PLATFORM_WINDOWS |
| 2430 | |
| 2431 | xml.startElement("doctest").writeAttribute("binary", binary_name); |
| 2432 | if(opt.no_version == false) |
| 2433 | xml.writeAttribute("version", DOCTEST_VERSION_STR); |
| 2434 | |
| 2435 | // only the consequential ones (TODO: filters) |
| 2436 | xml.scopedElement("Options") |
| 2437 | .writeAttribute("order_by", opt.order_by.c_str()) |
| 2438 | .writeAttribute("rand_seed", opt.rand_seed) |
| 2439 | .writeAttribute("first", opt.first) |
| 2440 | .writeAttribute("last", opt.last) |
| 2441 | .writeAttribute("abort_after", opt.abort_after) |
| 2442 | .writeAttribute("subcase_filter_levels", opt.subcase_filter_levels) |
| 2443 | .writeAttribute("case_sensitive", opt.case_sensitive) |
| 2444 | .writeAttribute("no_throw", opt.no_throw) |
| 2445 | .writeAttribute("no_skip", opt.no_skip); |
| 2446 | } |
| 2447 | |
| 2448 | void test_run_end(const TestRunStats& p) override { |
| 2449 | if(tc) // the TestSuite tag - only if there has been at least 1 test case |
nothing calls this directly
no test coverage detected