OneM2M_Testcases.ttcn 742 KB
Newer Older
1 2 3 4 5 6 7 8
/**
 *  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
9 10
 *  @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 $
11 12 13 14 15 16 17 18 19 20
 *  @desc       Module containing test cases for oneM2M
 *
 */
module OneM2M_Testcases {

	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;
21
	import from OneM2M_Pics all;
22 23 24
	import from OneM2M_Functions all;
	import from XSD all;
	
25
	
26 27 28
	//Demos used for validation purposes
	group oneM2M_demos {
	
29
		group helpingTestCases {//These are not part of the test suite, just for verification purposes
30
			
31
			testcase TC_DELETE_RESOURCES() runs on CseTester system CseSystem {
32 33 34
				
				timer t_ac := 5.0;
				var integer i; 
35 36
				var XSD.ID v_resourceAddress;
				var RequestPrimitive v_request;
37 38 39
				map(self:mcaPort, system:mcaPort); 
					
				for (i:=0; i<lengthof(PX_RESOURCES_TO_BE_DELETED); i:= i+1) {  
40 41 42 43 44 45 46
					
					v_resourceAddress := f_getResourceAddress() & "/" & PX_RESOURCES_TO_BE_DELETED[i]; 
						
					v_request := valueof(m_deleteRequest(v_resourceAddress));
    
					mcaPort.send(m_request(v_request));
					
47 48
					t_ac.start;
					alt {
49
						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
50
							t_ac.stop;
51
							log(__SCOPE__ & ":Resource deleted");
52 53
							setverdict(pass);
						}
54
						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
55
							t_ac.stop;
56
							log(__SCOPE__ & ":Error while deleting resource");
57 58 59 60
							setverdict(fail);
						}
						[] mcaPort.receive {
							t_ac.stop;
61
							log(__SCOPE__ & ":Unexpected message received");
62 63 64
							setverdict(inconc);
						}
						[] t_ac.timeout {
65
							log(__SCOPE__ & ":No answer while deleting resource");
66 67 68 69 70 71 72 73 74
							setverdict(inconc);
						}	
					}	
				}
			
				unmap(self:mcaPort, system:mcaPort); 
				stop;
			}	
		
75
		}//end group helpingTestCases
