Test suite core declarations.
Copyright (c) 2011-2018 Microchip Technology Inc. and its subsidiaries.
Data Structures | |
struct | test_case |
A test case. More... | |
struct | test_suite |
A test suite. More... | |
Macros | |
#define | Assert(expr) |
#define | Assert(expr) |
Assert() macro definition for unit testing. More... | |
#define | dbg(__fmt_) printf(__fmt_) |
#define | dbg_error(_x,...) printf(_x, __VA_ARGS__) |
#define | dbg_info(__fmt_,...) printf(__fmt_, __VA_ARGS__) |
#define | dbg_putchar(c) putc(c, stdout) |
#define | dbg_vprintf_pgm(...) vfprintf(stdout, __VA_ARGS__) |
#define | DEFINE_TEST_ARRAY(_sym) const struct test_case *const _sym[] |
#define | DEFINE_TEST_CASE(_sym, _setup, _run, _cleanup, _name) |
#define | DEFINE_TEST_SUITE(_sym, _test_array, _name) |
#define | test_assert_false(test, condition,...) test_assert_true(test, !(condition), __VA_ARGS__) |
#define | test_assert_true(test, condition,...) |
#define | test_fail(test, result,...) test_case_fail(test, result, __FILE__, __LINE__, __VA_ARGS__) |
#define | TEST_SUITE_H_INCLUDED |
Wrappers for printing debug information | |
| |
#define | dbg(__fmt_) printf_P(PROGMEM_STRING(__fmt_)) |
#define | dbg_info(__fmt_,...) printf_P(PROGMEM_STRING(__fmt_), __VA_ARGS__) |
#define | dbg_error(_x,...) printf_P(PROGMEM_STRING(_x), __VA_ARGS__) |
#define | dbg_putchar(c) putc(c, stdout) |
#define | dbg_vprintf_pgm(...) vfprintf_P(stdout, __VA_ARGS__) |
Test suite definition macros | |
#define | DEFINE_TEST_CASE(_sym, _setup, _run, _cleanup, _name) |
Create a test case struct. More... | |
#define | DEFINE_TEST_ARRAY(_sym) const struct test_case *const _sym[] |
Create an array of test case pointers. More... | |
#define | DEFINE_TEST_SUITE(_sym, _test_array, _name) |
Create a test suite. More... | |
Functions | |
void | test_case_fail (const struct test_case *test, int result, const char *file, unsigned int line, const char *fmt,...) |
Report a failure and jump out of current test case function. More... | |
Test suite interaction | |
int | test_suite_run (const struct test_suite *suite) |
Run a test suite. More... | |
Test data access | |
void * | test_priv_data |
Data pointer for test cases. More... | |
static void | test_set_data (void *data) |
Set private data pointer for the current test. More... | |
static void * | test_get_data (void) |
Get the private data pointer for the current test. More... | |
Test case pointer access | |
struct test_case * | test_case_ptr |
Pointer to current test case. More... | |
static void | test_set_case (const struct test_case *test) |
Set pointer to current test. More... | |
static struct test_case * | test_get_case (void) |
Get pointer to current test. More... | |
Test result reporting | |
#define | test_fail(test, result,...) test_case_fail(test, result, __FILE__, __LINE__, __VA_ARGS__) |
Fail the test. More... | |
#define | test_assert_true(test, condition,...) |
Verify that condition is true. More... | |
#define | test_assert_false(test, condition,...) test_assert_true(test, !(condition), __VA_ARGS__) |
Verify that condition is false. More... | |
enum | test_status { TEST_ERROR = -1, TEST_PASS = 0, TEST_FAIL = 1 } |
Status codes returned by test cases and fixtures. More... | |
#define Assert | ( | expr | ) |
Referenced by cpu_irq_leave_critical(), dmac_channel_disable(), dmac_channel_enable(), dmac_channel_get_status(), dmac_channel_is_enable(), dmac_channel_is_transfer_done(), dmac_channel_keep(), dmac_channel_multi_buf_transfer_init(), dmac_channel_resume(), dmac_channel_set_configuration(), dmac_channel_set_ctrlA(), dmac_channel_set_ctrlB(), dmac_channel_set_descriptor_addr(), dmac_channel_set_destination_addr(), dmac_channel_set_source_addr(), dmac_channel_single_buf_transfer_init(), dmac_channel_stop_transfer(), dmac_channel_suspend(), dmac_disable(), dmac_disable_interrupt(), dmac_enable(), dmac_enable_interrupt(), dmac_get_interrupt_mask(), dmac_get_status(), dmac_get_writeprotect_status(), dmac_set_priority_mode(), dmac_set_writeprotect(), dmac_soft_chunk_transfer_request(), dmac_soft_set_last_transfer_flag(), dmac_soft_single_transfer_request(), genclk_enable_source(), hsmci_adtc_start(), hsmci_read_word(), hsmci_select_device(), hsmci_write_word(), pll_config_init(), pll_config_read(), pll_config_write(), pll_disable(), pll_enable(), pll_enable_config_defaults(), pll_enable_source(), pll_is_locked(), pll_wait_for_lock(), sd_mmc_select_slot(), sd_mmc_start_read_blocks(), sd_mmc_start_write_blocks(), sdio_cmd52(), sdio_cmd53(), sysclk_enable_usb(), uart_config_optical_interface(), uart_disable_optical_interface(), uart_enable_optical_interface(), and uart_set_sleepwalking().
#define Assert | ( | expr | ) |
Assert() macro definition for unit testing.
The Assert() macro is set up to use test_assert_true(), as this will only halt execution of the current test, allowing the remaining tests a chance to complete.
#define dbg | ( | __fmt_ | ) | printf(__fmt_) |
Referenced by test_case_run().
#define dbg_error | ( | _x, | |
... | |||
) | printf(_x, __VA_ARGS__) |
Referenced by test_case_fail(), and test_report_failure().
#define dbg_info | ( | __fmt_, | |
... | |||
) | printf(__fmt_, __VA_ARGS__) |
Referenced by test_case_run(), and test_suite_run().
#define dbg_putchar | ( | c | ) | putc(c, stdout) |
Referenced by test_case_fail().
#define dbg_vprintf_pgm | ( | ... | ) | vfprintf(stdout, __VA_ARGS__) |
Referenced by test_case_fail().
#define DEFINE_TEST_CASE | ( | _sym, | |
_setup, | |||
_run, | |||
_cleanup, | |||
_name | |||
) |
#define DEFINE_TEST_SUITE | ( | _sym, | |
_test_array, | |||
_name | |||
) |
Referenced by main().
#define test_assert_false | ( | test, | |
condition, | |||
... | |||
) | test_assert_true(test, !(condition), __VA_ARGS__) |
#define test_assert_true | ( | test, | |
condition, | |||
... | |||
) |
Referenced by run_sd_mmc_init_test(), run_sd_mmc_rw_test(), run_sd_mmc_sdio_rw_test(), and run_sdio_rw_test().
#define test_fail | ( | test, | |
result, | |||
... | |||
) | test_case_fail(test, result, __FILE__, __LINE__, __VA_ARGS__) |
#define TEST_SUITE_H_INCLUDED |