OneM2M_Testcases_AE_Release_1.ttcn 103 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13
/**
 *  Copyright Notification
 *  No part of this document may be reproduced, in an electronic retrieval system or otherwise, except as authorized by written permission.
 *  The copyright and the foregoing restriction extend to reproduction in all media.
 *  © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).
 *  All rights reserved.
 *  
 *  @author     ETSI
 *  @version    $URL: https://oldforge.etsi.org/svn/oneM2M/branches/Release1/ttcn/OneM2M_Testcases.ttcn $
 *              $Id: OneM2M_Testcases.ttcn 347 2017-08-11 08:48:20Z reinaortega $
 *  @desc       Module containing test cases for oneM2M
 *
 */
14
module OneM2M_Testcases_AE_Release_1 {
15 16 17 18 19 20 21 22 23

	import from OneM2M_TestSystem all;
	import from OneM2M_Templates all;
	import from OneM2M_Types all;//{type XSD.ID};
	import from OneM2M_TypesAndValues all;
	import from OneM2M_Pixits all;
	import from LibCommon_Time all;
	import from OneM2M_Pics all;
	import from OneM2M_Functions all;
24
	import from OneM2M_PermutationFunctions all;
25 26 27 28 29 30 31 32 33 34 35 36 37 38
	import from XSD all;

	group AE {
		
		group General {
			
			group Create {
						
				group g_AE_GEN_CRE_001 {
							
					/**
					 * @desc  Check that the IUT sends the creation of a <container> resource using unstructured resource identifier
					 */
		
39
					testcase TC_AE_GEN_CRE_001_CSR() runs on Tester system AeSystem {
40
						
41
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
42 43
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
44
												
45 46
						// Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
47
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
48 49 50
							stop;
						}
						
51 52
						v_cse1.start(f_AE_GEN_CRE_001(e_cseRelative));
						v_cse1.done;
53 54
					}
					
55 56 57
					testcase TC_AE_GEN_CRE_001_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
58 59
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
60 61 62
												
						// Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
63
							setverdict(inconc, __SCOPE__ & ": Unstructured-SP-Relative-Resource-ID format support is required to run this test case");
64 65 66
							stop;
						}
						
67 68
						v_cse1.start(f_AE_GEN_CRE_001(e_spRelative));
						v_cse1.done;
69 70
					}
					
71 72 73
					testcase TC_AE_GEN_CRE_001_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
74 75
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
76 77 78
						
						// Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
79
							setverdict(inconc, __SCOPE__ & ": Unstructured-Absolute-Resource-ID format support is required to run this test case");
80 81
							stop;
						}
82 83
						v_cse1.start(f_AE_GEN_CRE_001(e_absolute));
						v_cse1.done;
84 85
					}
					
86
				}//end group g_AE_GEN_CRE_002
87 88 89 90 91 92 93
						
				group g_AE_GEN_CRE_002 {
							
					/**
					 * @desc  Check that the IUT sends the creation of a <container> resource using structured resource identifier
					 */

94 95 96
					testcase TC_AE_GEN_CRE_002_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
97 98
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
99 100
						
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
101
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
102 103 104
							stop;
						}
						
105 106
						v_cse1.start(f_AE_GEN_CRE_002(e_cseRelative));
						v_cse1.done;
107 108
					}

109 110 111
					testcase TC_AE_GEN_CRE_002_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
112 113
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
114 115
						
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
116
							setverdict(inconc, __SCOPE__ & ": Structured-SP-Relative-Resource-ID format support is required to run this test case");
117 118 119
							stop;
						}
						
120 121
						v_cse1.start(f_AE_GEN_CRE_002(e_spRelative));
						v_cse1.done;
122 123
					}

124 125 126
					testcase TC_AE_GEN_CRE_002_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
127 128
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
129 130
						
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
131
							setverdict(inconc, __SCOPE__ & ": Structured-Absolute-Resource-ID format support is required to run this test case");
132 133 134
							stop;
						}
						
135 136
						v_cse1.start(f_AE_GEN_CRE_002(e_absolute));
						v_cse1.done;
137 138 139 140 141 142 143 144 145 146 147 148 149 150
					}

				} //end group g_AE_GEN_CRE_002
				
			} //end group Create
			
			group Update {
						
				group g_AE_GEN_UPD_001 {
							
					/**
					 * @desc  Check that the IUT sends the update of a <container>  resource using unstructured resource identifier
					 */
		
151 152 153
					testcase TC_AE_GEN_UPD_001_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
154 155
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
156 157 158
						
						// Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
159
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
160 161 162
							stop;
						}
						
163 164
						v_cse1.start(f_AE_GEN_UPD_001(e_cseRelative));
						v_cse1.done;
165 166
					}
					
167 168 169
					testcase TC_AE_GEN_UPD_001_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
170 171
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
172 173 174
						
					//Test control
					if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
175
						setverdict(inconc, __SCOPE__ & ": Unstructured-SP-Relative-Resource-ID format support is required to run this test case");
176 177 178
						stop;
					}
						
179 180
						v_cse1.start(f_AE_GEN_UPD_001(e_spRelative));
						v_cse1.done;