76 77 78 79 80
	
	}//end group oneM2M_demos
	
	group CSE {
		
81 82 83 84 85 86 87 88 89 90 91 92 93
		group Generic {
			
			group Create {
				group g_CSE_GEN_CRE_001 {

					/**
					 * @desc Check that the IUT accepts the creation of a  resource using unstructured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_CRE_001_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_CRE_001(e_cseRelative);
94
					}
95 96 97 98 99

					testcase TC_CSE_GEN_CRE_001_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_CRE_001(e_spRelative);
100
					}
101 102 103 104 105
					
					testcase TC_CSE_GEN_CRE_001_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_CRE_001(e_absolute);
106 107
					}
								
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
					function f_CSE_GEN_CRE_001(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var RequestPrimitive v_request;
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
128
					
129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
					
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_nonHierarchical;
						vc_primitiveScope := p_primitiveScope;
						v_request := f_getCreateRequestPrimitive(int3, m_createContainerBase, v_resourceIndex);
						
						mcaPort.send(m_request(v_request));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource created using non-hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while creating container resource using non-hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while creating resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
					
						// Tear down
						f_cf01Down();
    				
					}//end f_CSE_GEN_CRE_001				
166
				
167 168 169 170
				
				} // end of group g_CSE_GEN_CRE_001
				
				group g_CSE_GEN_CRE_002 {
171

172 173 174 175 176 177 178 179
					/**
					 * @desc Check that the IUT accepts the creation of a  resource using structured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_CRE_002_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_CRE_002(e_cseRelative);
180
					}
181 182 183 184 185

					testcase TC_CSE_GEN_CRE_002_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_CRE_002(e_spRelative);
186
					}
187 188 189 190 191
					
					testcase TC_CSE_GEN_CRE_002_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_CRE_002(e_absolute);
192 193
					}
								
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213
					function f_CSE_GEN_CRE_002(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var RequestPrimitive v_request;
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
214
					
215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
					
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_hierarchical;
						vc_primitiveScope := p_primitiveScope;
						v_request := f_getCreateRequestPrimitive(int3, m_createContainerBase, v_resourceIndex);
						
						mcaPort.send(m_request(v_request));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource created using hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while creating container resource using hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while creating resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
					
						// Tear down
						f_cf01Down();
    				
					}//end f_CSE_GEN_CRE_002				
252 253
				
				
254
				} // end of group g_CSE_GEN_CRE_002
255
				
256 257 258 259 260 261 262 263 264 265 266 267 268
			} // end of group Create
			
			group Retrieve {
				group g_CSE_GEN_RET_001 {

					/**
					 * @desc Check that the IUT accepts the retrieval of a <container>  resource using unstructured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_RET_001_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_RET_001(e_cseRelative);
269
					}
270 271 272 273 274

					testcase TC_CSE_GEN_RET_001_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_RET_001(e_spRelative);
275
					}
276 277 278 279 280
					
					testcase TC_CSE_GEN_RET_001_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_RET_001(e_absolute);
281 282
					}
								
283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301
					function f_CSE_GEN_RET_001(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
302
					
303
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
304
					
305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_nonHierarchical;
						vc_primitiveScope := p_primitiveScope;
						
						mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex))));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource retrieved using non-hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while retrieving container resource using non-hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
334
					
335 336
						// Tear down
						f_cf01Down();
337
    				
338
					}//end f_CSE_GEN_RET_001				
339 340
				
				
341 342 343 344 345 346 347 348 349 350 351 352
				} // end of group g_CSE_GEN_RET_001
				
				group g_CSE_GEN_RET_002 {

					/**
					 * @desc Check that the IUT accepts the retrieval of a <container>  resource using structured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_RET_002_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_RET_002(e_cseRelative);
353
					}
354 355 356 357 358

					testcase TC_CSE_GEN_RET_002_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_RET_002(e_spRelative);
359
					}
360 361 362 363 364
					
					testcase TC_CSE_GEN_RET_002_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_RET_002(e_absolute);
365 366
					}
								
367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385
					function f_CSE_GEN_RET_002(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
386
					
387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
					
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_hierarchical;
						vc_primitiveScope := p_primitiveScope;
						
						mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex))));tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource retrieved using hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while retrieving container resource using hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
					
						// Tear down
						f_cf01Down();
    				
					}//end f_CSE_GEN_RET_002				
				
				} // end of group g_CSE_GEN_RET_002
				
			} // end of group Retrieve
426
			
427 428
			group Update {
				group g_CSE_GEN_UPD_001 {
429

430 431 432 433 434 435 436 437
					/**
					 * @desc Check that the IUT accepts the update of a <container>  resource using unstructured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_UPD_001_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_UPD_001(e_cseRelative);
438
					}
439 440 441 442 443

					testcase TC_CSE_GEN_UPD_001_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_UPD_001(e_spRelative);
444
					}
445 446 447 448 449
					
					testcase TC_CSE_GEN_UPD_001_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_UPD_001(e_absolute);
450 451
					}
								
452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471
					function f_CSE_GEN_UPD_001(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var RequestPrimitive v_updateRequest := valueof(m_updateContainerBase);
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
472
					
473
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
474
					
475 476 477 478
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_nonHierarchical;
						vc_primitiveScope := p_primitiveScope;
479
						
480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507
						v_updateRequest.primitiveContent.container.labels := {"MyLabel"};
						
						v_updateRequest := f_getUpdateRequestPrimitive(int3, v_resourceIndex, v_updateRequest);
						
						mcaPort.send(m_request(v_updateRequest));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource updated using non-hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while updating container resource using non-hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while updating resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
508
					
509 510 511 512
						// Tear down
						f_cf01Down();
    				
					}//end f_CSE_GEN_UPD_001				
513
				
514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532
				} // end of group g_CSE_GEN_UPD_001
				
				group g_CSE_GEN_UPD_002 {

					/**
					 * @desc Check that the IUT accepts the update of a <container>  resource using structured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_UPD_002_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_UPD_002(e_cseRelative);
					}

					testcase TC_CSE_GEN_UPD_002_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_UPD_002(e_spRelative);
					}
533
					
534
					testcase TC_CSE_GEN_UPD_002_ABS() runs on CseTester system CseSystem {
535
						// Local variables
536 537
							
						f_CSE_GEN_UPD_002(e_absolute);
538
					}
539 540
								
					function f_CSE_GEN_UPD_002(in PrimitiveScope p_primitiveScope) runs on CseTester {
541
    				
542 543 544 545 546 547 548 549 550 551
						// Local variables
						var RequestPrimitive v_updateRequest := valueof(m_updateContainerBase);
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
552
    				
553 554
						// Test component configuration
						f_cf01Up();
555
    				
556
						// Test adapter configuration
557
    				
558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
					
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
					
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_hierarchical;
						vc_primitiveScope := p_primitiveScope;
						
						v_updateRequest.primitiveContent.container.labels := {"MyLabel"};
						
						v_updateRequest := f_getUpdateRequestPrimitive(int3, v_resourceIndex, v_updateRequest);
						
						mcaPort.send(m_request(v_updateRequest));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource updated using hierarchical addressing method");
578
							}
579 580 581 582 583 584 585 586 587 588 589 590
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while updating container resource using hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while updating resource");
							}
						}	
591
    								
592 593 594 595
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
596
					
597 598
						// Tear down
						f_cf01Down();
599
    				
600 601 602 603 604 605
					}//end f_CSE_GEN_UPD_002				
				
				
				} // end of group g_CSE_GEN_UPD_002
				
			} // end of group Update
606
			
607 608
			group Delete {
				group g_CSE_GEN_DEL_001 {
609

610 611 612 613 614 615 616 617 618 619 620 621 622 623 624
					/**
					 * @desc Check that the IUT accepts the deletion of a <container>  resource using unstructured resource identifier
					 *  
					 */
					testcase TC_CSE_GEN_DEL_001_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_DEL_001(e_cseRelative);
					}

					testcase TC_CSE_GEN_DEL_001_SPR() runs on CseTester system CseSystem {
						// Local variables
						
						f_CSE_GEN_DEL_001(e_spRelative);
					}
625
					
626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651
					testcase TC_CSE_GEN_DEL_001_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_DEL_001(e_absolute);
					}
								
					function f_CSE_GEN_DEL_001(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var RequestPrimitive v_request;
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
652
					
653
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
654
					
655 656 657 658
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_nonHierarchical;
						vc_primitiveScope := p_primitiveScope;
659
						
660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685
						v_request := valueof(m_deleteRequest(f_getResourceAddress(v_resourceIndex)));
						
						mcaPort.send(m_request(v_request));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource deleted using non-hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while deleting container resource using non-hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while deleting resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
686
					
687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708
						// Tear down
						f_cf01Down();
    				
					}//end f_CSE_GEN_DEL_001				
				
				
				} // end of group g_CSE_GEN_DEL_001
				
				group g_CSE_GEN_DEL_002 {

					/**
					 * @desc Check that the IUT accepts the deletion of a <container>  resource using structured resource identifier
					 * 
					 */
					testcase TC_CSE_GEN_DEL_002_CSR() runs on CseTester system CseSystem {
						// Local variables
						                        
						f_CSE_GEN_DEL_002(e_cseRelative);
					}

					testcase TC_CSE_GEN_DEL_002_SPR() runs on CseTester system CseSystem {
						// Local variables
709
						
710 711
						f_CSE_GEN_DEL_002(e_spRelative);
					}
712
					
713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738
					testcase TC_CSE_GEN_DEL_002_ABS() runs on CseTester system CseSystem {
						// Local variables
							
						f_CSE_GEN_DEL_002(e_absolute);
					}
								
					function f_CSE_GEN_DEL_002(in PrimitiveScope p_primitiveScope) runs on CseTester {
    				
						// Local variables
						var RequestPrimitive v_request;
						var integer v_aeIndex := -1;
						var integer v_resourceIndex := -1;
											   
						// Test control
						if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
							setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
							stop;
						}
    				
						// Test component configuration
						f_cf01Up();
    				
						// Test adapter configuration
    				
						// Preamble
						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
739
					
740
						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
741
					
742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772
						// Test Body
						//Force usage of Non-Hierarchical addressing method
						vc_addressingMethod := e_hierarchical;
						vc_primitiveScope := p_primitiveScope;
						
						v_request := valueof(m_deleteRequest(f_getResourceAddress(v_resourceIndex)));
						
						mcaPort.send(m_request(v_request));
						tc_ac.start;
						alt {
							[] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) {
								tc_ac.stop;
								setverdict(pass, __SCOPE__ & ": Container resource deleted using hierarchical addressing method");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Error while deleting container resource using hierarchical addressing method");
							}
							[] tc_ac.timeout {
								setverdict(fail, __SCOPE__ & ": No answer while deleting resource");
							}
						}	
    								
						// Postamble
						vc_addressingMethod := PX_ADDRESSING_METHOD;
						vc_primitiveScope := PX_PRIMITIVE_SCOPE;
						f_cse_postamble_deleteResources();
773
					
774 775
						// Tear down
						f_cf01Down();
776
    				
777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795
					}//end f_CSE_GEN_DEL_002				
				
				
				} // end of group g_CSE_GEN_DEL_002
				
			} // end of group Delete
		
		} // end of group Generic
		
		group Registration {
			
			group Create{
				
				/**
				 * @desc Check that the IUT accepts an AE registration (allowed App-ID, C-AE-ID-STEM not provided by AE)  
				 * 
				 */
				testcase TC_CSE_REG_CRE_001() runs on CseTester system CseSystem {
		  	  	
796
					var MsgIn v_response;
797
					var RequestPrimitive v_request;
798 799 800
					var integer v_cseBaseIndex := -1;
					var ResourceType v_resourceType := int2;
	                
801 802
					// Test component configuration
					f_cf01Up();
803 804 805 806 807 808 809 810
	                
					//Preamble
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule({"C-AE-ID-STEM"});//c_CRUDNDi);
					
					//Test Body
					v_request := valueof(m_createAe(PX_APP_ID, omit, omit));	
					
					v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, v_cseBaseIndex);
811
					
812
					mcaPort.send(m_request(v_request));
813
					
814 815
					tc_ac.start;
					alt {
816
						[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
817
							tc_ac.stop;
818
							setverdict(pass, __SCOPE__ & ": AE successfully created.");
819
						}
820
						[] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int2001))) -> value v_response{
821
							tc_ac.stop;
822
							setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)));
