Sync with 5.4.0
[deliverable/titan.core.git] / regression_test / predefFunction / bit_to_OK.ttcn
1 /******************************************************************************
2 * Copyright (c) 2000-2015 Ericsson Telecom AB
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 ******************************************************************************/
8 module bit_to_OK {
9
10 type component PDTestComponent {};
11
12 /*--- BIT2HEX --------------------------------------------------*/
13
14 modulepar hexstring b2hpar := bit2hex(''B)
15 modulepar hexstring b2hpar1 := bit2hex('000000000000'B & ''B & '111111111111'B)
16 modulepar hexstring b2hpar2 := bit2hex(substr('000000000000111111111111'B,0,12) & ''B & substr('000000000000111111111111'B,12,12))
17 modulepar hexstring b2hpar3 := bit2hex(('000000000000'B <@ 13) & ''B & ('111111111111'B @> 13))
18 modulepar hexstring b2hpar4 := bit2hex((not4b '111111111111'B) & '111111111111'B)
19 modulepar hexstring b2hpar5 := bit2hex('000000000000111111111111'B and4b '000000000000111111111111'B)
20 modulepar hexstring b2hpar6 := bit2hex('000000000000000000000000'B or4b '000000000000111111111111'B)
21 modulepar hexstring b2hpar7 := bit2hex('000000000000000000000000'B xor4b '000000000000111111111111'B)
22 modulepar hexstring b2hpar8 := bit2hex('10011'B)
23 modulepar hexstring b2hpar9 := bit2hex('11'B)
24
25 modulepar hexstring b2hparh := '000FFF'H
26
27 testcase bit_to_hex() runs on PDTestComponent{
28
29 if ((b2hpar == bit2hex(''B))
30 and (b2hpar == ''H))
31 {setverdict(pass);}
32 else {setverdict(fail);}
33
34 if ((b2hpar1 == bit2hex('000000000000'B & ''B & '111111111111'B))
35 and (b2hpar1 == b2hparh))
36 {setverdict(pass);}
37 else {setverdict(fail);}
38
39 if ((b2hpar2 == bit2hex(substr('000000000000111111111111'B,0,12) & ''B & substr('000000000000111111111111'B,12,12)))
40 and (b2hpar2 == b2hparh))
41 {setverdict(pass);}
42 else {setverdict(fail);}
43
44 if ((b2hpar3 == bit2hex(('000000000000'B <@ 13) & ''B & ('111111111111'B @> 13)))
45 and (b2hpar3 == b2hparh))
46 {setverdict(pass);}
47 else {setverdict(fail);}
48
49 if ((b2hpar4 == bit2hex((not4b '111111111111'B) & '111111111111'B))
50 and (b2hpar4 == b2hparh))
51 {setverdict(pass);}
52 else {setverdict(fail);}
53
54 if ((b2hpar5 == bit2hex('000000000000111111111111'B and4b '000000000000111111111111'B))
55 and (b2hpar5 == b2hparh))
56 {setverdict(pass);}
57 else {setverdict(fail);}
58
59 if ((b2hpar6 == bit2hex('000000000000000000000000'B or4b '000000000000111111111111'B))
60 and (b2hpar6 == b2hparh))
61 {setverdict(pass);}
62 else {setverdict(fail);}
63
64 if ((b2hpar7 == bit2hex('000000000000000000000000'B xor4b '000000000000111111111111'B))
65 and (b2hpar7 == b2hparh))
66 {setverdict(pass);}
67 else {setverdict(fail);}
68
69 if ((b2hpar8 == bit2hex('10011'B))
70 and (b2hpar8 == '13'H))
71 {setverdict(pass);}
72 else {setverdict(fail);}
73
74 if ((b2hpar9 == bit2hex('11'B))
75 and (b2hpar9 == '3'H))
76 {setverdict(pass);}
77 else {setverdict(fail);}
78
79
80 }
81
82 /*--- BIT2INT --------------------------------------------------*/
83
84 modulepar integer b2ipar := bit2int(''B)
85 modulepar integer b2ipar1 := bit2int('111111'B & '111111'B)
86 modulepar integer b2ipar2 := bit2int((not4b '111111'B) & '111111'B)
87 modulepar integer b2ipar3 := bit2int(('111111'B and4b '000000'B) & '111111'B)
88 modulepar integer b2ipar4 := bit2int(('000000'B or4b '000000'B) & '111111'B)
89 modulepar integer b2ipar5 := bit2int(('000011'B xor4b '000011'B) & '111111'B)
90 modulepar integer b2i1_16 := 12345678910111213141516;
91
92 testcase bit_to_int() runs on PDTestComponent{
93 var integer i1 := 12345678910111213141516;
94 var bitstring bs1 := '00000000000000000010100111010100001010110110010101101000100100110010100010111011111000001100'B;
95 var integer b;
96
97 if ((b2ipar == bit2int(''B))
98 and (b2ipar == 0))
99 {setverdict(pass);}
100 else {setverdict(fail);}
101
102 if ((b2ipar1 == bit2int('111111'B & '111111'B))
103 and (b2ipar1 == 4095))
104 {setverdict(pass);}
105 else {setverdict(fail);}
106
107 b := bit2int((not4b '111111'B) & '111111'B)
108 if ((b2ipar2 == b)
109 and (b2ipar2 == 63))
110 {setverdict(pass);}
111 else {setverdict(fail);}
112
113 b := bit2int(('111111'B and4b '000000'B) & '111111'B)
114 if ((b2ipar3 == b)
115 and (b2ipar3 == 63))
116 {setverdict(pass);}
117 else {setverdict(fail);}
118
119 b := bit2int(('000000'B or4b '000000'B) & '111111'B)
120 if ((b2ipar4 == b)
121 and (b2ipar4 == 63))
122 {setverdict(pass);}
123 else {setverdict(fail);}
124
125 b := bit2int(('000011'B xor4b '000011'B) & '111111'B)
126 if ((b2ipar5 == b)
127 and (b2ipar5 == 63))
128 {setverdict(pass);}
129 else {setverdict(fail);}
130
131 if (bit2int(bs1) == 12345678910111213141516)
132 {setverdict(pass);}
133 else {setverdict(fail);}
134 if (bit2int('00000000000000000010100111010100001010110110010101101000100100110010100010111011111000001100'B) == b2i1_16)
135 {setverdict(pass);}
136 else {setverdict(fail);}
137 if (bit2int(bs1) == 12345678910111213141516)
138 {setverdict(pass);}
139 else {setverdict(fail);}
140 if (bit2int(int2bit(bit2int('010100111010100001010110110010101101000100100110010100010111011111000001100'B), 75)) == b2i1_16)
141 {setverdict(pass);}
142 else {setverdict(fail);}
143
144 var integer j
145 for (j:=0; j<1024; j:=j+1) {
146 if (bit2int(int2bit(j,10)) == j)
147 {setverdict(pass);}
148 else {setverdict(fail);}
149 }
150
151 }
152
153 /*--- BIT2OCT --------------------------------------------------*/
154
155 modulepar octetstring b2opar := bit2oct(''B)
156 modulepar octetstring b2opar1 := bit2oct('000000000000'B & ''B & '111111111111'B)
157 modulepar octetstring b2opar2 := bit2oct(substr('000000000000111111111111'B,0,12) & ''B & substr('000000000000111111111111'B,12,12))
158 modulepar octetstring b2opar3 := bit2oct(('000000000000'B <@ 13) & ''B & ('111111111111'B @> 13))
159 modulepar octetstring b2opar4 := bit2oct((not4b '111111111111'B) & '111111111111'B)
160 modulepar octetstring b2opar5 := bit2oct('000000000000111111111111'B and4b '000000000000111111111111'B)
161 modulepar octetstring b2opar6 := bit2oct('000000000000000000000000'B or4b '000000000000111111111111'B)
162 modulepar octetstring b2opar7 := bit2oct('000000000000000000000000'B xor4b '000000000000111111111111'B)
163 modulepar octetstring b2opar8 := bit2oct('10011'B)
164 modulepar octetstring b2opar9 := bit2oct('11'B)
165
166 modulepar octetstring b2oparo := '000FFF'O
167
168 testcase bit_to_oct() runs on PDTestComponent{
169
170 if ((b2opar == bit2oct(''B))
171 and (b2opar == ''O))
172 {setverdict(pass);}
173 else {setverdict(fail);}
174
175 if ((b2opar1 == bit2oct('000000000000'B & ''B & '111111111111'B))
176 and (b2opar1 == b2oparo))
177 {setverdict(pass);}
178 else {setverdict(fail);}
179
180 if ((b2opar2 == bit2oct(substr('000000000000111111111111'B,0,12) & ''B & substr('000000000000111111111111'B,12,12)))
181 and (b2opar2 == b2oparo))
182 {setverdict(pass);}
183 else {setverdict(fail);}
184
185 if ((b2opar3 == bit2oct(('000000000000'B <@ 13) & ''B & ('111111111111'B @> 13)))
186 and (b2opar3 == b2oparo))
187 {setverdict(pass);}
188 else {setverdict(fail);}
189
190 if ((b2opar4 == bit2oct((not4b '111111111111'B) & '111111111111'B))
191 and (b2opar4 == b2oparo))
192 {setverdict(pass);}
193 else {setverdict(fail);}
194
195 if ((b2opar5 == bit2oct('000000000000111111111111'B and4b '000000000000111111111111'B))
196 and (b2opar5 == b2oparo))
197 {setverdict(pass);}
198 else {setverdict(fail);}
199
200 if ((b2opar6 == bit2oct('000000000000000000000000'B or4b '000000000000111111111111'B))
201 and (b2opar6 == b2oparo))
202 {setverdict(pass);}
203 else {setverdict(fail);}
204
205 if ((b2opar7 == bit2oct('000000000000000000000000'B xor4b '000000000000111111111111'B))
206 and (b2opar7 == b2oparo))
207 {setverdict(pass);}
208 else {setverdict(fail);}
209
210 if ((b2opar8 == bit2oct('10011'B))
211 and (b2opar8 == '13'O))
212 {setverdict(pass);}
213 else {setverdict(fail);}
214
215 if ((b2opar9 == bit2oct('11'B))
216 and (b2opar9 == '03'O))
217 {setverdict(pass);}
218 else {setverdict(fail);}
219 }
220
221 /*--- BIT2STR --------------------------------------------------*/
222
223 modulepar charstring b2spar := bit2str(''B)
224 modulepar charstring b2spar1 := bit2str('000000'B & ''B & '111111'B)
225 modulepar charstring b2spar2 := bit2str(substr('000000111111'B,0,6) & ''B & substr('000000111111'B,6,6))
226 modulepar charstring b2spar3 := bit2str(('000000'B <@ 3) & ''B & ('111111'B @> 3))
227 modulepar charstring b2spar4 := bit2str((not4b '111111'B) & '111111'B)
228 modulepar charstring b2spar5 := bit2str('000000111111'B and4b '000000111111'B)
229 modulepar charstring b2spar6 := bit2str('000000000000'B or4b '000000111111'B)
230 modulepar charstring b2spar7 := bit2str('000000000000'B xor4b '000000111111'B)
231
232 modulepar charstring b2spars := "000000111111"
233
234 testcase bit_to_str() runs on PDTestComponent{
235
236 if ((b2spar == bit2str(''B))
237 and (b2spar == ""))
238 {setverdict(pass);}
239 else {setverdict(fail);}
240
241 if ((b2spar1 == bit2str('000000'B & ''B & '111111'B))
242 and (b2spar1 == b2spars))
243 {setverdict(pass);}
244 else {setverdict(fail);}
245
246 if ((b2spar2 == bit2str(substr('000000111111'B,0,6) & ''B & substr('000000111111'B,6,6)))
247 and (b2spar2 == b2spars))
248 {setverdict(pass);}
249 else {setverdict(fail);}
250
251 if ((b2spar3 == bit2str(('000000'B <@ 3) & ''B & ('111111'B @> 3)))
252 and (b2spar3 == b2spars))
253 {setverdict(pass);}
254 else {setverdict(fail);}
255
256 if ((b2spar4 == bit2str((not4b '111111'B) & '111111'B))
257 and (b2spar4 == b2spars))
258 {setverdict(pass);}
259 else {setverdict(fail);}
260
261 if ((b2spar5 == bit2str('000000111111'B and4b '000000111111'B))
262 and (b2spar5 == b2spars))
263 {setverdict(pass);}
264 else {setverdict(fail);}
265
266 if ((b2spar6 == bit2str('000000000000'B or4b '000000111111'B))
267 and (b2spar6 == b2spars))
268 {setverdict(pass);}
269 else {setverdict(fail);}
270
271 if ((b2spar7 == bit2str('000000000000'B xor4b '000000111111'B))
272 and (b2spar7 == b2spars))
273 {setverdict(pass);}
274 else {setverdict(fail);}
275 }
276
277 control {
278 execute (bit_to_hex());
279 execute (bit_to_int());
280 execute (bit_to_oct());
281 execute (bit_to_str());
282 }
283
284 }
This page took 0.039219 seconds and 5 git commands to generate.