181 182
					}
					
183 184 185
					testcase TC_AE_GEN_UPD_001_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
186 187
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
188 189 190
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
191
							setverdict(inconc, __SCOPE__ & ": Unstructured-Absolute-Resource-ID format support is required to run this test case");
192 193 194
							stop;
						}
						
195 196
						v_cse1.start(f_AE_GEN_UPD_001(e_absolute));
						v_cse1.done;
197 198 199 200 201 202 203 204 205 206
					}
					
				}//end group g_AE_GEN_UPD_001
					
				group g_AE_GEN_UPD_002 {
							
					/**
					 * @desc  Check that the IUT sends the update of a <container>  resource using structured resource identifier
					 */

207 208 209
					testcase TC_AE_GEN_UPD_002_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
210 211
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
212 213 214
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
215
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
216 217 218
							stop;
						}
						
219 220
						v_cse1.start(f_AE_GEN_UPD_002(e_cseRelative));
						v_cse1.done;
221 222
					}

223 224 225
					testcase TC_AE_GEN_UPD_002_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
226 227
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
228 229 230
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
231
							setverdict(inconc, __SCOPE__ & ": Structured-SP-Relative-Resource-ID format support is required to run this test case");
232 233 234
							stop;
						}
						
235 236
						v_cse1.start(f_AE_GEN_UPD_002(e_spRelative));
						v_cse1.done;
237 238
					}

239 240 241
					testcase TC_AE_GEN_UPD_002_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
242 243
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
244 245 246
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
247
							setverdict(inconc, __SCOPE__ & ": Structured-Absolute-Resource-ID format support is required to run this test case");
248 249 250
							stop;
						}
						
251 252
						v_cse1.start(f_AE_GEN_UPD_002(e_absolute));
						v_cse1.done;
253 254 255 256 257 258 259 260 261 262 263 264 265 266
					}

				} //end group g_AE_GEN_UPD_002
				
			} //end group Update
			
			group Retrieve {
						
				group g_AE_GEN_RET_001 {
				
					/**
					 * @desc  Check that the IUT sends the retrieval of a <container>  resource using unstructured resource identifier
					 */

267 268 269
					testcase TC_AE_GEN_RET_001_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
270 271
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
272 273 274
						
						// Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
275
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
276 277 278
							stop;
						}
						
279 280
						v_cse1.start(f_AE_GEN_RET_001(e_cseRelative));
						v_cse1.done;
281 282
					}
		
283 284 285
					testcase TC_AE_GEN_RET_001_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
286 287
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
288 289 290
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
291
							setverdict(inconc, __SCOPE__ & ": Unstructured-SP-Relative-Resource-ID format support is required to run this test case");
292 293 294
							stop;
						}
						
295 296
						v_cse1.start(f_AE_GEN_RET_001(e_spRelative));
						v_cse1.done;
297 298
					}
		
299 300 301
					testcase TC_AE_GEN_RET_001_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
302 303
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
304 305 306
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
307
							setverdict(inconc, __SCOPE__ & ": Unstructured-Absolute-Resource-ID format support is required to run this test case");
308 309 310
							stop;
						}
						
311 312
						v_cse1.start(f_AE_GEN_RET_001(e_absolute));
						v_cse1.done;
313 314 315 316 317 318 319 320 321 322
					}
		
				}//end group g_AE_GEN_RET_001
		
				group g_AE_GEN_RET_002 {
				
					/**
					 * @desc  Check that the IUT sends the retrieval of a <container>  resource using structured resource identifier
					 */

323 324 325
					testcase TC_AE_GEN_RET_002_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
326 327
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
328 329 330
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
331
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
332 333 334
							stop;
						}
						
335 336
						v_cse1.start(f_AE_GEN_RET_002(e_cseRelative));
						v_cse1.done;
337 338
					}

339 340 341
					testcase TC_AE_GEN_RET_002_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
342 343
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
344 345 346
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
347
							setverdict(inconc, __SCOPE__ & ": Structured-SP-Relative-Resource-ID format support is required to run this test case");
348 349 350
							stop;
						}
						
351 352
						v_cse1.start(f_AE_GEN_RET_002(e_spRelative));
						v_cse1.done;
353 354
					}

355 356 357
					testcase TC_AE_GEN_RET_002_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
358 359
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
360 361 362
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
363
							setverdict(inconc, __SCOPE__ & ": Structured-Absolute-Resource-ID format support is required to run this test case");
364 365 366
							stop;
						}
						
367 368
						v_cse1.start(f_AE_GEN_RET_002(e_absolute));
						v_cse1.done;
369 370 371 372 373 374 375 376 377 378 379 380 381 382
					}

				} //end group g_AE_GEN_RET_002
	
			} //end group Retrieve
						
			group Delete {
						
				group g_AE_GEN_DEL_001 {
				
					/**
					 * @desc  Check that the IUT sends the deletion of a <container>  resource using unstructured resource identifier
					 */

383 384 385
					testcase TC_AE_GEN_DEL_001_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
386 387
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
388 389 390
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
391
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
392 393 394
							stop;
						}
						
395 396
						v_cse1.start(f_AE_GEN_DEL_001(e_cseRelative));
						v_cse1.done;
397 398
					}
		
