lolautoaccept/tests/test.h

18 lines
632 B
C++

#define TESTFAILED 0
#define TESTGOOD 1
#include <iostream>
#define TESTDATA "./tests/data/"
#define TESTNAME(NAME) test_##NAME
#define TESTFUNC(NAME) bool TESTNAME(NAME)()
#define TEST(NAME) TESTFUNC(NAME) {
#define TESTEND return TESTGOOD; }
#define ASSERT(BED, ERR) if(!(BED)) { std::cout << __FILE__ << ":" << __LINE__ << " " << ERR << std::endl; return TESTFAILED; }
#define CMPASSERTE(A, B, ERR) if( !((A) == (B))) { std::cout << __FILE__ << ":" << __LINE__ << " is: \"" << (A) << "\" should: \"" << (B) << "\""<< std::endl; return TESTFAILED; }
#define CMPASSERT(A, B) CMPASSERTE(A, B, "")
typedef bool (*test_t)();