1 #include <sys/types.h> 2 #include <sys/socket.h> 3 #include <netinet/in.h> 4 5 #include <stdint.h> 6 #include <stdbool.h> 7 #include <stdio.h> 8 #include <stdlib.h> 9 #include <string.h> 10 #include <unistd.h> 11 12 #include <radius.h> 13 14 typedef void (*testfunc)(void); 15 16 void check_failed(const char *expr, const char *file, int line); 17 void add_test(testfunc fn, const char *name); 18 19 #define CHECK(x) \ 20 do { if (!(x)) check_failed(#x, __FILE__, __LINE__); } while(0) 21 22 #define ADD_TEST(fn) \ 23 extern void fn(void); \ 24 __attribute__((__constructor__)) \ 25 void fn ## _add(void) \ 26 { \ 27 add_test(fn, #fn); \ 28 } 29