Tramway SDK
Classes | Macros
test.h File Reference
#include <cstdio>
#include <cstring>

Go to the source code of this file.

Classes

struct  _test_case
 

Macros

#define ASSERT(X)   if (!(X)) { printf("Assert %s fail on line %i\n", #X, __LINE__); _last_test_case->fail(); } else { _last_test_case->succ(); }
 
#define TEST_CASE(X, Y)
 
#define START_TEST    int main(int argc, char** argv) {
 
#define END_TEST
 

Macro Definition Documentation

◆ ASSERT

#define ASSERT (   X)    if (!(X)) { printf("Assert %s fail on line %i\n", #X, __LINE__); _last_test_case->fail(); } else { _last_test_case->succ(); }

◆ END_TEST

#define END_TEST
Value:
bool fail = false;\
\
printf("\nRESULTS:\n");\
\
for (int i = 0; i < _test_case_count; i++) {\
auto c = &_all_test_cases[i];\
\
if (c->fail_asserts > 0) {\
fail = true;\
}\
\
int p = c->totl_asserts - c->fail_asserts;\
int t = c->totl_asserts;\
\
printf("Test %s %s (%i/%i)\n", c->fullname, c->abbrv, p, t);\
}\
\
return fail ? -1 : 0;\
}
int totl_asserts
Definition: test.h:16

◆ START_TEST

#define START_TEST    int main(int argc, char** argv) {

◆ TEST_CASE

#define TEST_CASE (   X,
 
)
Value:
_last_test_case = &_all_test_cases[_test_case_count]; \
_test_case_count++; \
\
_last_test_case->fullname = X; \
_last_test_case->abbrv = Y;
const char * fullname
Definition: test.h:13