1 /*
2 * Copyright (c) 2024 Intel Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6 #include <zephyr/ztest.h>
7
8 extern struct ztest_suite_stats UTIL_CAT(z_ztest_suite_node_stats_, testsuite);
9 struct ztest_suite_stats *suite_stats = &UTIL_CAT(z_ztest_suite_node_stats_, testsuite);
10 extern struct ztest_unit_test_stats z_ztest_unit_test_stats_testsuite_test_repeating;
11 struct ztest_unit_test_stats *case_stats =
12 &z_ztest_unit_test_stats_testsuite_test_repeating;
13
14 static struct test_data {
15 int suite_run;
16 int case_run;
17 } expected = {0, 0};
18
ZTEST(testsuite,test_repeating)19 ZTEST(testsuite, test_repeating)
20 {
21 expected.case_run++;
22
23 if (case_stats->run_count > 0) {
24 zassert_true(case_stats->run_count == expected.case_run);
25 }
26
27 if (suite_stats->run_count > 0) {
28 zassert_true(suite_stats->run_count + 1 == expected.suite_run);
29 }
30 }
31
repeat_setup(void)32 static void *repeat_setup(void)
33 {
34 expected.suite_run++;
35 return NULL;
36 }
37
38 ZTEST_SUITE(testsuite, NULL, repeat_setup, NULL, NULL, NULL);
39