#define CATCH_CONFIG_RUNNER #include #include #include CmdOptions cmd_options; int main(int argc, char** argv) { auto& context = TestContext::get(argc, argv); if (context.skipTest()) { // CTest uses this regex to figure out if the test has been skipped std::cout << "HIP_SKIP_THIS_TEST" << std::endl; return 0; } Catch::Session session; using namespace Catch::clara; // clang-format off auto cli = session.cli() | Opt(cmd_options.iterations, "iterations") ["-I"]["--iterations"] ("Number of iterations used for performance tests (default: 1000)") | Opt(cmd_options.warmups, "warmups") ["-W"]["--warmups"] ("Number of warmup iterations used for performance tests (default: 100)") | Opt(cmd_options.no_display) ["-S"]["--no-display"] ("Do not display the output of performance tests") | Opt(cmd_options.progress) ["-P"]["--progress"] ("Show progress bar when running performance tests") | Opt(cmd_options.extended_run) ["-E"]["--extended-run"] ("TODO: Description goes here") ; // clang-format on session.cli(cli); int out = session.run(argc, argv); TestContext::get().cleanContext(); return out; }