823 824
						}
						[] tc_ac.timeout {
825
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
826 827
						}
					}	
828
									
829
					// Postamble
830 831 832 833
					f_cse_postamble_deleteResources();
					
					// Tear down
					f_cf01Down();
834 835
						
				}
836 837 838 839 840 841 842
		  	  	
				/**
				 * @desc Check that the IUT sends a registration CREATE Request with the value of the attribute ATTRIBUTE_NAME  of the AE resource
				 * 
				 */
				testcase TC_CSE_REG_CRE_002() runs on CseTester system CseSystem {
		  	  	
843
					var MsgIn v_response;
844
					var RequestPrimitive v_request;
845 846 847
					var integer v_cseBaseIndex := -1;
					var ResourceType v_resourceType := int2;
	                
848 849
					// Test component configuration
					f_cf01Up();
850 851 852
		  	  	
					//Preambule
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule({"C-AE-ID-STEM"});//c_CRUDNDi);
853
					
854 855 856 857 858
					//Test Body
					v_request := valueof(m_createAe(PX_APP_ID, omit, "C-AE-ID-STEM"));				
	    									
					v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, v_cseBaseIndex);
	
859 860 861
					mcaPort.send(m_request(v_request));
					tc_ac.start;
					alt {
862
						[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
863
							tc_ac.stop;
864
							setverdict(pass, __SCOPE__ & ": AE successfully created.");
865
						}
866
						[] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int2001))) -> value v_response{
867
							tc_ac.stop;
868
							setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)));
