1*10465441SEvalZero #ifndef LWIP_HDR_LWIP_CHECK_H 2*10465441SEvalZero #define LWIP_HDR_LWIP_CHECK_H 3*10465441SEvalZero 4*10465441SEvalZero /* Common header file for lwIP unit tests using the check framework */ 5*10465441SEvalZero 6*10465441SEvalZero #include <config.h> 7*10465441SEvalZero #include <check.h> 8*10465441SEvalZero #include <stdlib.h> 9*10465441SEvalZero 10*10465441SEvalZero #define FAIL_RET() do { fail(); return; } while(0) 11*10465441SEvalZero #define EXPECT(x) fail_unless(x) 12*10465441SEvalZero #define EXPECT_RET(x) do { fail_unless(x); if(!(x)) { return; }} while(0) 13*10465441SEvalZero #define EXPECT_RETX(x, y) do { fail_unless(x); if(!(x)) { return y; }} while(0) 14*10465441SEvalZero #define EXPECT_RETNULL(x) EXPECT_RETX(x, NULL) 15*10465441SEvalZero 16*10465441SEvalZero typedef struct { 17*10465441SEvalZero TFun func; 18*10465441SEvalZero const char *name; 19*10465441SEvalZero } testfunc; 20*10465441SEvalZero 21*10465441SEvalZero #define TESTFUNC(x) {(x), "" # x "" } 22*10465441SEvalZero 23*10465441SEvalZero /* Modified function from check.h, supplying function name */ 24*10465441SEvalZero #define tcase_add_named_test(tc,tf) \ 25*10465441SEvalZero _tcase_add_test((tc),(tf).func,(tf).name,0, 0, 0, 1) 26*10465441SEvalZero 27*10465441SEvalZero /** typedef for a function returning a test suite */ 28*10465441SEvalZero typedef Suite* (suite_getter_fn)(void); 29*10465441SEvalZero 30*10465441SEvalZero /** Create a test suite */ 31*10465441SEvalZero Suite* create_suite(const char* name, testfunc *tests, size_t num_tests, SFun setup, SFun teardown); 32*10465441SEvalZero 33*10465441SEvalZero #ifdef LWIP_UNITTESTS_LIB 34*10465441SEvalZero int lwip_unittests_run(void) 35*10465441SEvalZero #endif 36*10465441SEvalZero 37*10465441SEvalZero #endif /* LWIP_HDR_LWIP_CHECK_H */ 38