29#define SELF_TESTS __table ( struct self_test, "self_tests" )
32#define __self_test __table_entry ( SELF_TESTS, 01 )
34extern void test_ok (
int success,
const char *file,
unsigned int line,
44#define okx( success, file, line ) \
45 test_ok ( success, file, line, #success )
46#define ok( success ) \
47 okx ( success, __FILE__, __LINE__ )
50#define BINFILE( ... ) ( [], ( { __VA_ARGS__ } ) )
53#define TEXTFILE( text ) ( [ sizeof (text) - 1 ], (text) )
56#define __file_decl( file ) __file_extract_decl file
57#define __file_extract_decl( decl, init ) decl
60#define __file_init( file ) __file_extract_init file
61#define __file_extract_init( decl, init ) __file_extract_init_args init
62#define __file_extract_init_args( ... ) __VA_ARGS__
70#define FILE_ARRAY( file ) __file_decl ( file ) = __file_init ( file )
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
unsigned int failures
Number of test failures.
unsigned int total
Number of tests run.
const char * name
Test set name.
unsigned int assertion_failures
Number of assertion failures.
void(* exec)(void)
Run self-tests.
void test_ok(int success, const char *file, unsigned int line, const char *test)
Report test result.