Lines Matching defs:testcase

79 // External references to the testcase registration tables.
86 " where case is a specific testcase name, or...\n"
96 const unittest_testcase_registration_t* testcase;
97 for (testcase = __start_unittest_testcases;
98 testcase != __stop_unittest_testcases;
99 ++testcase) {
101 if (testcase->name) {
102 size_t namelen = strlen(testcase->name);
114 for (testcase = __start_unittest_testcases;
115 testcase != __stop_unittest_testcases;
116 ++testcase) {
118 if (testcase->name)
120 static_cast<int>(max_namelen), testcase->name,
121 testcase->desc ? testcase->desc : "<no description>");
125 static bool run_unittest(const unittest_testcase_registration_t* testcase) {
129 DEBUG_ASSERT(testcase);
130 DEBUG_ASSERT(testcase->name);
131 DEBUG_ASSERT(!!testcase->tests == !!testcase->test_cnt);
133 for (size_t i = 0; i < testcase->test_cnt; ++i) {
134 const unittest_registration_t* test = &testcase->tests[i];
143 testcase->name,
144 testcase->test_cnt,
145 testcase->test_cnt == 1 ? "" : "s");
149 for (size_t i = 0; i < testcase->test_cnt; ++i) {
150 const unittest_registration_t* test = &testcase->tests[i];
174 testcase->name,
175 passed != testcase->test_cnt ? "Not a" : "A",
176 passed, testcase->test_cnt,
179 return passed == testcase->test_cnt;
182 // Runs the testcase specified by |arg| and returns 1 if test passes.
186 auto* testcase = static_cast<const unittest_testcase_registration_t*>(arg);
187 return run_unittest(testcase);
190 // Runs |testcase| in another thread and waits for it to complete.
193 static bool run_testcase_in_thread(const unittest_testcase_registration_t* testcase) {
204 const_cast<void*>(static_cast<const void*>(testcase)),
237 const unittest_testcase_registration_t* testcase;
247 for (testcase = __start_unittest_testcases;
248 testcase != __stop_unittest_testcases;
249 ++testcase) {
251 if (testcase->name) {
252 if (run_all || !strcmp(casename, testcase->name)) {
255 if (run_testcase_in_thread(testcase)) {
258 *fn++ = testcase->name;