1 #include <rtthread.h>
2 #include "utest.h"
3
TC_uassert_true_false(void)4 static void TC_uassert_true_false(void)
5 {
6 uassert_true(1);
7 uassert_false(0);
8 }
9
TC_uassert_null_not_null(void)10 static void TC_uassert_null_not_null(void)
11 {
12 int *ptr = RT_NULL;
13 int value = 10;
14 int *ptr2 = &value;
15
16 uassert_null(ptr);
17 uassert_not_null(ptr2);
18 }
19
TC_uassert_int_op(void)20 static void TC_uassert_int_op(void)
21 {
22 int a = 5;
23 int b = 10;
24
25 uassert_int_equal(a, a);
26 uassert_int_not_equal(a, b);
27 uassert_value_less(a, b);
28 uassert_value_less_equal(a, b);
29 uassert_value_less_equal(a, a);
30 uassert_value_greater(b, a);
31 uassert_value_greater_equal(b, a);
32 uassert_value_greater_equal(b, b);
33 }
34
TC_uassert_float_op(void)35 static void TC_uassert_float_op(void)
36 {
37 float a = 5.0;
38 float b = 5.0;
39
40 uassert_float_equal(a, b);
41 uassert_float_not_equal(a, b + 0.0002);
42 }
43
TC_uassert_ptr_op(void)44 static void TC_uassert_ptr_op(void)
45 {
46 int a = 5;
47 int b = 10;
48 int *ptr_a = &a;
49 int *ptr_b = &b;
50
51 uassert_ptr_equal(ptr_a, ptr_a);
52 uassert_ptr_not_equal(ptr_a, ptr_b);
53 }
54
TC_uassert_str_op(void)55 static void TC_uassert_str_op(void)
56 {
57 const char *str1 = "Hello";
58 const char *str2 = "Hello";
59 const char *str3 = "World";
60
61 uassert_str_equal(str1, str2);
62 uassert_str_not_equal(str1, str3);
63 }
64
TC_uassert_in_range(void)65 static void TC_uassert_in_range(void)
66 {
67 int value = 5;
68 uassert_in_range(value, 1, 10);
69 uassert_not_in_range(value, 10, 20);
70 }
71
utest_do_tc(void)72 static void utest_do_tc(void)
73 {
74 UTEST_UNIT_RUN(TC_uassert_true_false);
75 UTEST_UNIT_RUN(TC_uassert_null_not_null);
76 UTEST_UNIT_RUN(TC_uassert_int_op);
77 UTEST_UNIT_RUN(TC_uassert_float_op);
78 UTEST_UNIT_RUN(TC_uassert_ptr_op);
79 UTEST_UNIT_RUN(TC_uassert_str_op);
80 UTEST_UNIT_RUN(TC_uassert_in_range);
81 }
82
83 UTEST_TC_EXPORT(utest_do_tc, "utest.uassert", RT_NULL, RT_NULL, 10);
84