399 400 401
					testcase TC_AE_GEN_DEL_001_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
402 403
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
404 405 406
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
407
							setverdict(inconc, __SCOPE__ & ": Unstructured-SP-Relative-Resource-ID format support is required to run this test case");
408 409 410
							stop;
						}
						
411 412
						v_cse1.start(f_AE_GEN_DEL_001(e_spRelative));
						v_cse1.done;
413 414
					}
		
415 416 417
					testcase TC_AE_GEN_DEL_001_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
418 419
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
420 421 422
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
423
							setverdict(inconc, __SCOPE__ & ": Unstructured-Absolute-Resource-ID format support is required to run this test case");
424 425 426
							stop;
						}
						
427 428
						v_cse1.start(f_AE_GEN_DEL_001(e_absolute));
						v_cse1.done;
429 430 431 432 433 434 435 436 437 438
					}
		
				}//end group g_AE_GEN_DEL_001
		
				group g_AE_GEN_DEL_002 {
				
					/**
					 * @desc  Check that the IUT sends the deletion of a <container>  resource using structured resource identifier
					 */

439 440 441
					testcase TC_AE_GEN_DEL_002_CSR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
442 443
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
444 445 446
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_CSE_RELATIVE)) {
447
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
448 449 450
							stop;
						}
						
451 452
						v_cse1.start(f_AE_GEN_DEL_002(e_cseRelative));
						v_cse1.done;
453 454
					}

455 456 457
					testcase TC_AE_GEN_DEL_002_SPR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
458 459
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
460 461 462
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_SP_RELATIVE)) {
463
							setverdict(inconc, __SCOPE__ & ": Structured-SP-Relative-Resource-ID format support is required to run this test case");
464 465 466
							stop;
						}
						
467 468
						v_cse1.start(f_AE_GEN_DEL_002(e_spRelative));
						v_cse1.done;
469 470
					}

471 472 473
					testcase TC_AE_GEN_DEL_002_ABS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
474 475
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
476 477 478
						
						//Test control
						if(not(PICS_PRIMITIVE_SCOPE_ABSOLUTE)) {
479
							setverdict(inconc, __SCOPE__ & ": Structured-Absolute-Resource-ID format support is required to run this test case");
480 481 482
							stop;
						}
						
483 484
						v_cse1.start(f_AE_GEN_DEL_002(e_absolute));
						v_cse1.done;
485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500
					}

				} //end group g_AE_GEN_DEL_002
	
			} //end group Delete
			
		}//end group General

		group Registration {
			
			group Create {
						
				/**
				 * @desc  Check that the IUT sends an AE initial registration request with no AE-ID-STEM provided when it is started
				 */

501 502 503
				testcase TC_AE_REG_CRE_001() runs on Tester system AeSystem {
						
					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
504 505
					v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
					v_cse1.done;
506 507 508 509 510 511 512
					
					v_cse1.start(f_AE_REG_CRE_001());
					
					v_cse1.done;
				}
					
				function f_AE_REG_CRE_001() runs on CseSimu {
513 514

					//primitives for utPort
515
					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
516 517 518
					var integer v_parentIndex := -1;
					var integer v_resourceIndex := -1;
					var PrimitiveContent v_resource;
519

520
					//primitives for mcaPortIn
521
					var MsgIn v_request;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
522
					var template RequestPrimitive v_requestPrimitive := mw_createAe;
523
					var ResponsePrimitive v_responsePrimitive;
524
					var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request";
525 526 527 528

					f_cf03Up();
				
					//Send Trigger Message
529 530
					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(-, -, -);
					v_requestPrimitive.to_ := v_utRequest.requestPrimitive.to_;
531
					f_sendUtPrimitive(v_utRequest, v_action & f_getLocalResourceAddress(-, -, -));
532 533 534 535

					//Test behavior
					tc_ac.start;
					alt{
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
536
						[] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request {
537
							tc_ac.stop;
538
							setverdict(pass, __SCOPE__ & " : AE registration request is accepted!!");
539
							v_resourceIndex := f_processCreateRequestPrimitive(v_request.primitive.requestPrimitive);	
540 541
							
							//send back responsePrimitive
542
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(vc_response.primitive.responsePrimitive)));
543
						}
544
						[] mcaPortIn.receive(mw_request(mw_createAe())) -> value v_request {
545
							tc_ac.stop;
546
							setverdict(fail, __SCOPE__ & " : Unexpected AE registration request");
547
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))));
548 549
						}
						[] tc_ac.timeout{
550
							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
551 552 553 554 555 556 557 558 559 560 561 562 563 564
						}
	
					}
	
					// Postamble
					f_cf03Down();
				}
				
				/**
				 * @desc  Check that the IUT sends a registration CREATE Request with the value of the attribute ATTRIBUTE_NAME  of the AE resource
				 */
				
				group g_AE_REG_CRE_002 {
				
565 566 567
					testcase TC_AE_REG_CRE_002_RN() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
568
						//primitives for utPort
569
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
570
						var template RequestPrimitive v_createAe := mw_createAe;
571
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute ResourceName";
572 573
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
574
						v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
575
						v_createAe.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
576 577
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
578 579
					}
	