869 870
						}
						[] tc_ac.timeout {
871
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
872 873
						}
					}	
874
									
875
					// Postamble
876 877 878 879
					f_cse_postamble_deleteResources();
					
					// Tear down
					f_cf01Down();
880 881
						
				}
882 883 884 885 886 887 888
		  	  	
				/**
				 * @desc Check that the IUT rejects an AE registration (allowed App-ID, not allowed C-AE-ID-STEM provided by AE) 
				 * 
				 */
				testcase TC_CSE_REG_CRE_004() runs on CseTester system CseSystem {
		  	  	
889
					var MsgIn v_response;
890
					var RequestPrimitive v_request;
891 892 893
					var integer v_cseBaseIndex := -1;
					var ResourceType v_resourceType := int2;
	                
894 895
					// Test component configuration
					f_cf01Up();
896 897 898 899 900 901 902 903 904
		  	  	
					//Preambule
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule(-);//c_CRUDNDi);
		
					//Test Body	
					v_request := valueof(m_createAe(PX_APP_ID, omit, "C-AE-ID-STEM"));				
	    									
					v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, v_cseBaseIndex);
			
905 906 907
					mcaPort.send(m_request(v_request));
					tc_ac.start;
					alt {
908
						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) {
909
							tc_ac.stop;
910
							setverdict(pass, __SCOPE__ & ": AE creation rejected.");
911
						}
