Imported Upstream version 2.9.0
[debian/cc1111] / support / regression / tests / scott-arrays.c
1 /*
2  */
3 #include <testfwk.h>
4
5 unsigned int aint0 = 0;
6 unsigned int aint1 = 0;
7 unsigned char achar0 = 0;
8 unsigned char achar1 = 0;
9
10 void
11 bool_or1 (void)
12 {
13
14   ASSERT (!((achar0 > 0) || (achar1 > 0)));
15 }
16
17 void
18 bool_or2 (void)
19 {
20
21   ASSERT (!(achar0 || achar1));
22 }
23
24 void
25 bool_test1 (void)
26 {
27
28   ASSERT (!((achar0 == 0) || achar1));
29 }
30
31
32 void
33 bool_test2 (void)
34 {
35
36   ASSERT (!((achar0 == 0) || aint0));
37 }
38
39 void
40 bool_and1 (void)
41 {
42
43   ASSERT (!(achar0 && achar1));
44 }
45
46 void
47 bin_or1 (void)
48 {
49
50   char t;
51
52   t = achar0 | achar1;
53   ASSERT (!(t));
54 }
55
56 void
57 bin_xor1 (void)
58 {
59
60   ASSERT (!(achar0 ^ achar1));
61 }
62
63
64 void
65 bool_test3 (void)
66 {
67
68   ASSERT (!((achar0 == 0x42) || (achar1 == 42)));
69 }
70
71
72 void
73 bool_or_lit1 (void)
74 {
75
76   achar0 |= 0x0f;
77
78   ASSERT (!(achar0 > 0x10));
79
80   ASSERT (!((achar0 | 0x10) > 0xf0));
81
82 }
83
84 void
85 bool_and_lit1 (void)
86 {
87
88   achar0 &= 0xf0;
89
90   ASSERT (!(achar0 > 0x10));
91
92   ASSERT (!((achar0 & 0x10) > 0xf0));
93
94   achar0 &= 0xef;
95
96 }
97
98 void
99 testArrays (void)
100 {
101
102   bool_or1 ();
103   bool_or2 ();
104   bool_and1 ();
105   bin_or1 ();
106   bin_xor1 ();
107
108   achar0++;
109   bool_and1 ();
110   bool_test1 ();
111   bool_test2 ();
112   bool_test3 ();
113
114
115   achar0--;
116   achar1++;
117   bool_and1 ();
118
119   achar0 = 0;
120   achar1 = 0;
121
122   bool_or_lit1 ();
123   bool_and_lit1 ();
124 }