aboutsummaryrefslogtreecommitdiff
path: root/include/test/__meta__.h
blob: f0c10b4591b6118abebc97a20a55c564bc9ea2e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef INC_TEST___META___H
#define INC_TEST___META___H

#include <lib/bool.h>
#include <stddef.h>
#include <stdio.h>

#define TestCount_t uint16_t

#ifdef TEST_SHOW_PASS
#define _TEST_PASS(s, sub, n)                                                  \
  fprintf(stderr, "(%4X) \x1b[92mPASS\x1b[0m %s/%s\n", ++n, s, sub)
#else
#define _TEST_PASS(s, sub, n) ++n
#endif

#define _TEST_FAIL(s, sub, n)                                                  \
  fprintf(stderr, "(%4X) \x1b[91mFAIL\x1b[0m %s/%s\n", ++n, s, sub)

#ifndef _TEST_RESULT
#define _TEST_RESULT(main_string, subtest_string, result, n, n_success)        \
  if (!result) {                                                               \
    _TEST_FAIL(main_string, subtest_string, n);                                \
  } else {                                                                     \
    _TEST_PASS(main_string, subtest_string, n);                                \
    n_success++;                                                               \
  }
#endif

#endif