912
						[] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{
913
							tc_ac.stop;
914
							setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)));
915 916
						}
						[] tc_ac.timeout {
917
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
918 919
						}
					}	
920
									
921
					// Postamble
922
					f_cse_postamble_deleteResources();
923
						
924 925
					// Tear down
					f_cf01Down();
926 927
						
				}
928 929 930 931 932 933 934
		  	  	
				/**
				 * @desc Check that the IUT accepts an AE registration (allowed App-ID, S-AE-ID-STEM not provided by AE) 
				 * 
				 */
				testcase TC_CSE_REG_CRE_005() runs on CseTester system CseSystem {
		  	  	
935
					var RequestPrimitive v_request;
936 937 938
					var integer v_cseBaseIndex := -1;
					var ResourceType v_resourceType := int2;
	                
939
					// Test component configuration
940 941 942 943 944 945 946 947 948 949
					f_cf02Up();
		  	  	
					//Preambule
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule({"S"});//c_CRUDNDi);
		
					//Test Body
					v_request := valueof(m_createAe(PX_APP_ID, omit, "C-AE-ID-STEM"));				
	    									
					v_request := f_getCreateRequestPrimitive(v_resourceType, v_request, v_cseBaseIndex);
		  	  		
950 951
					mcaPort.send(m_request(v_request));
					tc_ac.start;
952
	
953
					alt {
954
						[] mccPort.receive(mw_request(mw_createAEAnnc(-, -, -))) {
955
							tc_ac.stop;
956
							setverdict(pass, __SCOPE__ & ": AE creation redirected.");
957
						}
958
						[] mccPort.receive {
959
							tc_ac.stop;
960
							setverdict(fail, __SCOPE__ & ": Error while creating AE");
961 962
						}
						[] tc_ac.timeout {
963
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
964 965
						}
					}	
966
									
967
					// Postamble
968 969 970 971
					f_cse_postamble_deleteResources();
					
					// Tear down
					f_cf01Down();
972 973 974
						
				}
				
975 976 977 978 979 980
				/**
				 * @desc Check that the IUT accepts an AE re-registration (allowed M2M-SP-assigned AE-ID, S-AE-ID-STEM provided by AE), transfer request to the IN-CSE 
				 * 
				 */
				testcase TC_CSE_REG_CRE_008() runs on CseTester system CseSystem {
		  	  	
981
					var RequestPrimitive v_request;
982 983 984
					var integer v_cseBaseIndex := -1;
					var ResourceType v_resourceType := int2;
	                
985
					// Test component configuration
986 987 988 989 990 991 992 993 994 995
					f_cf02Up();
		  	  	
					//Preambule
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule({"S"});//c_CRUDNDi);
		
					//Test Body
					v_request := valueof(m_createAe(PX_APP_ID, omit, "S-AE-ID-STEM"));				
	    									
					v_request := f_getUpdateRequestPrimitive(v_resourceType,v_cseBaseIndex, v_request);
		  	  		
996 997
					mcaPort.send(m_request(v_request));
					tc_ac.start;
998
	
999
					alt {
1000
						[] mccPort.receive(mw_request(mw_createAEAnnc("/S", "CSE_ID", -))) {
1001
							tc_ac.stop;
1002
							setverdict(pass, __SCOPE__ & ": AE creation redirected.");
1003
						}
1004
						[] mccPort.receive {
1005
							tc_ac.stop;
1006
							setverdict(fail, __SCOPE__ & ": Error while creating AE");
1007 1008
						}
						[] tc_ac.timeout {
1009
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
1010 1011
						}
					}	
1012
									
1013
					// Postamble
1014 1015 1016
					f_cse_postamble_deleteResources();
					
					// Tear down
1017
					f_cf02Down();
1018 1019
						
				}
