Sync with 5.4.1
[deliverable/titan.core.git] / regression_test / XML / XmlWorkflow / src / xmlTest_Functions_element.ttcn
CommitLineData
970ed795 1/******************************************************************************
3abe9331 2 * Copyright (c) 2000-2015 Ericsson Telecom AB
970ed795
EL
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 ******************************************************************************/
8module xmlTest_Functions_element
9{
10import from www_XmlTest_org_element_anyType_e all;
11import from www_XmlTest_org_element_recordOfElements_e all;
12import from www_XmlTest_org_element_recordOfElements3_e all;
13import from www_XmlTest_org_element_recordOfElements4_e all;
14import from www_XmlTest_org_element_recordOfElements5_e all;
15import from www_XmlTest_org_element_nameInheritance_e all;
16import from www_ericsson_com_is_isco_Tgc_R6A48_R6H01 all;
51fa56b9 17import from www_example_org_substitutiongroup all;
18import from www_example_org_type_substitution all;
970ed795
EL
19import from XmlTest_imsike_e all;
20import from xmlTest_Shell all;
21//==============================================================================
22// External functions
23//==============================================================================
24external function f_enc_Anything1(in Anything1 pdu, out octetstring stream)
25with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
26
27external function f_dec_Anything1(in octetstring stream, out Anything1 pdu) return integer
28with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
29
30external function f_enc_PersonInfo1(in PersonInfo1 pdu, out octetstring stream)
31with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
32
33external function f_dec_PersonInfo1(in octetstring stream, out PersonInfo1 pdu) return integer
34with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
35
36external function f_enc_PersonInfo2(in PersonInfo2 pdu, out octetstring stream)
37with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
38
39external function f_dec_PersonInfo2(in octetstring stream, out PersonInfo2 pdu) return integer
40with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
41
42external function f_enc_PersonInfo3(in PersonInfo3 pdu, out octetstring stream)
43with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
44
45external function f_dec_PersonInfo3(in octetstring stream, out PersonInfo3 pdu) return integer
46with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
47
48external function f_enc_PersonInfo4(in PersonInfo4 pdu, out octetstring stream)
49with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
50
51external function f_dec_PersonInfo4(in octetstring stream, out PersonInfo4 pdu) return integer
52with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
53
54external function f_enc_PersonInfo5(in PersonInfo5 pdu, out octetstring stream)
55with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
56
57external function f_dec_PersonInfo5(in octetstring stream, out PersonInfo5 pdu) return integer
58with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
59
60external function f_enc_IndividualTrigger(in IndividualTrigger pdu, out octetstring stream)
61with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
62
63external function f_dec_IndividualTrigger(in octetstring stream, out IndividualTrigger pdu) return integer
64with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
65
66external function f_enc_Isp(in Isp pdu, out octetstring stream)
67with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
68
69external function f_dec_Isp(in octetstring stream, out Isp pdu) return integer
70with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
71
72external function f_enc_RemarkNillable(in RemarkNillable pdu, out octetstring stream)
73with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
74
75external function f_dec_RemarkNillable(in octetstring stream, out RemarkNillable pdu) return integer
76with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
77
78external function f_enc_NameInheritance(in NameInheritance pdu, out octetstring stream)
79with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
80
81external function f_dec_NameInheritance(in octetstring stream, out NameInheritance pdu) return integer
82with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
83
84external function f_enc_Tgc(in Tgc pdu, out octetstring stream)
85with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
86
87external function f_dec_Tgc(in octetstring stream, out Tgc pdu) return integer
88with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
89
51fa56b9 90external function f_enc_ize_subs(in Ize pdu, out octetstring stream)
91with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
92
93external function f_dec_ize_subs(in octetstring stream, out Ize pdu) return integer
94with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
95
96external function f_enc_type_subs(in Submit pdu, out octetstring stream)
97with { extension "prototype(fast) encode(XER:XER_EXTENDED)" }
98
99external function f_dec_type_subs(in octetstring stream, out Submit pdu) return integer
100with { extension "prototype(backtrack) decode(XER:XER_EXTENDED)" }
101
970ed795
EL
102//==============================================================================
103// Encoding decoding test
104//==============================================================================
105
106//==========================================
107// f_encDecTest_Anything1 general
108//==========================================
109function f_encDecTest_Anything1(in Anything1 pl_pdu, in charstring pl_expectedEncodedPdu, in Anything1 pl_expectedDecodedPdu) {
110 var Anything1 vl_decodedPdu;
111 var octetstring vl_expectedEncodedPdu:= char2oct(pl_expectedEncodedPdu);
112 var octetstring vl_stream:=''O;
113
114 f_enc_Anything1(pl_pdu,vl_stream);
115 if( match(vl_stream,vl_expectedEncodedPdu)) {
116 setverdict(pass);
117 } else {
118 log("Expected encoded value: ",vl_expectedEncodedPdu);
119 log("Actual encoded value: ", vl_stream);
120 setverdict(fail)
121 }
122
123 //log("===Checking value decoded from the encoded value vs expected value===");
124
125 if(f_dec_Anything1(vl_stream, vl_decodedPdu)==0) {
126 //log("The decoded pdu: ", vl_decodedPdu);
127
128 if(isvalue(vl_decodedPdu)){
129 if(match(pl_expectedDecodedPdu,vl_decodedPdu)) {
130 setverdict(pass);
131 } else {
132 log("Pdu differs from the expected value");
133 log(match(pl_expectedDecodedPdu,vl_decodedPdu));
134 setverdict(fail);
135 }
136 }else{
137 log("The decoded value contains unbounded values");
138 setverdict(fail);
139 }
140 }else {
141 log("Pdu could not decoded");
142 setverdict(fail);
143 }
144
145 //log("===Checking value decoded from the expected value vs original value===");
146
147 if(f_dec_Anything1(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
148 //log("The decoded pdu: ", vl_decodedPdu);
149 if(isvalue(vl_decodedPdu)){
150 if(match(pl_expectedDecodedPdu,vl_decodedPdu)) {
151 setverdict(pass);
152 } else {
153 log("Pdu differs from the expected value");
154 log(match(pl_expectedDecodedPdu,vl_decodedPdu));
155 setverdict(fail);
156 }
157 }else{
158 log("The decoded value contains unbounded values");
159 setverdict(fail);
160 }
161 }else {
162 log("Pdu could not decoded");
163 setverdict(fail);
164 }
165}//f_
166
167//==========================================
168// f_encDecTest_PersonInfo1
169//==========================================
170function f_encDecTest_PersonInfo1() {
171 var PersonInfo1 vl_pdu:= {
172 firstName:="Peter",
173 lastName:="Falk",
174 age:=82,
175 degree:=omit
176 },vl_decodedPdu;
177 var octetstring vl_expectedEncodedPdu:=char2oct("<PersonInfo1>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<age>82</age>\n</PersonInfo1>\n\n");
178 var octetstring vl_stream:=''O;
179 f_enc_PersonInfo1(vl_pdu,vl_stream);
180
181 if( not match(vl_stream,vl_expectedEncodedPdu)) {
182 log("Expected encoded value: ",vl_expectedEncodedPdu);
183 log("Actual encoded value: ", vl_stream);
184 setverdict(fail);
185 }
186
187 //log("===Checking value decoded from the encoded value vs original value===");
188 if(f_dec_PersonInfo1(vl_stream, vl_decodedPdu)==0) {
189 //log("The decoded pdu: ", vl_decodedPdu);
190 if(match(vl_pdu,vl_decodedPdu)) {
191 setverdict(pass);
192 } else {
193 log("Pdu differs from the expected value");
194 log(match(vl_pdu,vl_decodedPdu));
195 setverdict(fail);
196 }
197 }else{
198 log("Pdu could not decoded");
199 setverdict(fail);
200 }
201
202 //log("===Checking value decoded from the expected value vs original value===");
203 if( f_dec_PersonInfo1(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
204 //log("The decoded pdu: ", vl_decodedPdu);
205 if(match(vl_pdu,vl_decodedPdu)) {
206 setverdict(pass);
207 } else {
208 log("Pdu could not decoded from the expected value");
209 log(match(vl_pdu,vl_decodedPdu));
210 setverdict(fail);
211 }
212 }
213}
214
215//==========================================
216// f_encDecTest_PersonInfo1_defaultElement
217//==========================================
218function f_encDecTest_PersonInfo1_defaultElement() {
219 var PersonInfo1 vl_pdu:= {
220 firstName:="Peter",
221 lastName:="Falk",
222 age:=82,
223 degree:=omit
224 },vl_decodedPdu;
225 var octetstring vl_expectedEncodedPdu:=char2oct("<PersonInfo1>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<age>82</age>\n</PersonInfo1>\n\n");
226 var octetstring vl_stream:=''O;
227 f_enc_PersonInfo1(vl_pdu,vl_stream);
228
229 if( not match(vl_stream,vl_expectedEncodedPdu)) {
230 log("Expected encoded value: ",vl_expectedEncodedPdu);
231 log("Actual encoded value: ", vl_stream);
232 setverdict(fail);
233 }
234
235 //log("===Checking value decoded from the encoded value vs original value===");
236 if(f_dec_PersonInfo1(vl_stream, vl_decodedPdu)==0) {
237 //log("The decoded pdu: ", vl_decodedPdu);
238 if(match(vl_pdu,vl_decodedPdu)) {
239 setverdict(pass);
240 } else {
241 log("Pdu differs from the expected value");
242 log(match(vl_pdu,vl_decodedPdu));
243 setverdict(fail);
244 }
245 } else {
246 log("Pdu could not decoded");
247 setverdict(fail);
248 }
249
250 //log("===Checking value decoded from the expected value vs original value===");
251 if( f_dec_PersonInfo1(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
252 //log("The decoded pdu: ", vl_decodedPdu);
253 if(match(vl_pdu,vl_decodedPdu)) {
254 setverdict(pass);
255 } else {
256 log("Pdu differs from the expected value");
257 log(match(vl_pdu,vl_decodedPdu));
258 setverdict(fail);
259 }
260 }else {
261 log("Pdu could not decoded from the expected value");
262 setverdict(fail);
263 }
264
265 //log("===Empty default value test 1===");
266 var octetstring vl_xmlWithEmptyDefaultValue
267 :=char2oct("<PersonInfo1>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<age>82</age>\n<degree></degree>\n</PersonInfo1>\n\n");
268
269 var PersonInfo1 vl_expectedPdu:= {
270 firstName:="Peter",
271 lastName:="Falk",
272 age:=82,
273 degree:="Msc"
274 };
275
276 if(f_dec_PersonInfo1(vl_xmlWithEmptyDefaultValue, vl_decodedPdu)==0) {
277 if(match(vl_expectedPdu,vl_decodedPdu)) {
278 setverdict(pass);
279 } else {
280 log("The value to be decoded: ",vl_xmlWithEmptyDefaultValue);
281 log("The decoded pdu: ", vl_decodedPdu);
282 log("Pdu differs from the expected value");
283 log(match(vl_expectedPdu,vl_decodedPdu));
284 setverdict(fail);
285 }
286 }else {
287 log("Pdu could not decoded from the expected value");
288 setverdict(fail);
289 }
290
291 //log("===Empty default value test 2===");
292 vl_xmlWithEmptyDefaultValue
293 :=char2oct("<PersonInfo1>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<age>82</age>\n<degree/>\n</PersonInfo1>\n\n");
294
295 vl_expectedPdu:= {
296 firstName:="Peter",
297 lastName:="Falk",
298 age:=82,
299 degree:="Msc"
300 };
301
302 if(f_dec_PersonInfo1(vl_xmlWithEmptyDefaultValue, vl_decodedPdu)==0) {
303 if(match(vl_expectedPdu,vl_decodedPdu)) {
304 setverdict(pass);
305 } else {
306 log("The value to be decoded: ",vl_xmlWithEmptyDefaultValue);
307 log("The decoded pdu: ", vl_decodedPdu);
308 log("Pdu differs from the expected value");
309 log(match(vl_expectedPdu,vl_decodedPdu));
310 setverdict(fail);
311 }
312 }else {
313 log("Pdu could not decoded from the expected value");
314 setverdict(fail);
315 }
316}//f_
317
318//==========================================
319// f_encDecTest_PersonInfo2
320//==========================================
321function f_encDecTest_PersonInfo2() {
322 var PersonInfo2 vl_pdu:= {
323 nationality:="Hungarian",
324 title:="Mr",
325 firstName:="Peter",
326 lastName:="Falk",
327 age:=88
328 },vl_decodedPdu;
329 var octetstring vl_expectedEncodedPdu:=char2oct("<PersonInfo2 nationality='Hungarian' title='Mr'>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<age>88</age>\n</PersonInfo2>\n\n");
330
331 var octetstring vl_stream:=''O;
332 f_enc_PersonInfo2(vl_pdu,vl_stream);
333
334 if( not match(vl_stream,vl_expectedEncodedPdu)) {
335 log("Expected encoded value: ",vl_expectedEncodedPdu);
336 log("Actual encoded value: ", vl_stream);
337 setverdict(fail);
338 }
339
340 //log("===Checking value decoded from the encoded value vs original value===");
341 if(f_dec_PersonInfo2(vl_stream, vl_decodedPdu)==0) {
342 //log("The decoded pdu: ", vl_decodedPdu);
343 if(match(vl_pdu,vl_decodedPdu)) {
344 setverdict(pass);
345 } else {
346 log("Pdu could not decoded");
347 log(match(vl_pdu,vl_decodedPdu));
348 }
349 }
350
351 //log("===Checking value decoded from the expected value vs original value===");
352 if( f_dec_PersonInfo2(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
353 //log("The decoded pdu: ", vl_decodedPdu);
354 if(match(vl_pdu,vl_decodedPdu)) {
355 setverdict(pass);
356 } else {
357 log("Pdu could not decoded from the expected value");
358 log(match(vl_pdu,vl_decodedPdu));
359 }
360 }
361}
362//==========================================
363// f_encDecTest_PersonInfo2_omitOptionals
364//==========================================
365function f_encDecTest_PersonInfo2_omitOptionals() {
366 var PersonInfo2 vl_pdu:= {
367 nationality:="Hungarian",
368 title:="Mr",
369 firstName:="Peter",
370 lastName:="Falk",
371 age:=omit
372 },vl_decodedPdu;
373 var octetstring vl_expectedEncodedPdu:=
374 char2oct("<PersonInfo2 nationality='Hungarian' title='Mr'>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n</PersonInfo2>\n\n");
375 var octetstring vl_stream:=''O;
376 f_enc_PersonInfo2(vl_pdu,vl_stream);
377
378 if( not match(vl_stream,vl_expectedEncodedPdu)) {
379 log("Expected encoded value: ",vl_expectedEncodedPdu);
380 log("Actual encoded value: ", vl_stream);
381 setverdict(fail);
382 }
383
384 //log("===Checking value decoded from the encoded value vs original value===");
385 if(f_dec_PersonInfo2(vl_stream, vl_decodedPdu)==0) {
386 //log("The decoded pdu: ", vl_decodedPdu);
387 if(match(vl_pdu,vl_decodedPdu)) {
388 setverdict(pass);
389 } else {
390 setverdict(fail);
391 log("Pdu differs from the expected value");
392 log(match(vl_pdu,vl_decodedPdu));
393 }
394 }else {
395 setverdict(fail);
396 log("Pdu could not decoded");
397 }
398
399 //log("===Checking value decoded from the expected value vs original value===");
400 if( f_dec_PersonInfo2(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
401 //log("The decoded pdu: ", vl_decodedPdu);
402 if(match(vl_pdu,vl_decodedPdu)) {
403 setverdict(pass);
404 } else {
405 log("Pdu differs from the expected value");
406 log(match(vl_pdu,vl_decodedPdu));
407 setverdict(fail);
408 }
409 }else {
410 log("Pdu could not decoded from the expected value");
411 setverdict(fail);
412 }
413}
414
415//==========================================
416// f_encDecTest_PersonInfo2_defaultAttribute
417//==========================================
418function f_encDecTest_PersonInfo2_defaultAttribute() {
419 var PersonInfo2 vl_expectedPdu:= {
420 nationality:="American",
421 title:=omit,
422 firstName:="Peter",
423 lastName:="Falk",
424 age:=omit
425 },vl_decodedPdu;
426 var octetstring vl_encodedPduToBeDecoded:=char2oct("<PersonInfo2>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n</PersonInfo2>\n\n")
427
428 //log("===Checking decoded value vs expected value===");
429 if( f_dec_PersonInfo2( vl_encodedPduToBeDecoded, vl_decodedPdu)==0) {
430 //log("The decoded pdu: ", vl_decodedPdu);
431 if( isvalue(vl_decodedPdu) and match(vl_expectedPdu,vl_decodedPdu)) {
432 setverdict(pass);
433 } else {
434 setverdict(fail);
435 log("Pdu decoded is not the expected one");
436 if(isvalue(vl_decodedPdu)){ log(match(vl_expectedPdu,vl_decodedPdu)) };
437 }
438 }else {
439 log("Pdu could not decoded from the expected value");
440 setverdict(fail);
441 }
442}
443
444//==========================================
445// f_encDecTest_PersonInfo3
446//==========================================
447function f_encDecTest_PersonInfo3() {
448 var PersonInfo3 vl_pdu:= {
449 firstName:="Peter",
450 lastName:="Falk",
451 child_list:={ "Catherine", "Jackie"}
452 },vl_decodedPdu;
453 var octetstring vl_expectedEncodedPdu:=
454 char2oct("<PersonInfo3>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<child>Catherine</child>\n\t<child>Jackie</child>\n</PersonInfo3>\n\n");
455 var octetstring vl_stream:=''O;
456 f_enc_PersonInfo3(vl_pdu,vl_stream);
457
458 if( not match(vl_stream,vl_expectedEncodedPdu)) {
459 log("Expected encoded value: ",vl_expectedEncodedPdu);
460 log("Actual encoded value: ", vl_stream);
461 setverdict(fail);
462 }
463
464 //log("===Checking value decoded from the encoded value vs original value===");
465 var integer vl_retval:=f_dec_PersonInfo3(vl_stream, vl_decodedPdu);
466 //log("retval:",vl_retval);
467 if(f_dec_PersonInfo3(vl_stream, vl_decodedPdu)==0) {
468 //log("The decoded pdu: ", vl_decodedPdu);
469 if(match(vl_pdu,vl_decodedPdu)) {
470 setverdict(pass);
471 } else {
472 log("Pdu differs from the expected value");
473 log(match(vl_pdu,vl_decodedPdu));
474 setverdict(fail);
475 }
476 }else{
477 log("Pdu could not decoded");
478 setverdict(fail);
479 }
480
481 //log("===Checking value decoded from the expected value vs original value===");
482 if( f_dec_PersonInfo3(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
483 //log("The decoded pdu: ", vl_decodedPdu);
484 if(match(vl_pdu,vl_decodedPdu)) {
485 setverdict(pass);
486 } else {
487 log("Pdu could not decoded from the expected value");
488 log(match(vl_pdu,vl_decodedPdu));
489 setverdict(fail);
490 }
491 } else {
492 log("Pdu could not decoded from the expected value");
493 setverdict(fail);
494 }
495}//f_
496
497//==========================================
498// f_encDecTest_PersonInfo4
499//==========================================
500function f_encDecTest_PersonInfo4() {
501 var PersonInfo4 vl_pdu:= {
502 firstName:="Peter",
503 lastName:="Falk",
504 age:=omit,
505 degree_list:={"MSc", "MA","BSc"}
506 },vl_decodedPdu;
507 var octetstring vl_expectedEncodedPdu:=char2oct(
508 "<PersonInfo4>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<Degree>MSc</Degree>\n\t<Degree>MA</Degree>\n\t<Degree>BSc</Degree>\n</PersonInfo4>\n\n");
509
510 var octetstring vl_stream:=''O;
511 f_enc_PersonInfo4(vl_pdu,vl_stream);
512
513 if( not match(vl_stream,vl_expectedEncodedPdu)) {
514 log("Expected encoded value: ",vl_expectedEncodedPdu);
515 log("Actual encoded value: ", vl_stream);
516 setverdict(fail);
517 }
518
519 //log("===Checking value decoded from the encoded value vs original value===");
520 var integer vl_retval:=f_dec_PersonInfo4(vl_stream, vl_decodedPdu);
521 //log("retval:",vl_retval);
522 if(f_dec_PersonInfo4(vl_stream, vl_decodedPdu)==0) {
523 //log("The decoded pdu: ", vl_decodedPdu);
524 if(match(vl_pdu,vl_decodedPdu)) {
525 setverdict(pass);
526 } else {
527 log("Pdu differs from the expected value");
528 log(match(vl_pdu,vl_decodedPdu));
529 setverdict(fail);
530 }
531 }else{
532 log("Pdu could not decoded");
533 setverdict(fail);
534 }
535
536 //log("===Checking value decoded from the expected value vs original value===");
537 if( f_dec_PersonInfo4(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
538 //log("The decoded pdu: ", vl_decodedPdu);
539 if(match(vl_pdu,vl_decodedPdu)) {
540 setverdict(pass);
541 } else {
542 log("Pdu could not decoded from the expected value");
543 log(match(vl_pdu,vl_decodedPdu));
544 setverdict(fail);
545 }
546 } else {
547 log("Pdu could not decoded from the expected value");
548 setverdict(fail);
549 }
550}//f_
551
552//==========================================
553// f_encDecTest_PersonInfo5
554//==========================================
555function f_encDecTest_PersonInfo5() {
556 var PersonInfo5 vl_pdu:= {
557 firstName:="Peter",
558 lastName:="Falk",
559 age:=omit,
560 degree_list:={
561 {year:="1980",base:="MSc"},
562 {year:="1986",base:= "MA"},
563 {year:="2004",base:="Bsc"}
564 }
565 },vl_decodedPdu;
566 var octetstring vl_expectedEncodedPdu:=char2oct(
567 "<PersonInfo5>\n\t<firstName>Peter</firstName>\n\t<lastName>Falk</lastName>\n\t<Degree Year='1980'>MSc</Degree>\n\t<Degree Year='1986'>MA</Degree>\n\t<Degree Year='2004'>Bsc</Degree>\n</PersonInfo5>\n\n");
568
569 var octetstring vl_stream:=''O;
570 f_enc_PersonInfo5(vl_pdu,vl_stream);
571
572 if( not match(vl_stream,vl_expectedEncodedPdu)) {
573 log("Expected encoded value: ",vl_expectedEncodedPdu);
574 log("Actual encoded value: ", vl_stream);
575 setverdict(fail);
576 }
577
578 //log("===Checking value decoded from the encoded value vs original value===");
579 var integer vl_retval:=f_dec_PersonInfo5(vl_stream, vl_decodedPdu);
580 //log("retval:",vl_retval);
581 if(f_dec_PersonInfo5(vl_stream, vl_decodedPdu)==0) {
582 //log("The decoded pdu: ", vl_decodedPdu);
583 if(match(vl_pdu,vl_decodedPdu)) {
584 setverdict(pass);
585 } else {
586 log("Pdu differs from the expected value");
587 log(match(vl_pdu,vl_decodedPdu));
588 setverdict(fail);
589 }
590 }else{
591 log("Pdu could not decoded");
592 setverdict(fail);
593 }
594
595 //log("===Checking value decoded from the expected value vs original value===");
596 if( f_dec_PersonInfo5(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
597 //log("The decoded pdu: ", vl_decodedPdu);
598 if(match(vl_pdu,vl_decodedPdu)) {
599 setverdict(pass);
600 } else {
601 log("Pdu could not decoded from the expected value");
602 log(match(vl_pdu,vl_decodedPdu));
603 setverdict(fail);
604 }
605 } else {
606 log("Pdu could not decoded from the expected value");
607 setverdict(fail);
608 }
609}//f_
610
611//==========================================
612// f_encDecTest_IndividualTrigger1
613//==========================================
614function f_encDecTest_IndividualTrigger1() {
615 var IndividualTrigger vl_pdu:= {
616 triggerDescriptionA:="myTriggerDescriptionAttr",
617 content:={ triggerDescription:="TriggerDescription" }
618 },vl_decodedPdu;
619 // var octetstring vl_expectedEncodedPdu:=char2oct("<ns:individualTrigger xmlns:ns='urn:XmlTest.imsike' triggerDescriptionA='myTriggerDescriptionAttr'>\n\t<triggerDescription>TriggerDescription</triggerDescription>\n</ns:individualTrigger>\n\n");
620 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 621 "<ns50:individualTrigger xmlns:ns50='urn:XmlTest.imsike' triggerDescriptionA='myTriggerDescriptionAttr'>\n\t" &
622 "<ns50:triggerDescription>TriggerDescription</ns50:triggerDescription>\n" &
623 "</ns50:individualTrigger>\n\n");
970ed795
EL
624 var octetstring vl_stream:=''O;
625 f_enc_IndividualTrigger(vl_pdu,vl_stream);
626
627 if( not match(vl_stream,vl_expectedEncodedPdu)) {
628 log("Expected encoded value: ",vl_expectedEncodedPdu);
629 log("Actual encoded value: ", vl_stream);
630 setverdict(fail);
631 }
632
633 //log("===Checking value decoded from the encoded value vs original value===");
634 var integer vl_retval:=f_dec_IndividualTrigger(vl_stream, vl_decodedPdu);
635 //log("retval:",vl_retval);
636 if(f_dec_IndividualTrigger(vl_stream, vl_decodedPdu)==0) {
637 //log("The decoded pdu: ", vl_decodedPdu);
638 if(match(vl_pdu,vl_decodedPdu)) {
639 setverdict(pass);
640 } else {
641 log("Pdu differs from the expected value");
642 log(match(vl_pdu,vl_decodedPdu));
643 setverdict(fail);
644 }
645 }else{
646 log("Pdu could not decoded");
647 setverdict(fail);
648 }
649
650 //log("===Checking value decoded from the expected value vs original value===");
651 if( f_dec_IndividualTrigger(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
652 //log("The decoded pdu: ", vl_decodedPdu);
653 if(match(vl_pdu,vl_decodedPdu)) {
654 setverdict(pass);
655 } else {
656 log("Pdu could not decoded from the expected value");
657 log(match(vl_pdu,vl_decodedPdu));
658 setverdict(fail);
659 }
660 } else {
661 log("Pdu could not decoded from the expected value");
662 setverdict(fail);
663 }
664}//f_
665
666//==========================================
667// f_encDecTest_IndividualTrigger2
668//==========================================
669function f_encDecTest_IndividualTrigger2() {
670 var IndividualTrigger vl_pdu:= {
671 triggerDescriptionA:="myTriggerDescriptionAttr",
672 content:=omit
673 },vl_decodedPdu;
674 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 675 "<ns50:individualTrigger xmlns:ns50='urn:XmlTest.imsike' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' triggerDescriptionA='myTriggerDescriptionAttr' xsi:nil='true'/>\n\n");
970ed795
EL
676 var octetstring vl_stream:=''O;
677 f_enc_IndividualTrigger(vl_pdu,vl_stream);
678
679 if( not match(vl_stream,vl_expectedEncodedPdu)) {
680 log("Expected encoded value: ",vl_expectedEncodedPdu);
681 log("Actual encoded value: ", vl_stream);
682 setverdict(fail);
683 }
684
685 //log("===Checking value decoded from the encoded value vs original value===");
686 var integer vl_retval:=f_dec_IndividualTrigger(vl_stream, vl_decodedPdu);
687 //log("retval:",vl_retval);
688 if(f_dec_IndividualTrigger(vl_stream, vl_decodedPdu)==0) {
689 //log("The decoded pdu: ", vl_decodedPdu);
690 if(match(vl_pdu,vl_decodedPdu)) {
691 setverdict(pass);
692 } else {
693 log("Pdu differs from the expected value");
694 log(match(vl_pdu,vl_decodedPdu));
695 setverdict(fail);
696 }
697 }else{
698 log("Pdu could not decoded");
699 setverdict(fail);
700 }
701
702 //log("===Checking value decoded from the expected value vs original value===");
703 if( f_dec_IndividualTrigger(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
704 //log("The decoded pdu: ", vl_decodedPdu);
705 if(match(vl_pdu,vl_decodedPdu)) {
706 setverdict(pass);
707 } else {
708 log("Pdu could not decoded from the expected value");
709 log(match(vl_pdu,vl_decodedPdu));
710 setverdict(fail);
711 }
712 } else {
713 log("Pdu could not decoded from the expected value");
714 setverdict(fail);
715 }
716}//f_
717//==========================================
718// f_encDecTest_Isp1
719//==========================================
720function f_encDecTest_Isp1() {
721 var Isp vl_pdu:= {
722 individualTrigger_list := {
723 {
724 triggerDescriptionA:="myTriggerDescriptionAttr",
725 content:={ triggerDescription:="MyTriggerDescription" }
726 }
727 }
728 },
729 vl_decodedPdu;
730 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 731 "<ns50:isp xmlns:ns50='urn:XmlTest.imsike'>\n\t"&
732 "<ns50:individualTrigger triggerDescriptionA='myTriggerDescriptionAttr'>\n\t\t" &
733 "<ns50:triggerDescription>MyTriggerDescription</ns50:triggerDescription>\n\t"&
734 "</ns50:individualTrigger>\n"&
735 "</ns50:isp>\n\n");
970ed795
EL
736
737 var octetstring vl_stream:=''O;
738 f_enc_Isp(vl_pdu,vl_stream);
739
740 if( not match(vl_stream,vl_expectedEncodedPdu)) {
741 log("Expected encoded value: ",vl_expectedEncodedPdu);
742 log("Actual encoded value: ", vl_stream);
743 setverdict(fail);
744 }
745
746 //log("===Checking value decoded from the encoded value vs original value===");
747 var integer vl_retval:=f_dec_Isp(vl_stream, vl_decodedPdu);
748 //log("retval:",vl_retval);
749 if(f_dec_Isp(vl_stream, vl_decodedPdu)==0) {
750 //log("The decoded pdu: ", vl_decodedPdu);
751 if(match(vl_pdu,vl_decodedPdu)) {
752 setverdict(pass);
753 } else {
754 log("Pdu differs from the expected value");
755 log(match(vl_pdu,vl_decodedPdu));
756 setverdict(fail);
757 }
758 }else{
759 log("Pdu could not decoded");
760 setverdict(fail);
761 }
762
763 //log("===Checking value decoded from the expected value vs original value===");
764 if( f_dec_Isp(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
765 //log("The decoded pdu: ", vl_decodedPdu);
766 if(match(vl_pdu,vl_decodedPdu)) {
767 setverdict(pass);
768 } else {
769 log("Pdu could not decoded from the expected value");
770 log(match(vl_pdu,vl_decodedPdu));
771 setverdict(fail);
772 }
773 } else {
774 log("Pdu could not decoded from the expected value");
775 setverdict(fail);
776 }
777}//f_
778
779//==========================================
780// f_encDecTest_Isp2
781//==========================================
782function f_encDecTest_Isp2() {
783 var Isp vl_pdu:= {
784 individualTrigger_list := {
785 {
786 triggerDescriptionA:="myTriggerDescriptionAttr",
787 content:=omit
788 }
789 }
790 },
791 vl_decodedPdu;
792 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 793 "<ns50:isp xmlns:ns50='urn:XmlTest.imsike' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>\n\t"&
794 "<ns50:individualTrigger triggerDescriptionA='myTriggerDescriptionAttr' xsi:nil='true'/>\n"&
795 "</ns50:isp>\n\n");
970ed795
EL
796 var octetstring vl_stream:=''O;
797 f_enc_Isp(vl_pdu,vl_stream);
798
799 if( not match(vl_stream,vl_expectedEncodedPdu)) {
800 log("Expected encoded value: ",vl_expectedEncodedPdu);
801 log("Actual encoded value: ", vl_stream);
802 setverdict(fail);
803 }
804
805 //log("===Checking value decoded from the encoded value vs original value===");
806 var integer vl_retval:=f_dec_Isp(vl_stream, vl_decodedPdu);
807 //log("retval:",vl_retval);
808 if(f_dec_Isp(vl_stream, vl_decodedPdu)==0) {
809 //log("The decoded pdu: ", vl_decodedPdu);
810 if(match(vl_pdu,vl_decodedPdu)) {
811 setverdict(pass);
812 } else {
813 log("Pdu differs from the expected value");
814 log(match(vl_pdu,vl_decodedPdu));
815 setverdict(fail);
816 }
817 }else{
818 log("Pdu could not decoded");
819 setverdict(fail);
820 }
821
822 //log("===Checking value decoded from the expected value vs original value===");
823 if( f_dec_Isp(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
824 //log("The decoded pdu: ", vl_decodedPdu);
825 if(match(vl_pdu,vl_decodedPdu)) {
826 setverdict(pass);
827 } else {
828 log("Pdu could not decoded from the expected value");
829 log(match(vl_pdu,vl_decodedPdu));
830 setverdict(fail);
831 }
832 } else {
833 log("Pdu could not decoded from the expected value");
834 setverdict(fail);
835 }
836}//f_
837
838
839//==========================================
840// f_encDecTest_RemarkNillable1
841//==========================================
842function f_encDecTest_RemarkNillable1() {
843 var RemarkNillable vl_pdu:= {
844 content:= "MyRemarkNillable"
845 },
846 vl_decodedPdu;
847 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 848 "<ns50:remarkNillable xmlns:ns50='urn:XmlTest.imsike'>"&
970ed795 849 "MyRemarkNillable" &
3abe9331 850 "</ns50:remarkNillable>\n\n");
970ed795
EL
851 var octetstring vl_stream:=''O;
852 f_enc_RemarkNillable(vl_pdu,vl_stream);
853
854 if( not match(vl_stream,vl_expectedEncodedPdu)) {
855 log("Expected encoded value: ",vl_expectedEncodedPdu);
856 log("Actual encoded value: ", vl_stream);
857 setverdict(fail);
858 }
859
860 //log("===Checking value decoded from the encoded value vs original value===");
861 var integer vl_retval:=f_dec_RemarkNillable(vl_stream, vl_decodedPdu);
862 //log("retval:",vl_retval);
863 if(f_dec_RemarkNillable(vl_stream, vl_decodedPdu)==0) {
864 //log("The decoded pdu: ", vl_decodedPdu);
865 if(match(vl_pdu,vl_decodedPdu)) {
866 setverdict(pass);
867 } else {
868 log("Pdu differs from the expected value");
869 log(match(vl_pdu,vl_decodedPdu));
870 setverdict(fail);
871 }
872 }else{
873 log("Pdu could not decoded");
874 setverdict(fail);
875 }
876
877 //log("===Checking value decoded from the expected value vs original value===");
878 if( f_dec_RemarkNillable(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
879 //log("The decoded pdu: ", vl_decodedPdu);
880 if(match(vl_pdu,vl_decodedPdu)) {
881 setverdict(pass);
882 } else {
883 log("Pdu could not decoded from the expected value");
884 log(match(vl_pdu,vl_decodedPdu));
885 setverdict(fail);
886 }
887 } else {
888 log("Pdu could not decoded from the expected value");
889 setverdict(fail);
890 }
891}//f_
892
893//==========================================
894// f_encDecTest_RemarkNillable2
895//==========================================
896function f_encDecTest_RemarkNillable2() {
897 var RemarkNillable vl_pdu:= {
898 content:= omit
899 },
900 vl_decodedPdu;
901 var octetstring vl_expectedEncodedPdu:=char2oct(
3abe9331 902 "<ns50:remarkNillable xmlns:ns50='urn:XmlTest.imsike' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:nil='true'/>\n\n");
970ed795
EL
903 var octetstring vl_stream:=''O;
904 f_enc_RemarkNillable(vl_pdu,vl_stream);
905
906 if( not match(vl_stream,vl_expectedEncodedPdu)) {
907 log("Expected encoded value: ",vl_expectedEncodedPdu);
908 log("Actual encoded value: ", vl_stream);
909 setverdict(fail);
910 }
911
912 //log("===Checking value decoded from the encoded value vs original value===");
913 var integer vl_retval:=f_dec_RemarkNillable(vl_stream, vl_decodedPdu);
914 //log("retval:",vl_retval);
915 if(f_dec_RemarkNillable(vl_stream, vl_decodedPdu)==0) {
916 //log("The decoded pdu: ", vl_decodedPdu);
917 if(match(vl_pdu,vl_decodedPdu)) {
918 setverdict(pass);
919 } else {
920 log("Pdu differs from the expected value");
921 log(match(vl_pdu,vl_decodedPdu));
922 setverdict(fail);
923 }
924 }else{
925 log("Pdu could not decoded");
926 setverdict(fail);
927 }
928
929 //log("===Checking value decoded from the expected value vs original value===");
930 if( f_dec_RemarkNillable(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
931 //log("The decoded pdu: ", vl_decodedPdu);
932 if(match(vl_pdu,vl_decodedPdu)) {
933 setverdict(pass);
934 } else {
935 log("Pdu could not decoded from the expected value");
936 log(match(vl_pdu,vl_decodedPdu));
937 setverdict(fail);
938 }
939 } else {
940 log("Pdu could not decoded from the expected value");
941 setverdict(fail);
942 }
943}//f_
944
945//==========================================
946//f_encDecTest_nameInheritance
947//==========================================
948function f_encDecTest_nameInheritance() runs on Shell_CT{
949 var NameInheritance vl_pdu:= {
950 code:= 13,
951 second:= "This is the second field"
952 },
953 vl_decodedPdu;
954 var octetstring vl_expectedEncodedPdu:=char2oct(
955 "<xs:nameInheritance xmlns:xs='www.XmlTest.org/element_nameInheritance'>\n\t"&
956 "<code>13</code>\n\t"&
957 "<second>This is the second field</second>\n"&
958 "</xs:nameInheritance>\n\n");
959 var octetstring vl_stream:=''O;
960 f_enc_NameInheritance(vl_pdu,vl_stream);
961
962 if( not match(vl_stream,vl_expectedEncodedPdu)) {
963 log("Expected encoded value: ",vl_expectedEncodedPdu);
964 log("Actual encoded value: ", vl_stream);
965 setverdict(fail);
966 }
967
968 //log("===Checking encoded value (xml) against the xsd file by xmllint ===");
969 var boolean vl_success:=false;
970 f_shell_validateXml(vl_stream,"XmlTest_element_nameInheritance.xsd", c_shell_successWithoutWarningAndError, vl_success);
971 if(vl_success) {
972 setverdict(pass);
973 }else{
974 log("Xml validation against xsd failed");
975 setverdict(fail);
976 }
977
978 //log("===Checking value decoded from the encoded value vs original value===");
979 var integer vl_retval:=f_dec_NameInheritance(vl_stream, vl_decodedPdu);
980 //log("retval:",vl_retval);
981 if(f_dec_NameInheritance(vl_stream, vl_decodedPdu)==0) {
982 log("The decoded pdu: ", vl_decodedPdu);
983 if(match(vl_pdu,vl_decodedPdu)) {
984 setverdict(pass);
985 } else {
986 log("Pdu differs from the expected value");
987 log(match(vl_pdu,vl_decodedPdu));
988 setverdict(fail);
989 }
990 }else{
991 log("Pdu could not decoded");
992 setverdict(fail);
993 }
994
995 //log("===Checking value decoded from the expected value vs original value===");
996 if( f_dec_NameInheritance(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
997 //log("The decoded pdu: ", vl_decodedPdu);
998 if(match(vl_pdu,vl_decodedPdu)) {
999 setverdict(pass);
1000 } else {
1001 log("Pdu could not decoded from the expected value");
1002 log(match(vl_pdu,vl_decodedPdu));
1003 setverdict(fail);
1004 }
1005 } else {
1006 log("Pdu could not decoded from the expected value");
1007 setverdict(fail);
1008 }
1009}//f_
1010
1011//========= TEMPORARY - To test Tgc =====
1012
1013//==========================================
1014//f_encDecTest_Tgc
1015//==========================================
1016function f_encDecTest_Tgc() runs on Shell_CT {
1017
1018 var Tgc vl_pdu := {
1019 blade_list := {},
1020 system_ := omit,
1021 network := omit,
1022 tgcApp := {
1023 omit,
1024 omit,
1025 omit,
1026 omit,
1027 omit,
1028 omit,
1029/* announcementSet_list */ {{
1030 name := "al",
1031 announcement_list := {{
1032 code := 17,
1033 name := "sweet seventeen"
1034 }}
1035 }},
1036/* bgwInterfaceParameterSet_list */ {},
1037/* defaultPointAssociation */ {
1038 omit,
1039 omit,
1040 omit,
1041 omit
1042 },
1043 {},
1044 {},
1045 {},
1046 {},
1047 {},
1048 {},
1049 {},
1050 {},
1051 {},
1052 {},
1053 {},
1054 omit,
1055 {},
1056 {},
1057 {},
1058 {},
1059 {},
1060 {}
1061 },
1062 tispReport := omit
1063 },
1064 vl_decodedPdu;
1065 var octetstring vl_expectedEncodedPdu:=char2oct(
1066 "<tgc:Tgc xmlns:tgc='http://www.ericsson.com/is/isco/Tgc/R6A48/R6H01'>\n"&
1067 "\t<tgc:TgcApp>\n"&
1068 "\t\t<tgc:AnnouncementSet>\n"&
1069 "\t\t\t<tgc:name>al</tgc:name>\n"&
1070 "\t\t\t<tgc:Announcement>\n"&
1071 "\t\t\t\t<tgc:code>17</tgc:code>\n"&
1072 "\t\t\t\t<tgc:name>sweet seventeen</tgc:name>\n"&
1073 "\t\t\t</tgc:Announcement>\n"&
1074 "\t\t</tgc:AnnouncementSet>\n"&
1075 "\t\t<tgc:DefaultPointAssociation/>\n"&
1076 "\t</tgc:TgcApp>\n"&
1077 "</tgc:Tgc>\n\n"
1078 );
1079
1080 var octetstring vl_stream:=''O;
1081 f_enc_Tgc(vl_pdu,vl_stream);
1082
1083 if( match(vl_stream,vl_expectedEncodedPdu)) {
1084 setverdict(pass);
1085 } else {
1086 log("Expected encoded value: ",vl_expectedEncodedPdu);
1087 log("Actual encoded value: ", vl_stream);
1088 setverdict(fail);
1089 }
1090
1091 //log("===Checking encoded value (xml) against the xsd file by xmllint ===");
1092 var boolean vl_success:=false;
1093 f_shell_validateXml(vl_stream,"Tgc.xsd", c_shell_successWithoutWarningAndError, vl_success);
1094 if(vl_success) {
1095 setverdict(pass);
1096 }else{
1097 log("Xml validation against xsd failed");
1098 setverdict(fail);
1099 }
1100
1101 //log("===Checking value decoded from the encoded value vs original value===");
1102 var integer vl_retval:=f_dec_Tgc(vl_stream, vl_decodedPdu);
1103 //log("retval:",vl_retval);
1104 if(f_dec_Tgc(vl_stream, vl_decodedPdu)==0) {
1105 //log("The decoded pdu: ", vl_decodedPdu);
1106 if(match(vl_pdu,vl_decodedPdu)) {
1107 setverdict(pass);
1108 } else {
1109 log("Pdu differs from the expected value");
1110 log(match(vl_pdu,vl_decodedPdu));
1111 setverdict(fail);
1112 }
1113 }else{
1114 log("Pdu could not decoded");
1115 setverdict(fail);
1116 }
1117
1118 //log("===Checking value decoded from the expected value vs original value===");
1119 if( f_dec_Tgc(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
1120 //log("The decoded pdu: ", vl_decodedPdu);
1121 if(match(vl_pdu,vl_decodedPdu)) {
1122 setverdict(pass);
1123 } else {
1124 log("Pdu could not decoded from the expected value");
1125 log(match(vl_pdu,vl_decodedPdu));
1126 setverdict(fail);
1127 }
1128 } else {
1129 log("Pdu could not decoded from the expected value");
1130 setverdict(fail);
1131 }
1132}//f_
1133
1134
51fa56b9 1135//==========================================
1136//f_encDecTest_Ize
1137//==========================================
1138function f_encDecTest_ize_subs() runs on Shell_CT {
1139
1140 var Ize vl_pdu := { head_list := {
1141 { head := "anything" },
1142 { member1 := "any thing" },
1143 { member2 := something },
1144 { member3 := { bar:= 5, foo := omit, base := "anything else" } } }
1145 },
1146 vl_decodedPdu;
1147
1148 var octetstring vl_expectedEncodedPdu:=char2oct(
1149 "<subs:ize "&
1150 "xmlns:subs='www.example.org/substitutiongroup'>\n"&
1151 "\t<subs:head>anything</subs:head>\n"&
1152 "\t<subs:member1>any thing</subs:member1>\n"&
1153 "\t<subs:member2>something</subs:member2>\n"&
1154 "\t<subs:member3 bar='5'>anything else</subs:member3>\n"&
1155 "</subs:ize>\n\n");
1156
1157 var octetstring vl_stream:=''O;
1158 f_enc_ize_subs(vl_pdu,vl_stream);
1159
1160 if( match(vl_stream,vl_expectedEncodedPdu)) {
1161 setverdict(pass);
1162 } else {
1163 log("Expected encoded value: ",vl_expectedEncodedPdu);
1164 log("Actual encoded value: ", vl_stream);
1165 setverdict(fail);
1166 }
1167
1168 //log("===Checking encoded value (xml) against the xsd file by xmllint ===");
1169 var boolean vl_success:=false;
1170 f_shell_validateXml(vl_stream,"substitutiongroup.xsd", c_shell_successWithoutWarningAndError, vl_success);
1171 if(vl_success) {
1172 setverdict(pass);
1173 }else{
1174 log("Xml validation against xsd failed");
1175 setverdict(fail);
1176 }
1177
1178 //log("===Checking value decoded from the encoded value vs original value===");
1179 var integer vl_retval:=f_dec_ize_subs(vl_stream, vl_decodedPdu);
1180 //log("retval:",vl_retval);
1181 if(f_dec_ize_subs(vl_stream, vl_decodedPdu)==0) {
1182 //log("The decoded pdu: ", vl_decodedPdu);
1183 if(match(vl_pdu,vl_decodedPdu)) {
1184 setverdict(pass);
1185 } else {
1186 log("Pdu differs from the expected value");
1187 log(match(vl_pdu,vl_decodedPdu));
1188 setverdict(fail);
1189 }
1190 }else{
1191 log("Pdu could not decoded");
1192 setverdict(fail);
1193 }
1194
1195 //log("===Checking value decoded from the expected value vs original value===");
1196 if( f_dec_ize_subs(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
1197 //log("The decoded pdu: ", vl_decodedPdu);
1198 if(match(vl_pdu,vl_decodedPdu)) {
1199 setverdict(pass);
1200 } else {
1201 log("Pdu could not decoded from the expected value");
1202 log(match(vl_pdu,vl_decodedPdu));
1203 setverdict(fail);
1204 }
1205 } else {
1206 log("Pdu could not decoded from the expected value");
1207 setverdict(fail);
1208 }
1209}//f_
1210
1211
1212//==========================================
1213//f_encDecTest_type_subs
1214//==========================================
1215function f_encDecTest_type_subs() runs on Shell_CT {
1216
1217 var Submit vl_pdu := {
1218 request1 := {
1219 restrictedType := {
1220 foo_list := { "string1", "string2", "string3" },
1221 bar := "bar"
1222 }
1223 },
1224 request2 := {
1225 parentType := {
1226 foo_list := { "parentstring1", "parentstring2", "parentstring3" },
1227 bar := "parentbar"
1228 }
1229 }
1230 },
1231 vl_decodedPdu;
1232 var octetstring vl_expectedEncodedPdu:=char2oct(
1233 "<tysub:Submit xmlns:tysub='www.example.org/type/substitution' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>\n"&
1234 "\t<request1 xsi:type='tysub:restrictedType'>\n"&
1235 "\t\t<foo>string1</foo>\n"&
1236 "\t\t<foo>string2</foo>\n"&
1237 "\t\t<foo>string3</foo>\n"&
1238 "\t\t<bar>bar</bar>\n"&
1239 "\t</request1>\n"&
1240 "\t<request2>\n"&
1241 "\t\t<foo>parentstring1</foo>\n"&
1242 "\t\t<foo>parentstring2</foo>\n"&
1243 "\t\t<foo>parentstring3</foo>\n"&
1244 "\t\t<bar>parentbar</bar>\n"&
1245 "\t</request2>\n"&
1246 "</tysub:Submit>\n\n");
1247
1248 var octetstring vl_stream:=''O;
1249 f_enc_type_subs(vl_pdu,vl_stream);
1250
1251 if( match(vl_stream,vl_expectedEncodedPdu)) {
1252 setverdict(pass);
1253 } else {
1254 log("Expected encoded value: ",vl_expectedEncodedPdu);
1255 log("Actual encoded value: ", vl_stream);
1256 setverdict(fail);
1257 }
1258
1259 //log("===Checking encoded value (xml) against the xsd file by xmllint ===");
1260 var boolean vl_success:=false;
1261 f_shell_validateXml(vl_stream,"type_substitution.xsd", c_shell_successWithoutWarningAndError, vl_success);
1262 if(vl_success) {
1263 setverdict(pass);
1264 }else{
1265 log("Xml validation against xsd failed");
1266 setverdict(fail);
1267 }
1268
1269 //log("===Checking value decoded from the encoded value vs original value===");
1270 var integer vl_retval:=f_dec_type_subs(vl_stream, vl_decodedPdu);
1271 //log("retval:",vl_retval);
1272 if(f_dec_type_subs(vl_stream, vl_decodedPdu)==0) {
1273 //log("The decoded pdu: ", vl_decodedPdu);
1274 if(match(vl_pdu,vl_decodedPdu)) {
1275 setverdict(pass);
1276 } else {
1277 log("Pdu differs from the expected value");
1278 log(match(vl_pdu,vl_decodedPdu));
1279 setverdict(fail);
1280 }
1281 }else{
1282 log("Pdu could not decoded");
1283 setverdict(fail);
1284 }
1285
1286 //log("===Checking value decoded from the expected value vs original value===");
1287 if( f_dec_type_subs(vl_expectedEncodedPdu, vl_decodedPdu)==0) {
1288 //log("The decoded pdu: ", vl_decodedPdu);
1289 if(match(vl_pdu,vl_decodedPdu)) {
1290 setverdict(pass);
1291 } else {
1292 log("Pdu could not decoded from the expected value");
1293 log(match(vl_pdu,vl_decodedPdu));
1294 setverdict(fail);
1295 }
1296 } else {
1297 log("Pdu could not decoded from the expected value");
1298 setverdict(fail);
1299 }
1300}//f_
1301
1302
970ed795 1303}//module
This page took 0.073768 seconds and 5 git commands to generate.