#ifndef TESTS_H # define TESTS_H #include #include # define TEST(s) \ {\ test_title = #s;\ struct tester : public test_base {\ void func() # define TESTEND \ };\ test = new(tester);\ test->title = test_title;\ test_list.push_back(test);\ } struct test_base { std::string title; virtual void func() {} }; std::vector test_list; test_base *test; std::string test_title; #endif