1020 1021 1022 1023 1024 1025 1026
		  	  	
				/**
				 * @desc Check that the IUT accepts an AE re-registration (allowed M2M-SP-assigned AE-ID, S-AE-ID-STEM provided by AE), communication between MN-CSE and IN-CSE
				 *  
				 */
				testcase TC_CSE_REG_CRE_009() runs on CseTester system CseSystem {
		  	  	
1027
					var MsgIn v_response;
1028
					var RequestPrimitive v_request;
1029 1030 1031
					var integer v_aeAnncIndex := -1;
					var ResourceType v_resourceType := int2;
	                
1032
					// Test component configuration
1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044
					f_cf02Up();
		  	  	
					//Preambule
					v_aeAnncIndex := f_cse_preamble_registerAe();//TODO TestSystem acting as MN. It should register AeAnnc into the IUT (IN) via mcc
					f_cse_deleteResource(v_aeAnncIndex); //to deregister the AE
		
					//Test Body
					v_request := valueof(m_updateAEAnnc(-, -, -, "APP-ID", -));	//TODO to double check all parameters			
	    									
					v_request := f_getUpdateRequestPrimitive(v_resourceType,v_aeAnncIndex, v_request);//TODO 
		  	  		
					mccPort.send(m_request(v_request));
1045
					tc_ac.start;
1046
	
1047
					alt {
1048
						[] mccPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response {
1049
							tc_ac.stop;
1050 1051
							setverdict(pass, __SCOPE__ & ": AE creation redirected.");
							//continue to test the content
1052
						}
1053
						[] mccPort.receive {
1054
							tc_ac.stop;
1055
							setverdict(fail, __SCOPE__ & ": Error while creating AE");
1056 1057
						}
						[] tc_ac.timeout {
1058
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
1059 1060
						}
					}	
1061 1062 1063
									
					//v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex);	
									
1064
					// Postamble
1065 1066 1067
					f_cse_postamble_deleteResources();
					
					// Tear down
1068
					f_cf02Down();
1069
						
1070
				}
1071
				
1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098
				/**
				 * @desc Check that the IUT accepts an AE re-registration (allowed M2M-SP-assigned AE-ID, S-AE-ID-STEM provided by AE), transfer response to the AE
				 * 
				 */
				testcase TC_CSE_REG_CRE_010() runs on CseTester system CseSystem {
		  	  	
					var MsgIn v_response;
					var ResponsePrimitive v_request;
					var integer v_cseBaseIndex := -1;
	                
					// Test component configuration
					f_cf02Up();
		  	  	
					//Preambule
					v_cseBaseIndex := f_cse_preamble_createServiceSubscribedAppRule({"S"});//c_CRUDNDi);
		
					//Test Body
					v_request := valueof(m_responsePrimitive(int2001, "To_be_defined", {aEAnnc := m_contentCreateAEAnnc({"Credential-ID:None"}, omit, PX_APP_ID, "/CSE_ID/S-AE-ID-STEM")}));				
		  	  		
					mccPort.send(m_response(v_request));
					tc_ac.start;
	
					alt {
						[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response {
							tc_ac.stop;
							setverdict(pass, __SCOPE__ & ": AE creation success.");
							//continue to test the content
1099
						}
1100 1101 1102
						[] mcaPort.receive {
							tc_ac.stop;
							setverdict(fail, __SCOPE__ & ": Error while creating AE");
1103
						}
1104 1105
						[] tc_ac.timeout {
							setverdict(fail, __SCOPE__ & ": No answer while creating AE");
1106
						}
1107 1108 1109 1110
					}	
									
					// Postamble
					f_cse_postamble_deleteResources();
1111
					
1112 1113
					// Tear down
					f_cf02Down();
1114
						
1115
				} //end TC_CSE_REG_CRE_010
1116
				
1117 1118 1119 1120 1121 1122 1123
				group g_CSE_REG_CRE_016{
					
					/**
					 * @desc Check that the IUT accepts a create request of <remoteCSE> resource with OPTIONAL_ATTRIBUTE. 
					 * 
					 */
					testcase TC_CSE_REG_CRE_016_LBL() runs on CseTester system CseSystem {
1124
						// Local variables
1125 1126
						var template RequestPrimitive v_createRequest := m_createRemoteCSEBase;	
						const AttributeAux c_optionalAttribute := {"labels", omit};
1127
						
1128
						v_createRequest.primitiveContent.remoteCSE.labels := {"MyLabel"};
1129
						
1130
						f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute);
1131
						
1132 1133
					}
					
1134
					testcase TC_CSE_REG_CRE_016_CST() runs on CseTester system CseSystem {
1135
						// Local variables
1136 1137
						var template RequestPrimitive v_createRequest := m_createRemoteCSEBase;	
						const AttributeAux c_optionalAttribute := {"cseType", omit};
1138
						
1139
						v_createRequest.primitiveContent.remoteCSE.cseType := int1;
1140
						
1141 1142
						f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute);
	
1143 1144
					}
					
