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