580 581 582
					testcase TC_AE_REG_CRE_002_ET() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
583
						//primitives for utPort
584
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
585
						var template RequestPrimitive v_createAe := mw_createAe;
586
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute ExpirationTime";
587 588
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
589 590 591
						v_utRequest.requestPrimitive.primitiveContent.aE.expirationTime := "20301231T012345";
						v_utRequest.forcedFields := {{name := "expirationTime", value_ := "UNINITIALIZED"}};
						v_createAe.primitiveContent.aE.expirationTime := ?;//Check value other than "UNINITIALIZED", done by typing
592 593
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
594 595
					}
	
596 597 598
					testcase TC_AE_REG_CRE_002_LBL() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
599
						//primitives for utPort
600
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
601
						var template RequestPrimitive v_createAe := mw_createAe;
602
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute Labels";
603 604
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
605
						v_utRequest.requestPrimitive.primitiveContent.aE.labels := {"UNINITIALIZED"};
606
						v_createAe.primitiveContent.aE.labels := complement({*,"UNINITIALIZED",*});
607 608
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
609 610
					}
	
611 612 613
					testcase TC_AE_REG_CRE_002_APN() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
614
						//primitives for utPort
615
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
616
						var template RequestPrimitive v_createAe := mw_createAe;
617
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute AppName";
618 619
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
620
						v_utRequest.requestPrimitive.primitiveContent.aE.appName := "UNINITIALIZED";
621
						v_createAe.primitiveContent.aE.appName := complement("UNINITIALIZED");
622 623
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
624 625
					}
	
626 627 628
					testcase TC_AE_REG_CRE_002_API() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
629
						//primitives for utPort
630
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
631
						var template RequestPrimitive v_createAe := mw_createAe;
632
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute AppID";
633 634
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
635
						v_utRequest.requestPrimitive.primitiveContent.aE.app_ID := "UNINITIALIZED";
636
						v_createAe.primitiveContent.aE.app_ID := complement("UNINITIALIZED");
637 638
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
639 640
					}
	
641 642 643
					testcase TC_AE_REG_CRE_002_POA() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
644
						//primitives for utPort
645
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
646
						var template RequestPrimitive v_createAe := mw_createAe;
647
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute PointOfAccess";
648 649
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
650
						v_utRequest.requestPrimitive.primitiveContent.aE.pointOfAccess := {"UNINITIALIZED"};
651
						v_createAe.primitiveContent.aE.pointOfAccess := complement({*,"UNINITIALIZED",*});
652 653
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
654 655
					}
	
656 657 658
					testcase TC_AE_REG_CRE_002_OR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
659
						//primitives for utPort
660
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
661
						var template RequestPrimitive v_createAe := mw_createAe;
662
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute OntologyRef";
663 664
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
665
						v_utRequest.requestPrimitive.primitiveContent.aE.ontologyRef := "UNINITIALIZED";
666
						v_createAe.primitiveContent.aE.ontologyRef := complement("UNINITIALIZED");
667 668
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
669 670
					}
	
671 672 673
					testcase TC_AE_REG_CRE_002_NL() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
674
						//primitives for utPort
675
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
676
						var template RequestPrimitive v_createAe := mw_createAe;
677
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute NodeLink";
678 679
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
680
						v_utRequest.requestPrimitive.primitiveContent.aE.nodeLink := "UNINITIALIZED";
681
						v_createAe.primitiveContent.aE.nodeLink := complement("UNINITIALIZED");
682 683
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
684 685
					}
	
686 687 688
					testcase TC_AE_REG_CRE_002_RR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
689
						//primitives for utPort
690
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
691
						var template RequestPrimitive v_createAe := mw_createAe;
692
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute RequestReachability";
693 694
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
695 696 697
						v_utRequest.requestPrimitive.primitiveContent.aE.requestReachability := true;
						v_utRequest.forcedFields := {{name := "requestReachability", value_ := "UNINITIALIZED"}};
						v_createAe.primitiveContent.aE.requestReachability := ?;//Check value other than UNINITIALIZED, done by typing
698 699
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
700 701
					}
	
702 703 704
					testcase TC_AE_REG_CRE_002_CSZ() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
705
						//primitives for utPort
706
						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
707
						var template RequestPrimitive v_createAe := mw_createAe;
708
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute ContentSerialization";
709 710
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
711 712 713
						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {applicationxml};
						v_utRequest.forcedFields := {{name := "contentSerialization", value_ := "UNINITIALIZED"}};
						v_createAe.primitiveContent.aE.contentSerialization := ?;//Check value other than UNINITIALIZED, done by typing
714 715
						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
						v_cse1.done;
