|
VSF Documented
|
#include <vsf_test.h>
Data Fields | ||
| struct { | ||
| vsf_test_wdt_t * entries | ||
| uint8_t count | ||
| } | wdt | |
| struct { | ||
| vsf_test_reboot_t ** entries | ||
| uint8_t count | ||
| } | reboot | |
| const vsf_test_case_t * | current_case | |
| const vsf_test_suite_t * | current_suite | |
| Current suite pointer — set before running cases in a suite. | ||
| uint8_t | result | |
| struct { | ||
| const char * function_name | ||
| const char * file_name | ||
| const char * condition | ||
| uint32_t line | ||
| } | error | |
| jmp_buf * | jmp_buf | |
| const vsf_test_suite_t ** | suites | |
| Registered suites array and count — populated at compile time. | ||
| uint8_t | suite_count | |
| const vsf_test_inst_t * | instances | |
| Peripheral instances array and count — populated at compile time. | ||
| uint8_t | instance_count | |
| vsf_test_shell_t | shell | |
| Embedded shell REPL — started by vsf_test_run() after init. | ||
| vsf_test_wdt_t* vsf_test_t::entries |
| uint8_t vsf_test_t::count |
| struct { ... } vsf_test_t::wdt |
Without a watchdog, we can still can test. But the watchdog provides stronger guarantees for tests: if a test is abnormal, the next test continues to run after the watchdog times out.
| vsf_test_reboot_t** vsf_test_t::entries |
| struct { ... } vsf_test_t::reboot |
We perform a reset when the test program goes into exception. Reboot functions are called in array order; typically external first, then internal fallback. If none succeed, the framework enters a dead loop and waits for the watchdog to reset.
| const vsf_test_case_t* vsf_test_t::current_case |
Current test case pointer — set by vsf_test_run_case before invoking the test function, used by vsf_test_assert and vsf_test_reboot.
| const vsf_test_suite_t* vsf_test_t::current_suite |
Current suite pointer — set before running cases in a suite.
| uint8_t vsf_test_t::result |
Result and error info for the currently running case — written by vsf_test_assert / vsf_test_reboot, read by the runner after the case function returns. Only one copy exists; reused across all cases.
| const char* vsf_test_t::function_name |
| const char* vsf_test_t::file_name |
| const char* vsf_test_t::condition |
| uint32_t vsf_test_t::line |
| struct { ... } vsf_test_t::error |
| jmp_buf* vsf_test_t::jmp_buf |
| const vsf_test_suite_t** vsf_test_t::suites |
Registered suites array and count — populated at compile time.
| uint8_t vsf_test_t::suite_count |
| const vsf_test_inst_t* vsf_test_t::instances |
Peripheral instances array and count — populated at compile time.
| uint8_t vsf_test_t::instance_count |
| vsf_test_shell_t vsf_test_t::shell |
Embedded shell REPL — started by vsf_test_run() after init.