4 #define TEST_RUN(name) \
10 static int name##_body(void); \
11 static int name(void) { \
12 printf("%s() ...", #name); \
13 if (name##_body() == 0) { \
17 printf(" FAILED\n"); \
21 static int name##_body(void)
23 #define ASSERT_STREQN(expected, actual, n) \
24 if (strncmp(expected, actual, n) != 0) { \
25 fprintf(stderr, "\n%s:%d: ASSERT_STREQN: \n", \
26 __FILE__, __LINE__); \
27 fprintf(stderr, " Expected: "); \
28 fwrite(expected, sizeof(char), n, stderr); \
29 fprintf(stderr, "\n"); \
30 fprintf(stderr, " Actual: "); \
31 fwrite(actual, sizeof(char), n, stderr); \
32 fprintf(stderr, "\n"); \
36 #define TEST_SUITE(name) \
37 static int name##_body(void); \
38 static int name(void) { \
39 if (name##_body() < 0) { \
44 static int name##_body(void)
47 static int main_body(void); \
49 if (main_body() < 0) { \
54 static int main_body(void)