716 717 718 719 720 721 722 723 724 725 726 727
					}
	
				}//End of subgroup AE_REG_CRE_002
				
			} // End of subgroup Create
			
			group Delete {
			
			/**
				 * @desc Check that the IUT sends AE deregistration request to CSE
				 */
	
728 729 730
				testcase TC_AE_REG_DEL_001() runs on Tester system AeSystem {
						
					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
731 732
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
733 734 735 736 737 738 739 740
					
					v_cse1.start(f_AE_REG_DEL_001());
					
					v_cse1.done;
					
				}
					
				function f_AE_REG_DEL_001() runs on CseSimu {
741 742 743
	
					//variables
					var MsgIn v_request;
744
					var ResponsePrimitive v_responsePrimitive;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
745 746
					var PrimitiveContent v_localResource;
					var integer v_auxInteger := -1;
747
					var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE DELETE Registration Request";
748 749
					
					//primitives for utPort
750
					var template UtTriggerPrimitive v_utRequest := m_utDelete;
751 752 753
	
					f_cf03Up();
	
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
754
					v_localResource := f_generateLocalResource(valueof(m_primitiveContentAe(m_contentCreateAe(omit, -, -, omit))), vc_cSEBaseIndex, int2);
755
					v_auxInteger := f_setLocalResource(v_localResource, int2, vc_cSEBaseIndex);
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
756
					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger, -, -);
757
					f_sendUtPrimitive(v_utRequest,v_action & f_getLocalResourceAddress(v_auxInteger, -, -));
758 759 760 761
	
					//Test behavior
					tc_ac.start;
					alt{
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
762
						[] mcaPortIn.receive(mw_request(mw_delete(v_utRequest.requestPrimitive.to_))) -> value v_request {
763
							tc_ac.stop;
764
							setverdict(pass, __SCOPE__ & " : AE deregistration request is accepted!");
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
765
							v_responsePrimitive := valueof(m_responsePrimitive(int2002, v_request.primitive.requestPrimitive.requestIdentifier, omit));
766 767
	
							//send back responsePrimitive
768
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(v_responsePrimitive)));
769
						}
770
						[] mcaPortIn.receive (mw_request(mw_delete(?)))  {
771
							tc_ac.stop;
772
							setverdict(fail, __SCOPE__ & " : Unexpected DELETE request");
773
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))));
774 775
						}
						[] tc_ac.timeout{
776
							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795
						}
	
					}
					// Postamble
					f_cf03Down();
				}
			
			}// End Delete subgroup

		}//end Registration subgroup

		group Data_Management_and_Repository {
			
			group Create {
			
				/**
				 * @desc Check that the IUT sends a Container creation request when it is triggered
				 */
			
796 797 798
				testcase TC_AE_DMR_CRE_001() runs on Tester system AeSystem {
						
					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
799 800
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
801 802 803 804 805 806 807
					
					v_cse1.start(f_AE_DMR_CRE_001());
					
					v_cse1.done;
				}

				function f_AE_DMR_CRE_001() runs on CseSimu {
808 809 810 811
	
					//variables
					var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
					var MsgIn v_request;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
812
					var integer v_resourceIndex := -1;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
813
					var template RequestPrimitive v_requestPrimitive := mw_createContainer;
814
					var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for container to ";
815 816 817
					
					f_cf03Up();
	
818
					//send triggering primitive to SUT
819 820
					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(-, -, -);
					v_requestPrimitive.to_ := v_utRequest.requestPrimitive.to_;
821
					f_sendUtPrimitive(v_utRequest,v_action & f_getLocalResourceAddress(-, -, -));
822 823 824 825
					
					//Test behavior
					tc_ac.start;
					alt{
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
826
						[] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request {
827
							tc_ac.stop;
828
							setverdict(pass, __SCOPE__ & " : Container creation request is accepted!");
829
							v_resourceIndex := f_processCreateRequestPrimitive(v_request.primitive.requestPrimitive);	
830
							//send back responsePrimitive
831
							mcaPortIn.send(f_getMsgOutPrimitive(f_getMsgOutPrimitive(m_response(vc_response.primitive.responsePrimitive))));
832
						}
833
						[] mcaPortIn.receive(mw_request(mw_create)) -> value v_request{
834
							tc_ac.stop;
835
							setverdict(fail, __SCOPE__ & " : Unexpected CREATE request ");
836
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))));
837 838
						}
						[] tc_ac.timeout{
839
							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
840 841 842 843 844 845 846 847 848 849
						}
					}
	
					// Postamble
					f_cf03Down();
				}
				
				/**
				 * @desc Check that the IUT sends a ContentInstance creation request when it is triggered
				 */
850 851 852
				testcase TC_AE_DMR_CRE_002() runs on Tester system AeSystem {
						
					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
853 854
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
855 856 857 858 859 860 861
					
					v_cse1.start(f_AE_DMR_CRE_002());
					
					v_cse1.done;
				}

				function f_AE_DMR_CRE_002() runs on CseSimu {
862 863 864
	
					var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
					var MsgIn v_request;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
865
					var integer v_resourceIndex := -1;
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
866 867 868
					var PrimitiveContent v_localResource;
					var integer v_containerIndex := -1;
					var template RequestPrimitive v_requestPrimitive := mw_createContentInstance;
869
					var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance to ";
870 871 872 873
	
					//Test component configuration
					f_cf03Up();
	
874
					//send triggering primitive to SUT
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
875
					v_localResource := f_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3);
