13#ifndef ZEPHYR_TESTSUITE_ZTEST_TEST_H_
14#define ZEPHYR_TESTSUITE_ZTEST_TEST_H_
106#define ZTEST_SUITE(SUITE_NAME, PREDICATE, setup_fn, before_fn, after_fn, teardown_fn) \
107 static STRUCT_SECTION_ITERABLE(ztest_suite_node, \
108 UTIL_CAT(z_ztest_test_node_, SUITE_NAME)) = { \
109 .name = STRINGIFY(SUITE_NAME), \
110 .setup = (setup_fn), \
111 .before = (before_fn), \
112 .after = (after_fn), \
113 .teardown = (teardown_fn), \
114 .predicate = PREDICATE, \
145int z_ztest_run_test_suite(
const char *
name);
192#define Z_TEST(suite, fn, t_options, use_fixture) \
193 static void _##suite##_##fn##_wrapper(void *data); \
194 static void suite##_##fn( \
195 COND_CODE_1(use_fixture, (struct suite##_fixture *this), (void))); \
196 static STRUCT_SECTION_ITERABLE(ztest_unit_test, z_ztest_unit_test_##suite##_##fn) = { \
197 .test_suite_name = STRINGIFY(suite), \
198 .name = STRINGIFY(fn), \
199 .test = (_##suite##_##fn##_wrapper), \
200 .thread_options = t_options, \
202 static void _##suite##_##fn##_wrapper(void *data) \
204 COND_CODE_1(use_fixture, (suite##_##fn((struct suite##_fixture *)data);), \
205 (ARG_UNUSED(data); suite##_##fn();)) \
207 static inline void suite##_##fn( \
208 COND_CODE_1(use_fixture, (struct suite##_fixture *this), (void)))
210#define Z_ZTEST(suite, fn, t_options) Z_TEST(suite, fn, t_options, 0)
211#define Z_ZTEST_F(suite, fn, t_options) Z_TEST(suite, fn, t_options, 1)
222#define ZTEST(suite, fn) Z_ZTEST(suite, fn, 0)
233#define ZTEST_USER(suite, fn) Z_ZTEST(suite, fn, COND_CODE_1(CONFIG_USERSPACE, (K_USER), (0)))
244#define ZTEST_F(suite, fn) Z_ZTEST_F(suite, fn, 0)
255#define ZTEST_USER_F(suite, fn) Z_ZTEST_F(suite, fn, COND_CODE_1(CONFIG_USERSPACE, (K_USER), (0)))
285#define ZTEST_RULE(name, before_each_fn, after_each_fn) \
286 static STRUCT_SECTION_ITERABLE(ztest_test_rule, z_ztest_test_rule_##name) = { \
287 .before_each = (before_each_fn), \
288 .after_each = (after_each_fn), \
313#ifdef CONFIG_USERSPACE
314#define ZTEST_DMEM K_APP_DMEM(ztest_mem_partition)
315#define ZTEST_BMEM K_APP_BMEM(ztest_mem_partition)
316#define ZTEST_SECTION K_APP_DMEM_SECTION(ztest_mem_partition)
321#define ZTEST_SECTION .data
329#define ztest_run_test_suite(suite) z_ztest_run_test_suite(STRINGIFY(suite))
void ztest_test_pass(void)
Pass the currently running test.
void(* ztest_rule_cb)(const struct ztest_unit_test *test, void *data)
Test rule callback function signature.
Definition: ztest_test_new.h:266
struct k_mem_partition ztest_mem_partition
void ztest_simple_1cpu_after(void *data)
A 'after' function to use in test suites that just need to stop 1cpu.
void ztest_simple_1cpu_before(void *data)
A 'before' function to use in test suites that just need to start 1cpu.
void ztest_test_fail(void)
Fail the currently running test.
void ztest_test_skip(void)
Skip the current test.
static void unit_test_noop(void)
Do nothing, successfully.
Definition: ztest_test_new.h:188
state
Definition: http_parser_state.h:30
#define bool
Definition: stdbool.h:13
__UINT32_TYPE__ uint32_t
Definition: stdint.h:60
Memory Partition.
Definition: mem_domain.h:55
Definition: ztest_test_deprecated.h:48
struct ztest_suite_stats stats
Definition: ztest_test_deprecated.h:62
void(* before)(void *data)
Definition: ztest_test_new.h:64
void(* teardown)(void *data)
Definition: ztest_test_new.h:76
void(* after)(void *data)
Definition: ztest_test_new.h:70
bool(* predicate)(const void *state)
Definition: ztest_test_deprecated.h:60
const char * name
Definition: ztest_test_deprecated.h:50
Definition: ztest_test_deprecated.h:35
uint32_t skip_count
Definition: ztest_test_deprecated.h:39
uint32_t fail_count
Definition: ztest_test_deprecated.h:41
uint32_t run_count
Definition: ztest_test_deprecated.h:37
Definition: ztest_test_new.h:268
ztest_rule_cb after_each
Definition: ztest_test_new.h:270
ztest_rule_cb before_each
Definition: ztest_test_new.h:269
Definition: ztest_test_new.h:24
const char * name
Definition: ztest_test_new.h:26
void(* test)(void *data)
Definition: ztest_test_new.h:27
uint32_t thread_options
Definition: ztest_test_new.h:28
const char * test_suite_name
Definition: ztest_test_new.h:25
static fdata_t data[2]
Definition: test_fifo_contexts.c:15
void ztest_verify_all_test_suites_ran(void)
Fails the test if any of the registered tests did not run.
int ztest_run_test_suites(const void *state)