Changeset View
Changeset View
Standalone View
Standalone View
sys/tests/routing/module.h
- This file was added.
#ifndef SYS_TESTS_ROUTING_MODULE_H_ | |||||
#define SYS_TESTS_ROUTING_MODULE_H_ | |||||
typedef int (ktest_f_t)(void); | |||||
struct ktest_item { | |||||
char *name; | |||||
ktest_f_t *fn; | |||||
char *descr; | |||||
}; | |||||
#define DECLARE_KTEST(_f) {#_f, &(_f), ""} | |||||
#define DECLARE_KTEST_DESC(_f, _d) {#_f, &(_f), _d} | |||||
struct ktests { | |||||
char *name; | |||||
char *descr; | |||||
struct ktest_item *tests; | |||||
int num_tests; | |||||
}; | |||||
#define ARRAYLEN(_a) (sizeof(_a) / sizeof(_a[0])) | |||||
#define DEFINE_KTESTS(_name, _descr, _tests) \ | |||||
struct ktests kt_##_name = {#_name, #_descr, _tests, ARRAYLEN(_tests)} | |||||
#define DECLARE_KTESTS(_name) extern struct ktests kt_##_name | |||||
#define TPRINTF(_arg, ...) printf("KTEST:%s:%d " _arg "\n", __func__, __LINE__, ##__VA_ARGS__) | |||||
#define TASSERT(_cond, _fmt, ...) do { \ | |||||
if (!(_cond)) { \ | |||||
TPRINTF(_fmt, ##__VA_ARGS__); \ | |||||
error = EINVAL; \ | |||||
} \ | |||||
} while (0); | |||||
DECLARE_KTESTS(route_ctl); | |||||
#endif |