876
					v_containerIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex);
877 878
					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_containerIndex, -, -);
					v_requestPrimitive.to_ := v_utRequest.requestPrimitive.to_;
879
					f_sendUtPrimitive(v_utRequest,v_action & f_getLocalResourceAddress(v_containerIndex, -, -));
880 881 882 883 884 885
	
					//Test behavior
					tc_ac.start;
					alt{
	
						//receive MsgIn requestPrimitive
Miguel Angel Reina Ortega's avatar
Miguel Angel Reina Ortega committed
886
						[] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request {
887
							tc_ac.stop;
888
							setverdict(pass, __SCOPE__ & " : ContentInstance creation request is accepted!!");
889
							v_resourceIndex := f_processCreateRequestPrimitive(v_request.primitive.requestPrimitive);	
890
							//send back responsePrimitive
891
							mcaPortIn.send(f_getMsgOutPrimitive(f_getMsgOutPrimitive(m_response(vc_response.primitive.responsePrimitive))));
892
						}
893
						[] mcaPortIn.receive(mw_request(mw_create)) -> value v_request {
894
							tc_ac.stop;
895
							setverdict(fail, __SCOPE__ & " : Unexpected CREATE request ");
896
							mcaPortIn.send(f_getMsgOutPrimitive(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))));
897 898
						}
						[] tc_ac.timeout{
899
							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
900 901 902 903 904 905 906 907
						}
					}
					
					// Postamble
					f_cf03Down();
				}
				
				/**
908
				 * @desc Check that the IUT sends a ContentInstance creation request with optional attribute ATTRIBUTE_NAME
909 910 911 912
				 */
				 
				 group g_AE_DMR_CRE_003 {
				 
913 914 915
					testcase TC_AE_DMR_CRE_003_CNF() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
916 917
						var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
						var template RequestPrimitive v_request := mw_createContentInstance;
918
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance containing attribute ContentInfo to ";
919 920
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
921
						v_utRequest.requestPrimitive.primitiveContent.contentInstance.contentInfo := "UNINITIALIZED";
922
						v_request.primitiveContent.contentInstance.contentInfo := complement("UNINITIALIZED");
923 924
						v_cse1.start(f_AE_DMR_CRE_003(v_utRequest,v_request,v_action));
						v_cse1.done;
925 926
					}
					
927 928 929
					testcase TC_AE_DMR_CRE_003_RN() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
930 931
						var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
						var template RequestPrimitive v_request := mw_createContentInstance;
932
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance containing attribute ResourceName to ";
933 934
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
935
						v_utRequest.requestPrimitive.primitiveContent.contentInstance.resourceName := "UNINITIALIZED";
936
						v_request.primitiveContent.contentInstance.resourceName := complement("UNINITIALIZED");
937 938
						v_cse1.start(f_AE_DMR_CRE_003(v_utRequest,v_request,v_action));
						v_cse1.done;
939 940
					}
					
941 942 943
					testcase TC_AE_DMR_CRE_003_ET() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
944 945
						var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
						var template RequestPrimitive v_request := mw_createContentInstance;
946
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance containing attribute ExpirationTime to";
947 948
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
949 950 951
						v_utRequest.requestPrimitive.primitiveContent.contentInstance.expirationTime := "20301231T012345";
						v_utRequest.forcedFields := {{name := "expirationTime", value_ := "UNINITIALIZED"}};
						v_request.primitiveContent.contentInstance.expirationTime := ?;//Check value other than "UNINITIALIZED", done by typing
952 953
						v_cse1.start(f_AE_DMR_CRE_003(v_utRequest,v_request,v_action));
						v_cse1.done;
954 955
					}
					
956 957 958
					testcase TC_AE_DMR_CRE_003_LBL() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
959 960
						var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
						var template RequestPrimitive v_request := mw_createContentInstance;
961
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance containing attribute Labels to ";
962 963
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
964
						v_utRequest.requestPrimitive.primitiveContent.contentInstance.labels := {"UNINITIALIZED"};
965
						v_request.primitiveContent.contentInstance.labels := complement({*,"UNINITIALIZED",*});
966 967
						v_cse1.start(f_AE_DMR_CRE_003(v_utRequest,v_request,v_action));
						v_cse1.done;
968 969
					}
					
970 971 972
					testcase TC_AE_DMR_CRE_003_CR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
973 974
						var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance;
						var template RequestPrimitive v_request := mw_createContentInstance;
975
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for ContentInstance containing attribute Creator to ";
976 977
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
978
						v_utRequest.requestPrimitive.primitiveContent.contentInstance.creator := "UNINITIALIZED";
979
						v_request.primitiveContent.contentInstance.creator := complement("UNINITIALIZED");
980 981
						v_cse1.start(f_AE_DMR_CRE_003(v_utRequest,v_request,v_action));
						v_cse1.done;
