summaryrefslogtreecommitdiff
path: root/support/regression/tests/scott-bool1.c
blob: 24e056580308e4262f318dbefc3c278e7992c2e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/*
 */
#include <testfwk.h>

unsigned int aint0 = 0;
unsigned int aint1 = 0;
unsigned char achar0 = 0;
unsigned char achar1 = 0;

void bool_or1(void)
{

  ASSERT(!( (achar0 >0) || (achar1 >0 )));
}

void bool_or2(void)
{

  ASSERT(!( achar0 || achar1));
}

void bool_test1(void)
{

  ASSERT(!( (achar0==0) || achar1));
}


void bool_test2(void)
{

  ASSERT(!( (achar0==0) || aint0));
}

void bool_and1(void)
{

  ASSERT(!( achar0 && achar1));
}

void bin_or1(void)
{

  char t;

  t = achar0 | achar1;
  ASSERT(!(t));
}

void bin_xor1(void)
{

  ASSERT(!(achar0 ^ achar1));
}


void bool_test3(void)
{

  ASSERT(!((achar0 == 0x42) || (achar1 == 42)));
}


void bool_or_lit1(void)
{

  achar0 |= 0x0f;

  ASSERT(!(achar0 > 0x10));

  ASSERT(!( (achar0 | 0x10) > 0xf0));

}

void bool_and_lit1(void)
{

  achar0 &= 0xf0;

  ASSERT(!(achar0 > 0x10));

  ASSERT(!( (achar0 & 0x10) > 0xf0));

  achar0 &= 0xef;

}

void 
testBool1(void)
{

  bool_or1();
  bool_or2();
  bool_and1();
  bin_or1();
  bin_xor1();

  achar0++;
  bool_and1();
  bool_test1();
  bool_test2();
  bool_test3();


  achar0--; achar1++;
  bool_and1();

  achar0=0;
  achar1=0;

  bool_or_lit1();
  bool_and_lit1();
}