1 /******************************************************************************
2 * Copyright (c) 2000-2014 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 ******************************************************************************/
17 type record SR { // simple record
21 template RP t_r_all_omit := { { { omit, "omit" } } }
24 type component templateRec_mycomp {};
25 type record templateRec_myrec {
28 type record templateRec_rec {
31 templateRec_myrec x3 optional };
32 template templateRec_rec templateRec_tSpec :={ //specific values
35 x3:={f1:=3,f2:=1.2} };
36 template templateRec_rec templateRec_tList :={ //specific value and value list
38 x2:=({f1:=2,f2:=1.2},{f1:=3,f2:=1.2},{f1:=6,f2:=1.2}),
39 x3:={f1:=3,f2:=1.2} };
40 template templateRec_rec templateRec_tComp :={ //specific value and compl. list
42 x2:=complement ({f1:=2,f2:=1.2},{f1:=3,f2:=1.2},{f1:=6,f2:=1.2}),
43 x3:={f1:=3,f2:=1.2} };
44 template templateRec_rec templateRec_tOmit :={ //omitting values
48 template templateRec_rec templateRec_tAny :={ //specific and any value
52 template templateRec_rec templateRec_tAnyorNone :={ //specific and AnyorNone value
56 template templateRec_rec templateRec_tIfpresent :={ //specific value and ifpresent
59 x3:={f1:=3,f2:=1.2} ifpresent };
61 testcase pasu() runs on templateRec_mycomp
63 template integer v_timeUnit := 60;
65 var template SR t_sr := { 13 }
68 template RP v_r modifies t_r_all_omit := {{{
71 setverdict(pass); // if it compiles, that's enough
74 testcase templateRecSpec() runs on templateRec_mycomp {
75 var templateRec_myrec temp:={f1:=3,f2:=1.2};
76 var templateRec_rec x1,x2; //specific value
77 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
78 x2:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
80 if (match(x1,templateRec_tSpec)) {setverdict(pass);}
81 else {setverdict(fail);}
83 if (not(match(x2,templateRec_tSpec))) {setverdict(pass);}
84 else {setverdict(fail);}
87 testcase templateRecList() runs on templateRec_mycomp {
88 var templateRec_myrec temp:={f1:=3,f2:=1.2};
89 var templateRec_rec x1,x2,x3; //value list
90 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=6,f2:=1.2}, x3:=temp };
91 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=7,f2:=1.2}, x3:=temp };
92 x3:={ x1:={f1:=8,f2:=1.2}, x2:={f1:=6,f2:=1.2}, x3:=temp };
94 if (match(x1,templateRec_tList)) {setverdict(pass);}
95 else {setverdict(fail);}
96 //no match: out of list
97 if (not(match(x2,templateRec_tList))) {setverdict(pass);}
98 else {setverdict(fail);}
99 //no match: other field
100 if (not(match(x3,templateRec_tList))) {setverdict(pass);}
101 else {setverdict(fail);}
104 testcase templateRecComp() runs on templateRec_mycomp {
105 var templateRec_myrec temp:={f1:=3,f2:=1.2};
106 var templateRec_rec x1,x2,x3; //complemented list
107 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=7,f2:=1.2}, x3:=temp };
108 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=6,f2:=1.2}, x3:=temp };
109 x3:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=7,f2:=1.2}, x3:=temp };
111 if (match(x1,templateRec_tComp)) {setverdict(pass);}
112 else {setverdict(fail);}
113 //no match: in the list
114 if (not(match(x2,templateRec_tComp))) {setverdict(pass);}
115 else {setverdict(fail);}
116 //no match: other field
117 if (not(match(x3,templateRec_tComp))) {setverdict(pass);}
118 else {setverdict(fail);}
121 testcase templateRecOmit() runs on templateRec_mycomp {
122 var templateRec_myrec temp:={f1:=3,f2:=1.2};
123 var templateRec_rec x1,x2,x3; //omitting value
124 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
125 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
126 x3:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
128 if (match(x1,templateRec_tOmit)) {setverdict(pass);}
129 else {setverdict(fail);}
130 //no match: not omitted
131 if (not(match(x2,templateRec_tOmit))) {setverdict(pass);}
132 else {setverdict(fail);}
133 //no match: other field
134 if (not(match(x3,templateRec_tOmit))) {setverdict(pass);}
135 else {setverdict(fail);}
138 testcase templateRecAny() runs on templateRec_mycomp {
139 var templateRec_myrec temp:={f1:=3,f2:=1.2};
140 var templateRec_rec x1,x2,x3; //any value
141 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
142 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
143 x3:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
145 if (match(x1,templateRec_tAny)) {setverdict(pass);}
146 else {setverdict(fail);}
147 //no match: field omitted
148 if (not(match(x2,templateRec_tAny))) {setverdict(pass);}
149 else {setverdict(fail);}
150 //no match: other field
151 if (not(match(x3,templateRec_tAny))) {setverdict(pass);}
152 else {setverdict(fail);}
155 testcase templateRecAnyorNone() runs on templateRec_mycomp {
156 var templateRec_myrec temp:={f1:=3,f2:=1.2};
157 var templateRec_rec x1,x2,x3; //AnyorNone value
158 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
159 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp };
160 x3:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
162 if (match(x1,templateRec_tAnyorNone)) {setverdict(pass);}
163 else {setverdict(fail);}
165 if (match(x2,templateRec_tAnyorNone)) {setverdict(pass);}
166 else {setverdict(fail);}
167 //no match: other field
168 if (not(match(x3,templateRec_tAnyorNone))) {setverdict(pass);}
169 else {setverdict(fail);}
172 testcase templateRecIfpresent() runs on templateRec_mycomp {
173 var templateRec_myrec temp1:={f1:=3,f2:=1.2}; //ifpresent
174 var templateRec_myrec temp2:={f1:=4,f2:=1.2};
175 var templateRec_rec x1,x2,x3,x4;
176 x1:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp1 };
177 x2:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
178 x3:={ x1:={f1:=1,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=temp2 };
179 x4:={ x1:={f1:=2,f2:=1.2}, x2:={f1:=2,f2:=1.2}, x3:=omit };
180 //match: present and match
181 if (match(x1,templateRec_tIfpresent)) {setverdict(pass);}
182 else {setverdict(fail);}
184 if (match(x2,templateRec_tIfpresent)) {setverdict(pass);}
185 else {setverdict(fail);}
186 //no match: present and not match
187 if (not(match(x3,templateRec_tIfpresent))) {setverdict(pass);}
188 else {setverdict(fail);}
189 //no match: other field
190 if (not(match(x4,templateRec_tIfpresent))) {setverdict(pass);}
191 else {setverdict(fail);}
198 charstring str optional
200 const R cr := { 1, omit }
201 template R tRrec1 := { 1 , omit }
202 template R tRrec2 := { 1, complement ( omit, "a" ) }
203 template R tRrec3 := { 1, ( omit, "a" ) }
204 template R tr := { i := 1, str := ( omit , omit ) }
205 template R tr2 := { i := 1, str := complement( omit , omit ) }
206 template R trc := cr; // HQ46602
208 testcase MTTSM00015947() runs on templateRec_mycomp
210 if (not match(cr, tRrec1)) { setverdict(fail); }
211 if (match(cr, tRrec2)) { setverdict(fail); }
212 if (not match(cr, tRrec3)) { setverdict(fail); }
213 if (ispresent(tr.str)) { setverdict(fail); }
214 if (ispresent(trc.str)) { setverdict(fail); }
215 if (not ispresent(tr2.str)) { setverdict(fail); }
219 import from TtemplateRecAsn all
220 template AmbiguousAnyRec t_AAR := { ''O }
221 const AmbiguousAnyRec c_AAR := { ''O }
222 testcase tc_HM39698() runs on templateRec_mycomp
224 var template AmbiguousAnyRec vt_AAR := { ''O }
225 var AmbiguousAnyRec v_AAR := { ''O }
230 // It's good, if we reach this point...
234 testcase tc_valueof_governor_segfault() runs on templateRec_mycomp
236 var templateRec_myrec mr := valueof({f1 := 1, f2 := 2.0})
240 // Parametrized template reference without `()'.
241 template R tmr(in integer i := 1) := { i := i, str := omit }
242 testcase tc_HO49372() runs on templateRec_mycomp
253 testcase tc_HO69658() runs on templateRec_mycomp
255 var template MyRecord vl_myrecord;
256 vl_myrecord.int := 0;
258 var template MyRecord vl_myrecordAgain := vl_myrecord;
259 vl_myrecordAgain.deleted := false;
261 log("Now assignment finish");
262 log("Print record:",vl_myrecordAgain);
263 // It's good, if we reach this point...
264 if (log2str(vl_myrecordAgain)=="{ int := 0, deleted := false }") {setverdict(pass)}else{setverdict(fail)}
274 type record of charstring ROC;
275 type record of integer ROI;
276 type record MyRecord1 {
282 type union MyUnion1 {
289 type union MyUnion_OneOption {
298 testcase tc_record_withJoker1() runs on templateRec_mycomp {
299 var template MyRec2 vtl_rec2_j;
300 if(isbound(vtl_rec2_j)) {setverdict(fail)}else {setverdict(pass)};
304 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
305 if(isbound(vtl_rec2_j.roc)) {setverdict(pass)}else {setverdict(fail)};
306 if(isbound(vtl_rec2_j.roc[0])) {setverdict(fail)}else {setverdict(pass)};
308 testcase tc_record_withJoker2() runs on templateRec_mycomp {
309 var template MyRec2 vtl_rec2_j;
313 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
314 if(isbound(vtl_rec2_j.roc)) {setverdict(pass)}else {setverdict(fail)};
315 if(isbound(vtl_rec2_j.roc[0])){setverdict(pass)}else {setverdict(fail)};
316 if(isbound(vtl_rec2_j.roc[1])){setverdict(pass)}else {setverdict(fail)};
317 if(isbound(vtl_rec2_j.roc[10])){setverdict(fail)}else {setverdict(pass)};
318 if(isbound(vtl_rec2_j.roi)){setverdict(fail)}else {setverdict(pass)};
319 if(isbound(vtl_rec2_j.u)){setverdict(fail)}else {setverdict(pass)};
320 if(isbound(vtl_rec2_j.r)){setverdict(fail)}else {setverdict(pass)};
323 testcase tc_record_withJoker3() runs on templateRec_mycomp {
324 var template MyRec2 vtl_rec2_j;
328 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
329 if(isbound(vtl_rec2_j.roc)){setverdict(fail)}else {setverdict(pass)};
330 if(isbound(vtl_rec2_j.roi)){setverdict(fail)}else {setverdict(pass)};
331 if(isbound(vtl_rec2_j.u)){setverdict(pass)}else {setverdict(fail)};
332 if(isbound(vtl_rec2_j.u.i)){setverdict(fail)}else {setverdict(pass)};
335 testcase tc_record_withJoker4() runs on templateRec_mycomp {
336 var template MyRec2 vtl_rec2_j;
341 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
342 if(isbound(vtl_rec2_j.roc)){setverdict(pass)}else {setverdict(fail)};
343 if(isbound(vtl_rec2_j.roi)){setverdict(fail)}else {setverdict(pass)};
344 if(isbound(vtl_rec2_j.u)){setverdict(pass)}else {setverdict(fail)};
345 if(isbound(vtl_rec2_j.u.i)){setverdict(pass)}else {setverdict(fail)};
348 testcase tc_record_withJoker5() runs on templateRec_mycomp {
349 var template MyRec2 vtl_rec2_j;
353 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
354 if(isbound(vtl_rec2_j.roc)){setverdict(fail)}else {setverdict(pass)};
355 if(isbound(vtl_rec2_j.roi)){setverdict(fail)}else {setverdict(pass)};
356 if(isbound(vtl_rec2_j.u)){setverdict(fail)}else {setverdict(pass)};
357 if(isbound(vtl_rec2_j.u.i)){setverdict(fail)}else {setverdict(pass)};
358 if(isbound(vtl_rec2_j.r)) {setverdict(pass)}else {setverdict(fail)};
359 if(isbound(vtl_rec2_j.r.i)) {setverdict(pass)}else {setverdict(fail)};
360 if(isbound(vtl_rec2_j.r.x)) {setverdict(pass)}else {setverdict(fail)};
361 if(isbound(vtl_rec2_j.r.c)) {setverdict(pass)}else {setverdict(fail)};
364 testcase tc_record_withJoker6() runs on templateRec_mycomp {
365 var template MyRec2 vtl_rec2_j;
369 if(isbound(vtl_rec2_j)) {setverdict(pass)}else {setverdict(fail)};
370 if(isbound(vtl_rec2_j.roc)){setverdict(fail)}else {setverdict(pass)};
371 if(isbound(vtl_rec2_j.roi)){setverdict(fail)}else {setverdict(pass)};
372 if(isbound(vtl_rec2_j.u)){setverdict(fail)}else {setverdict(pass)};
373 if(isbound(vtl_rec2_j.u.i)){setverdict(fail)}else {setverdict(pass)};
374 if(isbound(vtl_rec2_j.r)) {setverdict(pass)}else {setverdict(fail)};
375 if(isbound(vtl_rec2_j.r.i)) {setverdict(fail)}else {setverdict(pass)};
376 if(isbound(vtl_rec2_j.r.x)) {setverdict(fail)}else {setverdict(pass)};
377 if(isbound(vtl_rec2_j.r.c)) {setverdict(fail)}else {setverdict(pass)};
381 type record MyRecord_HO72812
384 boolean innerField1 optional,
385 integer innerField2 optional
389 testcase tc_record_TR_HO72813() runs on templateRec_mycomp {
390 var MyRecord_HO72812 vl_MyRecord := { field1 := {}, field2 := 5 };
391 if(isbound(vl_MyRecord)) {setverdict(pass)} else {setverdict(fail)}
392 if(isbound(vl_MyRecord.field1)) {setverdict(fail)} else {setverdict(pass)}
393 if(isbound(vl_MyRecord.field2)) {setverdict(pass)} else {setverdict(fail)}
394 vl_MyRecord.field1 := omit
395 if(isbound(vl_MyRecord.field1)) {setverdict(pass)} else {setverdict(fail)}
396 if(isbound(vl_MyRecord.field1.innerField1)) {setverdict(fail)} else {setverdict(pass)}
397 if(isbound(vl_MyRecord.field1.innerField1)) {setverdict(fail)} else {setverdict(pass)}
398 if(ispresent(vl_MyRecord.field1)) {setverdict(fail)} else {setverdict(pass)}
400 vl_MyRecord := { field1 := {innerField1:=true, innerField2:=1 } }
401 if(isbound(vl_MyRecord.field1)) {setverdict(pass)} else {setverdict(fail)}
402 if(isbound(vl_MyRecord.field1.innerField1)) {setverdict(pass)} else {setverdict(fail)}
403 if(isbound(vl_MyRecord.field1.innerField2)) {setverdict(pass)} else {setverdict(fail)}
405 testcase tc_record_TR_HO72813_ip() runs on templateRec_mycomp {
406 var MyRecord_HO72812 vl_MyRecord := { field1 := {}, field2 := 5 };
407 if(ispresent(vl_MyRecord)) {setverdict(pass)} else {setverdict(fail)}
408 if(ispresent(vl_MyRecord.field1)) {setverdict(fail)} else {setverdict(pass)} //according to ethgry
409 if(ispresent(vl_MyRecord.field2)) {setverdict(pass)} else {setverdict(fail)}
412 testcase tc_record_TR_HO72813_innerFields() runs on templateRec_mycomp {
413 var MyRecord_HO72812 vl_MyRecord := { field1 := {}, field2 := 5 };
414 if(ispresent(vl_MyRecord.field1.innerField1)) {setverdict(fail)} else {setverdict(pass)}
415 if(ispresent(vl_MyRecord.field1.innerField2)) {setverdict(fail)} else {setverdict(pass)}
418 testcase tc_record_TR_HO72813_partlyInitialized() runs on templateRec_mycomp {
419 var MyRecord_HO72812 vl_MyRecord := { field1 := {innerField1:=true}, field2 := 5 };
420 if(ispresent(vl_MyRecord.field1)) {setverdict(pass)} else {setverdict(fail)} ;
421 if(ispresent(vl_MyRecord.field1.innerField1)) {setverdict(pass)} else {setverdict(fail)};
422 if(ispresent(vl_MyRecord.field1.innerField2)) {setverdict(fail)} else {setverdict(pass)} ; //DTE???
425 testcase tc_record_TR_HO72813_omit() runs on templateRec_mycomp {
426 var MyRecord_HO72812 vl_MyRecord := { field1 := {innerField1:=true}, field2 := 5 }
427 vl_MyRecord.field1 := omit;
428 if(ispresent(vl_MyRecord.field1)) {setverdict(fail)} else {setverdict(pass)}
429 if(ispresent(vl_MyRecord.field1.innerField1)) {setverdict(fail)} else {setverdict(pass)};
430 if(ispresent(vl_MyRecord.field1.innerField2)) {setverdict(fail)} else {setverdict(pass)} ; //DTE???
434 testcase tc_record_mandatoryField_WithWildcard() runs on templateRec_mycomp {
435 var template MyRec4 vtl_rec:=?
436 if(ispresent(vtl_rec.u)){setverdict(pass)}else {setverdict(fail)};
437 if(ispresent(vtl_rec.i)){setverdict(pass)}else {setverdict(fail)};
440 testcase tc_record_withWildCard1() runs on templateRec_mycomp {
441 var template MyRec2 vtl_rec2;
445 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
447 testcase tc_record_withWildCard1A() runs on templateRec_mycomp {
448 var template MyRec2 vtl_rec2;
452 if(ispresent(vtl_rec2.roc)) {setverdict(fail)}else {setverdict(pass)};
455 testcase tc_record_withWildCard1AA() runs on templateRec_mycomp {
456 var template MyRec2 vtl_rec2;
460 if(ispresent(vtl_rec2.roc)) {setverdict(pass)}else {setverdict(fail)};
463 testcase tc_record_withWildCard1B() runs on templateRec_mycomp {
464 var template MyRec2 vtl_rec2;
468 if(ispresent(vtl_rec2.roc[0])) {setverdict(fail)}else {setverdict(pass)};
471 testcase tc_record_withWildCard2() runs on templateRec_mycomp {
472 var template MyRec2 vtl_rec2;
476 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
477 if(ispresent(vtl_rec2.roc)) {setverdict(pass)}else {setverdict(fail)};
478 if(ispresent(vtl_rec2.roc[0])){setverdict(pass)}else {setverdict(fail)};
479 if(ispresent(vtl_rec2.roc[1])){setverdict(pass)}else {setverdict(fail)};
480 if(ispresent(vtl_rec2.roc[10])){setverdict(fail)}else {setverdict(pass)};
484 testcase tc_record_withWildCard2A() runs on templateRec_mycomp {
485 var template MyRec2 vtl_rec2;
489 if(ispresent(vtl_rec2.roi)){setverdict(fail)}else {setverdict(pass)};
491 testcase tc_record_withWildCard2B() runs on templateRec_mycomp {
492 var template MyRec2 vtl_rec2;
496 if(ispresent(vtl_rec2.u)){setverdict(fail)}else {setverdict(pass)};
498 testcase tc_record_withWildCard2C() runs on templateRec_mycomp {
499 var template MyRec2 vtl_rec2;
503 if(ispresent(vtl_rec2.r)){setverdict(fail)}else {setverdict(pass)};
506 testcase tc_record_withWildCard3() runs on templateRec_mycomp {
507 var template MyRec2 vtl_rec2;
511 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
514 testcase tc_record_withWildCard3A() runs on templateRec_mycomp {
515 var template MyRec2 vtl_rec2;
519 if(ispresent(vtl_rec2.roc)){setverdict(fail)}else {setverdict(pass)};
522 testcase tc_record_withWildCard3B() runs on templateRec_mycomp {
523 var template MyRec2 vtl_rec2;
527 if(ispresent(vtl_rec2.roi)){setverdict(fail)}else {setverdict(pass)};
530 testcase tc_record_withWildCard3C() runs on templateRec_mycomp {
531 var template MyRec2 vtl_rec2;
535 if(ispresent(vtl_rec2.u)){setverdict(fail)}else{setverdict(pass)};
538 testcase tc_record_withWildCard3D() runs on templateRec_mycomp {
539 var template MyRec2 vtl_rec2;
543 if(ispresent(vtl_rec2.u)){setverdict(pass)}else{setverdict(fail)};
546 testcase tc_record_withWildCard4() runs on templateRec_mycomp {
547 var template MyRec2 vtl_rec2;
552 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
553 if(ispresent(vtl_rec2.roc)){setverdict(fail)}else {setverdict(pass)};
556 testcase tc_record_withWildCard4A() runs on templateRec_mycomp {
557 var template MyRec2 vtl_rec2;
562 if(ispresent(vtl_rec2.roi)){setverdict(fail)}else {setverdict(pass)};
565 testcase tc_record_withWildCard4B() runs on templateRec_mycomp {
566 var template MyRec2 vtl_rec2;
571 if(ispresent(vtl_rec2.u)){setverdict(pass)}else {setverdict(fail)};
572 if(ispresent(vtl_rec2.u.i)){setverdict(pass)}else {setverdict(fail)};
575 testcase tc_record_withWildCard5() runs on templateRec_mycomp {
576 var template MyRec2 vtl_rec2;
580 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
581 if(ispresent(vtl_rec2.roc)){setverdict(fail)}else {setverdict(pass)};
582 if(ispresent(vtl_rec2.roi)){setverdict(fail)}else {setverdict(pass)};
583 if(ispresent(vtl_rec2.u)){setverdict(fail)}else {setverdict(pass)};
584 if(ispresent(vtl_rec2.u.i)){setverdict(fail)}else {setverdict(pass)};
587 testcase tc_record_withWildCard5A() runs on templateRec_mycomp {
588 var template MyRec2 vtl_rec2;
592 if(ispresent(vtl_rec2.r)) {setverdict(pass)}else {setverdict(fail)};
595 testcase tc_record_withWildCard5B_optional() runs on templateRec_mycomp {
596 var template MyRec2 vtl_rec2;
600 if(ispresent(vtl_rec2.r.i)) {setverdict(fail)}else {setverdict(pass)};
601 if(ispresent(vtl_rec2.r.x)) {setverdict(fail)}else {setverdict(pass)};
604 testcase tc_record_withWildCard5B_mandatory() runs on templateRec_mycomp {
605 var template MyRec2 vtl_rec2;
609 if(ispresent(vtl_rec2.r.c)) {setverdict(pass)}else {setverdict(fail)};
612 testcase tc_record_withWildCard6() runs on templateRec_mycomp {
613 var template MyRec2 vtl_rec2;
617 if(ispresent(vtl_rec2)) {setverdict(pass)}else {setverdict(fail)};
618 if(ispresent(vtl_rec2.roc)){setverdict(fail)}else {setverdict(pass)};
619 if(ispresent(vtl_rec2.roi)){setverdict(fail)}else {setverdict(pass)};
620 if(ispresent(vtl_rec2.u)){setverdict(fail)}else {setverdict(pass)};
621 if(ispresent(vtl_rec2.u.i)){setverdict(fail)}else {setverdict(pass)};
624 testcase tc_record_withWildCard6A() runs on templateRec_mycomp {
625 var template MyRec2 vtl_rec2;
629 if(ispresent(vtl_rec2.r)) {setverdict(fail)}else {setverdict(pass)};
630 if(ispresent(vtl_rec2.r.i)) {setverdict(fail)}else {setverdict(pass)};
631 if(ispresent(vtl_rec2.r.x)) {setverdict(fail)}else {setverdict(pass)};
632 if(ispresent(vtl_rec2.r.c)) {setverdict(fail)}else {setverdict(pass)};
637 execute(templateRecSpec());
638 execute(templateRecList());
639 execute(templateRecComp());
640 execute(templateRecOmit());
641 execute(templateRecAny());
642 execute(templateRecAnyorNone());
643 execute(templateRecIfpresent());
644 execute(MTTSM00015947());
645 execute(tc_HM39698());
646 execute(tc_valueof_governor_segfault());
647 execute(tc_HO49372());
648 execute(tc_HO69658());
650 execute(tc_record_withJoker1());
651 execute(tc_record_withJoker2());
652 execute(tc_record_withJoker3());
653 execute(tc_record_withJoker4());
654 execute(tc_record_withJoker5());
655 execute(tc_record_withJoker6());
656 execute(tc_record_TR_HO72813());
657 execute(tc_record_withWildCard1());
658 execute(tc_record_withWildCard1A()); //pass
659 execute(tc_record_withWildCard1AA());
660 execute(tc_record_withWildCard1B());
661 execute(tc_record_withWildCard2());
662 execute(tc_record_withWildCard2A());//pass (unbound)
663 execute(tc_record_withWildCard2B());//pass (unbound)
664 execute(tc_record_withWildCard2C());//pass (unbound)
665 execute(tc_record_withWildCard3());
666 execute(tc_record_withWildCard3A());//pass (unbound)
667 execute(tc_record_withWildCard3B());//pass (unbound)
668 execute(tc_record_withWildCard3C());//pass (*)
669 execute(tc_record_withWildCard3D());//pass
670 execute(tc_record_withWildCard4());//pass
671 execute(tc_record_withWildCard4A());
672 execute(tc_record_withWildCard4B());
673 execute(tc_record_withWildCard5());//pass
674 execute(tc_record_withWildCard5A());//pass
675 execute(tc_record_withWildCard5A());//pass
676 execute(tc_record_withWildCard5B_optional());//pass
677 execute(tc_record_withWildCard5B_mandatory());//pass
678 execute(tc_record_withWildCard6());//pass
679 execute(tc_record_withWildCard6A());
680 execute(tc_record_TR_HO72813_ip());
681 execute(tc_record_TR_HO72813_innerFields());
682 execute(tc_record_TR_HO72813_partlyInitialized());
683 execute(tc_record_TR_HO72813_omit());