982 983 984 985 986 987 988 989 990 991 992 993
					}
	
				 }//End of subgroup AE_DMR_CRE_003
				 
				 
				 				
				/**
				 * @desc Check that the IUT sends a Container creation request with optional attribute ATTRIBUTE_NAME when it is triggered
				 */
				 
				 group g_AE_DMR_CRE_004 {
				 
994 995 996
					testcase TC_AE_DMR_CRE_004_ACPI() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
997 998
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
999
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute AccessControlPolicyIDs to";
1000 1001
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1002
						v_utRequest.requestPrimitive.primitiveContent.container.accessControlPolicyIDs := {"UNINITIALIZED"};
1003
						v_request.primitiveContent.container.accessControlPolicyIDs := complement({*,"UNINITIALIZED",*});
1004 1005
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1006 1007
					}
				 	
1008 1009 1010
					testcase TC_AE_DMR_CRE_004_MNI() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1011 1012
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1013
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute MaxNrOfInstances to ";
1014 1015
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1016 1017 1018
						v_utRequest.requestPrimitive.primitiveContent.container.maxNrOfInstances := 1;
						v_utRequest.forcedFields := {{name := "maxNrOfInstances", value_ := "UNINITIALIZED"}};
						v_request.primitiveContent.container.maxNrOfInstances := ?;//Check value other than "UNINITIALIZED", done by typing
1019 1020
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1021 1022
					}
				 	
1023 1024 1025
					testcase TC_AE_DMR_CRE_004_MBS() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1026 1027
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1028
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute MaxByteSize to ";
1029 1030
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1031 1032 1033
						v_utRequest.requestPrimitive.primitiveContent.container.maxByteSize := 1;
						v_utRequest.forcedFields := {{name := "maxByteSize", value_ := "UNINITIALIZED"}};
						v_request.primitiveContent.container.maxByteSize := ?;//Check value other than "UNINITIALIZED", done by typing
1034 1035
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1036 1037
					}
				 	
1038 1039 1040
					testcase TC_AE_DMR_CRE_004_MIA() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1041 1042
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1043
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute MaxInstanceAge to ";
1044 1045
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1046 1047 1048
						v_utRequest.requestPrimitive.primitiveContent.container.maxInstanceAge := 1;
						v_utRequest.forcedFields := {{name := "maxInstanceAge", value_ := "UNINITIALIZED"}};
						v_request.primitiveContent.container.maxInstanceAge := ?;//Check value other than "UNINITIALIZED", done by typing
1049 1050
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1051 1052
					}
				 	
1053 1054 1055
					testcase TC_AE_DMR_CRE_004_OR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1056 1057
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1058
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute OntologyRef to ";
1059 1060
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1061
						v_utRequest.requestPrimitive.primitiveContent.container.ontologyRef := "UNINITIALIZED";
1062
						v_request.primitiveContent.container.ontologyRef := complement("UNINITIALIZED");
1063 1064
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1065 1066
					}
					
1067 1068 1069
					testcase TC_AE_DMR_CRE_004_RN() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1070 1071
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1072
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute ResourceName to ";
1073 1074
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1075
						v_utRequest.requestPrimitive.primitiveContent.container.resourceName := "UNINITIALIZED";
1076
						v_request.primitiveContent.container.resourceName := complement("UNINITIALIZED");
1077 1078
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1079 1080
					}
					
1081 1082 1083
					testcase TC_AE_DMR_CRE_004_ET() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1084 1085
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1086
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute ExpirationTime to ";
1087 1088
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1089 1090 1091
						v_utRequest.requestPrimitive.primitiveContent.container.expirationTime := "20301231T012345";
						v_utRequest.forcedFields := {{name := "expirationTime", value_ := "UNINITIALIZED"}};
						v_request.primitiveContent.container.expirationTime := ?;//Check value other than "UNINITIALIZED", done by typing
1092 1093
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1094 1095
					}
					
1096 1097 1098
					testcase TC_AE_DMR_CRE_004_LBL() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1099 1100
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1101
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute Labels to ";
1102 1103
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1104
						v_utRequest.requestPrimitive.primitiveContent.container.labels := {"UNINITIALIZED"};
1105
						v_request.primitiveContent.container.labels := complement({*,"UNINITIALIZED",*});
1106 1107
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1108 1109
					}
					
1110 1111 1112
					testcase TC_AE_DMR_CRE_004_CR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1113 1114
						var template UtTriggerPrimitive v_utRequest := m_utCreateContainer;
						var template RequestPrimitive v_request := mw_createContainer;
1115
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for Container containing attribute Creator to ";
1116 1117
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1118
						v_utRequest.requestPrimitive.primitiveContent.container.creator := "UNINITIALIZED";
1119
						v_request.primitiveContent.container.creator := complement("UNINITIALIZED");
1120 1121
						v_cse1.start(f_AE_DMR_CRE_004(v_utRequest,v_request,v_action));
						v_cse1.done;