1145
					testcase TC_CSE_REG_CRE_016_POA() runs on CseTester system CseSystem {
1146
						// Local variables
1147 1148
						var template RequestPrimitive v_createRequest := m_createRemoteCSEBase;	
						const AttributeAux c_optionalAttribute := {"pointOfAccess", omit};
1149
	
1150 1151 1152
						v_createRequest.primitiveContent.remoteCSE.pointOfAccess := {"http://" & PX_CSE1_ADDRESS & "/"};
	
						f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute);
1153 1154

					}
1155
					
1156
					testcase TC_CSE_REG_CRE_016_NL() runs on CseTester system CseSystem {
1157
						// Local variables
1158 1159
						var template RequestPrimitive v_createRequest := m_createRemoteCSEBase;	
						const AttributeAux c_optionalAttribute := {"nodeLink", omit};
1160

1161
						v_createRequest.primitiveContent.remoteCSE.nodeLink := c_defaultNodeID;
1162

1163
						f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute);
1164

1165 1166
					}
					
1167
					function f_CSE_REG_CRE_016(template RequestPrimitive p_requestPrimitive, in AttributeAux p_optionalAttribute) runs on CseTester {
1168 1169
					
						// Local variables
1170
						var MsgIn v_response;
1171
						var RequestPrimitive v_request;
1172
						var ResourceType v_resourceType := int16;	//remoteCSE
1173 1174
										   
						// Test control
1175
					
1176
						// Test component configuration
1177 1178
						f_cf04Up(); 
					
1179
						// Test adapter configuration
1180
					
1181
						// Preamble
1182
					
1183
						// Test Body
1184 1185 1186
						v_request := f_getCreateRequestPrimitive(v_resourceType, p_requestPrimitive, -1);
					
						mccPort.send(m_request(v_request));
1187 1188
						tc_ac.start;
						alt {
1189
							[] mccPort.receive(mw_response(mw_responsePrimitive(int2001, f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response {
1190
								tc_ac.stop;
1191
								setverdict(pass, __SCOPE__ & ": Accepted creation for resource type remoteCSE containing attribute " & p_optionalAttribute.name);
1192
							}
1193 1194 1195 1196 1197 1198 1199 1200 1201
							[] mccPort.receive(mw_response(mw_responsePrimitiveOK(f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
							}
							[] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
								tc_ac.stop;
								setverdict(fail, __SCOPE__ & ": Accepted creation for resource type remoteCSE without containing attribute " & p_optionalAttribute.name);
							}
							[] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
1202
								tc_ac.stop;
1203
								setverdict(fail, __SCOPE__ & ": Rejected creation of resource type remoteCSE containing attribute" & p_optionalAttribute.name);
1204 1205
							}
							[] tc_ac.timeout {
1206
								setverdict(fail, __SCOPE__ & ": No answer while creating resource type remoteCSE");
1207 1208 1209 1210
							}
						}	
								
						// Postamble
1211
						f_cse_postamble_deleteResources();
1212
						
1213
						// Tear down
1214 1215 1216
						f_cf04Down();
																
					}//end f_CSE_REG_CRE_BV_016
1217