1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135
					}
	
				 }//End of subgroup AE_DMR_CRE_004
				 
			}//End of subgroup Create
			
			group Update {
				
				group g_AE_DMR_UPD_001 {
					
					/**
					 * @desc Check that the IUT sends an UPDATE Request with the value of the attribute ATTRIBUTE_NAME of the AE resource 
					 */
	
1136 1137
					testcase TC_AE_DMR_UPD_001_ET() runs on Tester system AeSystem {
						
1138
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1139
						
1140
						var template RequestPrimitive v_expectedUpdateRequestAe;
1141
						var universal charstring v_action := "Please, send a valid UPDATE Request for AE updating attribute expirationTime to ";
1142
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1143
						
1144 1145
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1146
						v_utRequest.requestPrimitive.primitiveContent.aE.expirationTime := "20301231T012345";
1147
						
1148 1149 1150
						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
						v_expectedUpdateRequestAe.primitiveContent.aE.expirationTime := ?;
												
1151 1152
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest, v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1153 1154
					}
					
1155 1156
					testcase TC_AE_DMR_UPD_001_LBL() runs on Tester system AeSystem {
						
1157
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1158
						var template RequestPrimitive v_expectedUpdateRequestAe;
1159
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1160
						var universal charstring v_action := "Please, send a valid UPDATE Request for AE updating attribute labels to ";
1161
						
1162 1163
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1164
						v_utRequest.requestPrimitive.primitiveContent.aE.labels := {"UNINITIALIZED"};
1165
						
1166
						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1167
						v_expectedUpdateRequestAe.primitiveContent.aE.labels := complement({*,"UNINITIALIZED",*});
1168 1169
					   
						
1170 1171
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1172 1173
					}
	
1174 1175 1176
					testcase TC_AE_DMR_UPD_001_APN() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1177
						
1178
						var template RequestPrimitive v_expectedUpdateRequestAe;
1179
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1180
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute appName to ";
1181
						
1182 1183
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1184
						v_utRequest.requestPrimitive.primitiveContent.aE.appName := "UNINITIALIZED";
1185 1186

						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1187
						v_expectedUpdateRequestAe.primitiveContent.aE.appName := complement("UNINITIALIZED");
1188
						
1189 1190
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1191 1192
					}
	
1193 1194 1195
					testcase TC_AE_DMR_UPD_001_POA() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1196
						
1197
						var template RequestPrimitive v_expectedUpdateRequestAe;
1198
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1199
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute pointOfAccess to ";
1200
						
1201 1202
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1203
						v_utRequest.requestPrimitive.primitiveContent.aE.pointOfAccess := {"UNINITIALIZED"};
1204 1205

						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1206
						v_expectedUpdateRequestAe.primitiveContent.aE.pointOfAccess := complement({*,"UNINITIALIZED", *});
1207
						
1208 1209
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1210 1211
					}
	
1212 1213 1214
					testcase TC_AE_DMR_UPD_001_OR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1215
						
1216
						var template RequestPrimitive v_expectedUpdateRequestAe;
1217
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1218
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute ontologyRef to ";
1219 1220
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1221
						v_utRequest.requestPrimitive.primitiveContent.aE.ontologyRef := "UNINITIALIZED";
1222 1223

						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1224
						v_expectedUpdateRequestAe.primitiveContent.aE.ontologyRef := complement("UNINITIALIZED");
1225
						
1226 1227
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1228 1229
					}
	
1230 1231 1232
					testcase TC_AE_DMR_UPD_001_NL() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1233
						
1234
						var template RequestPrimitive v_expectedUpdateRequestAe;
1235
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1236
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute nodeLink to ";
1237 1238
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1239
						v_utRequest.requestPrimitive.primitiveContent.aE.nodeLink := "UNINITIALIZED";
1240 1241

						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1242
						v_expectedUpdateRequestAe.primitiveContent.aE.nodeLink := complement("UNINITIALIZED");
1243
						
1244 1245
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1246 1247
					}
	
1248 1249 1250
					testcase TC_AE_DMR_UPD_001_RR() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1251
						var template RequestPrimitive v_expectedUpdateRequestAe;
1252
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1253
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute requestReachability to ";
1254 1255
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1256 1257 1258
						v_utRequest.requestPrimitive.primitiveContent.aE.requestReachability := true;
						v_utRequest.forcedFields := {{name := "requestReachability", value_ := "UNINITIALIZED"}};
						
1259
						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1260
						v_expectedUpdateRequestAe.primitiveContent.aE.requestReachability := ?;//Check value other than "UNINITIALIZED", done by typing
1261
						
1262 1263
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));
						v_cse1.done;
1264 1265
					}
	
1266 1267 1268
					testcase TC_AE_DMR_UPD_001_CSZ() runs on Tester system AeSystem {
						
						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
1269
						var template RequestPrimitive v_expectedUpdateRequestAe;
1270
						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
1271
						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute contentSerialization to ";
1272 1273
						v_cse1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_CSE1));
						v_cse1.done;
1274 1275 1276
						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {applicationxml};
						v_utRequest.forcedFields := {{name := "contentSerialization", value_ := "UNINITIALIZED"}};
						
1277
						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentAeUpdateRequest;
1278
						v_expectedUpdateRequestAe.primitiveContent.aE.contentSerialization := ?;//Check value other than "UNINITIALIZED", done by typing
1279
						
1280 1281
						v_cse1.start(f_AE_DMR_UPD_001(v_utRequest,v_action, v_expectedUpdateRequestAe));