Commit 3e7fff46dad91e4fdf35c009fdc7225b1198cc02

Authored by Miguel Angel Reina Ortega
2 parents 870201a8 31691310

Merge remote-tracking branch 'remotes/origin/HYBRID_ADDRESSING_TEST_CASES' into Release2

Signed-off-by: reinaortega <miguelangel.reinaortega@etsi.org>
... ... @@ -4229,13 +4229,20 @@ module OneM2M_Functions {
4229 4229 } else {
4230 4230 return f_getResourceId(vc_resourcesList[p_targetResourceIndex].resource);
4231 4231 }
4232   - } else {
  4232 + } else if (p_addressingMethod == e_hierarchical){
4233 4233 if(p_targetResourceIndex == -1) {
4234 4234 return PX_CSE_NAME;
4235 4235 } else {
4236 4236 v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, p_addressingMethod, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
4237 4237 return v_resourceAddress;
4238 4238 }
  4239 + } else if (p_addressingMethod == e_hybrid){
  4240 + if(p_targetResourceIndex == -1) {
  4241 + return PX_CSE_RESOURCE_ID;
  4242 + } else {
  4243 + v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, e_nonHierarchical, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
  4244 + return v_resourceAddress;
  4245 + }
4239 4246 }
4240 4247  
4241 4248 } else if (p_primitiveScope == e_spRelative) {
... ... @@ -4246,13 +4253,20 @@ module OneM2M_Functions {
4246 4253 v_resourceAddress := PX_CSE_ID & "/" & f_getResourceId(vc_resourcesList[p_targetResourceIndex].resource);
4247 4254 return v_resourceAddress;
4248 4255 }
4249   - } else {
  4256 + } else if (p_addressingMethod == e_hierarchical){
4250 4257 if(p_targetResourceIndex == -1) {
4251 4258 return PX_CSE_ID & "/" & PX_CSE_NAME;
4252 4259 } else {
4253 4260 v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, p_addressingMethod, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
4254 4261 return v_resourceAddress;
4255 4262 }
  4263 + } else if (p_addressingMethod == e_hybrid){
  4264 + if(p_targetResourceIndex == -1) {
  4265 + return PX_CSE_ID & "/" & PX_CSE_RESOURCE_ID;
  4266 + } else {
  4267 + v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, e_nonHierarchical, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
  4268 + return v_resourceAddress;
  4269 + }
4256 4270 }
4257 4271 } else if (p_primitiveScope == e_absolute) {
4258 4272 if(p_addressingMethod == e_nonHierarchical) {
... ... @@ -4262,14 +4276,21 @@ module OneM2M_Functions {
4262 4276 v_resourceAddress := PX_SP_ID & PX_CSE_ID & "/" & f_getResourceId(vc_resourcesList[p_targetResourceIndex].resource);
4263 4277 return v_resourceAddress;
4264 4278 }
4265   - } else {
  4279 + } else if (p_addressingMethod == e_hierarchical){
4266 4280 if(p_targetResourceIndex == -1) {
4267 4281 return PX_SP_ID & PX_CSE_ID & "/" & PX_CSE_NAME;
4268 4282 } else {
4269 4283 v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, p_addressingMethod, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
4270 4284 return v_resourceAddress;
4271 4285 }
4272   - }
  4286 + } else if (p_addressingMethod == e_hybrid){
  4287 + if(p_targetResourceIndex == -1) {
  4288 + return PX_SP_ID & PX_CSE_ID & "/" & PX_CSE_RESOURCE_ID;
  4289 + } else {
  4290 + v_resourceAddress := f_getResourceAddress(vc_resourcesList[p_targetResourceIndex].parentIndex, e_nonHierarchical, p_primitiveScope) & "/" & f_getResourceName(vc_resourcesList[p_targetResourceIndex].resource);
  4291 + return v_resourceAddress;
  4292 + }
  4293 + }
4273 4294 } else {
4274 4295 return "";
4275 4296 }
... ...
... ... @@ -8690,7 +8690,8 @@ group OtherTypes {
8690 8690  
8691 8691 type enumerated AddressingMethod {
8692 8692 e_nonHierarchical,
8693   - e_hierarchical
  8693 + e_hierarchical,
  8694 + e_hybrid
8694 8695 }
8695 8696  
8696 8697 type union Resource_2 {
... ...
... ... @@ -826,7 +826,7 @@ module OneM2M_PermutationFunctions {
826 826 v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
827 827  
828 828 // Test Body
829   - //Force usage of Non-Hierarchical addressing method
  829 + //Force usage of Hierarchical addressing method
830 830 v_addressingMethod := e_hierarchical;
831 831 v_primitiveScope := p_primitiveScope;
832 832 v_request := f_getCreateRequestPrimitive(int3, m_createContainerBase, v_resourceIndex);
... ... @@ -921,6 +921,68 @@ module OneM2M_PermutationFunctions {
921 921  
922 922 }//end f_CSE_GEN_CRE_003
923 923  
  924 +
  925 + function f_CSE_GEN_CRE_004(in PrimitiveScope p_primitiveScope) runs on AeSimu {
  926 +
  927 + // Local variables
  928 + var RequestPrimitive v_request;
  929 + var integer v_aeIndex := -1;
  930 + var integer v_resourceIndex := -1;
  931 + var AddressingMethod v_addressingMethod;
  932 + var PrimitiveScope v_primitiveScope;
  933 +
  934 + // Test control
  935 + if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
  936 + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
  937 + stop;
  938 + }
  939 +
  940 + // Test component configuration
  941 + f_cf01Up();
  942 +
  943 + // Test adapter configuration
  944 +
  945 + // Preamble
  946 + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
  947 +
  948 + v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
  949 +
  950 + // Test Body
  951 + //Force usage of Hybrid Hierarchical addressing method
  952 + v_addressingMethod := e_hybrid;
  953 + v_primitiveScope := p_primitiveScope;
  954 + v_request := f_getCreateRequestPrimitive(int3, m_createContainerBase, v_resourceIndex);
  955 + v_request.to_ := f_getResourceAddress(v_resourceIndex, v_addressingMethod, v_primitiveScope);
  956 +
  957 + mcaPort.send(f_getMsgOutPrimitive(m_request(v_request)));
  958 + tc_ac.start;
  959 + alt {
  960 + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) {
  961 + tc_ac.stop;
  962 + setverdict(pass, __SCOPE__ & ": Container resource created using hierarchical addressing method");
  963 + }
  964 + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
  965 + tc_ac.stop;
  966 + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
  967 + }
  968 + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
  969 + tc_ac.stop;
  970 + setverdict(fail, __SCOPE__ & ": Error while creating container resource using hierarchical addressing method");
  971 + }
  972 + [] tc_ac.timeout {
  973 + setverdict(fail, __SCOPE__ & ": No answer while creating resource");
  974 + }
  975 + }
  976 +
  977 + // Postamble
  978 + f_cse_postamble_deleteResources();
  979 +
  980 + // Tear down
  981 + f_cf01Down();
  982 +
  983 + }//end f_CSE_GEN_CRE_004
  984 +
  985 +
924 986 } // end of group Create
925 987  
926 988 group Retrieve {
... ... @@ -1007,7 +1069,7 @@ module OneM2M_PermutationFunctions {
1007 1069 v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
1008 1070  
1009 1071 // Test Body
1010   - //Force usage of Non-Hierarchical addressing method
  1072 + //Force usage of Hierarchical addressing method
1011 1073 v_addressingMethod := e_hierarchical;
1012 1074 v_primitiveScope := p_primitiveScope;
1013 1075  
... ... @@ -1094,6 +1156,62 @@ module OneM2M_PermutationFunctions {
1094 1156  
1095 1157 }//end f_CSE_GEN_RET_003
1096 1158  
  1159 + function f_CSE_GEN_RET_004(in PrimitiveScope p_primitiveScope) runs on AeSimu {
  1160 +
  1161 + // Local variables
  1162 + var integer v_aeIndex := -1;
  1163 + var integer v_resourceIndex := -1;
  1164 + var AddressingMethod v_addressingMethod;
  1165 + var PrimitiveScope v_primitiveScope;
  1166 +
  1167 + // Test control
  1168 + if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
  1169 + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
  1170 + stop;
  1171 + }
  1172 +
  1173 + // Test component configuration
  1174 + f_cf01Up();
  1175 +
  1176 + // Test adapter configuration
  1177 +
  1178 + // Preamble
  1179 + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
  1180 +
  1181 + v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
  1182 +
  1183 + // Test Body
  1184 + //Force usage of Hybrid Hierarchical addressing method
  1185 + v_addressingMethod := e_hybrid;
  1186 + v_primitiveScope := p_primitiveScope;
  1187 +
  1188 + mcaPort.send(f_getMsgOutPrimitive(m_request(m_retrieve(f_getResourceAddress(v_resourceIndex, v_addressingMethod, v_primitiveScope), f_getOriginator(v_resourceIndex)))));tc_ac.start;
  1189 + alt {
  1190 + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) {
  1191 + tc_ac.stop;
  1192 + setverdict(pass, __SCOPE__ & ": Container resource retrieved using hybrid addressing method");
  1193 + }
  1194 + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
  1195 + tc_ac.stop;
  1196 + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
  1197 + }
  1198 + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
  1199 + tc_ac.stop;
  1200 + setverdict(fail, __SCOPE__ & ": Error while retrieving container resource using hybrid addressing method");
  1201 + }
  1202 + [] tc_ac.timeout {
  1203 + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
  1204 + }
  1205 + }
  1206 +
  1207 + // Postamble
  1208 + f_cse_postamble_deleteResources();
  1209 +
  1210 + // Tear down
  1211 + f_cf01Down();
  1212 +
  1213 + }//end f_CSE_GEN_RET_004
  1214 +
1097 1215 } // end of group Retrieve
1098 1216  
1099 1217 group Update {
... ... @@ -1187,7 +1305,7 @@ module OneM2M_PermutationFunctions {
1187 1305 v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
1188 1306  
1189 1307 // Test Body
1190   - //Force usage of Non-Hierarchical addressing method
  1308 + //Force usage of Hierarchical addressing method
1191 1309 v_addressingMethod := e_hierarchical;
1192 1310 v_primitiveScope := p_primitiveScope;
1193 1311  
... ... @@ -1287,6 +1405,69 @@ module OneM2M_PermutationFunctions {
1287 1405  
1288 1406 }//end f_CSE_GEN_UPD_003
1289 1407  
  1408 + function f_CSE_GEN_UPD_004(in PrimitiveScope p_primitiveScope) runs on AeSimu {
  1409 +
  1410 + // Local variables
  1411 + var RequestPrimitive v_updateRequest := valueof(m_updateContainerBase);
  1412 + var integer v_aeIndex := -1;
  1413 + var integer v_resourceIndex := -1;
  1414 + var AddressingMethod v_addressingMethod;
  1415 + var PrimitiveScope v_primitiveScope;
  1416 +
  1417 + // Test control
  1418 + if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
  1419 + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
  1420 + stop;
  1421 + }
  1422 +
  1423 + // Test component configuration
  1424 + f_cf01Up();
  1425 +
  1426 + // Test adapter configuration
  1427 +
  1428 + // Preamble
  1429 + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
  1430 +
  1431 + v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
  1432 +
  1433 + // Test Body
  1434 + //Force usage of Hybrid Hierarchical addressing method
  1435 + v_addressingMethod := e_hybrid;
  1436 + v_primitiveScope := p_primitiveScope;
  1437 +
  1438 + v_updateRequest.primitiveContent.container.labels := {"MyLabel"};
  1439 +
  1440 + v_updateRequest := f_getUpdateRequestPrimitive(int3, v_resourceIndex, v_updateRequest);
  1441 + v_updateRequest.to_ := f_getResourceAddress(v_resourceIndex, v_addressingMethod, v_primitiveScope);
  1442 +
  1443 + mcaPort.send(f_getMsgOutPrimitive(m_request(v_updateRequest)));
  1444 + tc_ac.start;
  1445 + alt {
  1446 + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) {
  1447 + tc_ac.stop;
  1448 + setverdict(pass, __SCOPE__ & ": Container resource updated using hierarchical addressing method");
  1449 + }
  1450 + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
  1451 + tc_ac.stop;
  1452 + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
  1453 + }
  1454 + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
  1455 + tc_ac.stop;
  1456 + setverdict(fail, __SCOPE__ & ": Error while updating container resource using hierarchical addressing method");
  1457 + }
  1458 + [] tc_ac.timeout {
  1459 + setverdict(fail, __SCOPE__ & ": No answer while updating resource");
  1460 + }
  1461 + }
  1462 +
  1463 + // Postamble
  1464 + f_cse_postamble_deleteResources();
  1465 +
  1466 + // Tear down
  1467 + f_cf01Down();
  1468 +
  1469 + }//end f_CSE_GEN_UPD_004
  1470 +
1290 1471 } // end of group Update
1291 1472  
1292 1473 group Delete {
... ... @@ -1377,7 +1558,7 @@ module OneM2M_PermutationFunctions {
1377 1558 v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
1378 1559  
1379 1560 // Test Body
1380   - //Force usage of Non-Hierarchical addressing method
  1561 + //Force usage of Hierarchical addressing method
1381 1562 v_addressingMethod := e_hierarchical;
1382 1563 v_primitiveScope := p_primitiveScope;
1383 1564  
... ... @@ -1471,6 +1652,66 @@ module OneM2M_PermutationFunctions {
1471 1652  
1472 1653 }//end f_CSE_GEN_DEL_003
1473 1654  
  1655 + function f_CSE_GEN_DEL_004(in PrimitiveScope p_primitiveScope) runs on AeSimu {
  1656 +
  1657 + // Local variables
  1658 + var RequestPrimitive v_request;
  1659 + var integer v_aeIndex := -1;
  1660 + var integer v_resourceIndex := -1;
  1661 + var AddressingMethod v_addressingMethod;
  1662 + var PrimitiveScope v_primitiveScope;
  1663 +
  1664 + // Test control
  1665 + if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) {
  1666 + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case");
  1667 + stop;
  1668 + }
  1669 +
  1670 + // Test component configuration
  1671 + f_cf01Up();
  1672 +
  1673 + // Test adapter configuration
  1674 +
  1675 + // Preamble
  1676 + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);
  1677 +
  1678 + v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
  1679 +
  1680 + // Test Body
  1681 + //Force usage of Hybrid Hierarchical addressing method
  1682 + v_addressingMethod := e_hybrid;
  1683 + v_primitiveScope := p_primitiveScope;
  1684 +
  1685 + v_request := valueof(m_delete(f_getResourceAddress(v_resourceIndex, v_addressingMethod, v_primitiveScope), f_getOriginator(v_resourceIndex)));
  1686 +
  1687 + mcaPort.send(f_getMsgOutPrimitive(m_request(v_request)));
  1688 + tc_ac.start;
  1689 + alt {
  1690 + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) {
  1691 + tc_ac.stop;
  1692 + setverdict(pass, __SCOPE__ & ": Container resource deleted using hierarchical addressing method");
  1693 + }
  1694 + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
  1695 + tc_ac.stop;
  1696 + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response");
  1697 + }
  1698 + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
  1699 + tc_ac.stop;
  1700 + setverdict(fail, __SCOPE__ & ": Error while deleting container resource using hierarchical addressing method");
  1701 + }
  1702 + [] tc_ac.timeout {
  1703 + setverdict(fail, __SCOPE__ & ": No answer while deleting resource");
  1704 + }
  1705 + }
  1706 +
  1707 + // Postamble
  1708 + f_cse_postamble_deleteResources();
  1709 +
  1710 + // Tear down
  1711 + f_cf01Down();
  1712 +
  1713 + }//end f_CSE_GEN_DEL_004
  1714 +
1474 1715 } // end of group Delete
1475 1716  
1476 1717 } // end of group Generic
... ...
... ... @@ -123,8 +123,48 @@ module OneM2M_Testcases_CSE_Release_2 {
123 123 }
124 124  
125 125 }// end of group g_CSE_GEN_CRE_003
126   -
127 126  
  127 + group g_CSE_GEN_CRE_004 {
  128 +
  129 + /**
  130 + * @desc Check that the IUT accepts the creation of a <container> resource using structured resource identifier with hybrid addressing.
  131 + *
  132 + */
  133 + testcase TC_CSE_GEN_CRE_004_CSR() runs on Tester system CseSystem {
  134 + // Local variables
  135 +
  136 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  137 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  138 + v_ae1.done;
  139 +
  140 + v_ae1.start(f_CSE_GEN_CRE_004(e_cseRelative));
  141 + v_ae1.done;
  142 + }
  143 +
  144 + testcase TC_CSE_GEN_CRE_004_SPR() runs on Tester system CseSystem {
  145 + // Local variables
  146 +
  147 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  148 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  149 + v_ae1.done;
  150 +
  151 + v_ae1.start(f_CSE_GEN_CRE_004(e_spRelative));
  152 + v_ae1.done;
  153 + }
  154 +
  155 + testcase TC_CSE_GEN_CRE_004_ABS() runs on Tester system CseSystem {
  156 + // Local variables
  157 +
  158 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  159 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  160 + v_ae1.done;
  161 +
  162 + v_ae1.start(f_CSE_GEN_CRE_004(e_absolute));
  163 + v_ae1.done;
  164 + }
  165 +
  166 + } // end of group g_CSE_GEN_CRE_004
  167 +
128 168 } // end of group Create
129 169  
130 170 group Retrieve {
... ... @@ -169,6 +209,48 @@ module OneM2M_Testcases_CSE_Release_2 {
169 209  
170 210 } // end of group g_CSE_GEN_RET_003
171 211  
  212 +
  213 + group g_CSE_GEN_RET_004 {
  214 +
  215 + /**
  216 + * @desc Check that the IUT accepts the retrieval of a <container> resource using structured resource identifier with hybrid addressing.
  217 + *
  218 + */
  219 + testcase TC_CSE_GEN_RET_004_CSR() runs on Tester system CseSystem {
  220 + // Local variables
  221 +
  222 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  223 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  224 + v_ae1.done;
  225 +
  226 + v_ae1.start(f_CSE_GEN_RET_004(e_cseRelative));
  227 + v_ae1.done;
  228 + }
  229 +
  230 + testcase TC_CSE_GEN_RET_004_SPR() runs on Tester system CseSystem {
  231 + // Local variables
  232 +
  233 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  234 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  235 + v_ae1.done;
  236 +
  237 + v_ae1.start(f_CSE_GEN_RET_004(e_spRelative));
  238 + v_ae1.done;
  239 + }
  240 +
  241 + testcase TC_CSE_GEN_RET_004_ABS() runs on Tester system CseSystem {
  242 + // Local variables
  243 +
  244 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  245 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  246 + v_ae1.done;
  247 +
  248 + v_ae1.start(f_CSE_GEN_RET_004(e_absolute));
  249 + v_ae1.done;
  250 + }
  251 +
  252 + } // end of group g_CSE_GEN_RET_004
  253 +
172 254 } // end of group Retrieve
173 255  
174 256 group Update {
... ... @@ -214,6 +296,48 @@ module OneM2M_Testcases_CSE_Release_2 {
214 296  
215 297 } // end of group g_CSE_GEN_UPD_003
216 298  
  299 +
  300 + group g_CSE_GEN_UPD_004 {
  301 +
  302 + /**
  303 + * @desc Check that the IUT accepts the update of a <container> resource using structured resource identifier with hybrid addressing..
  304 + *
  305 + */
  306 + testcase TC_CSE_GEN_UPD_004_CSR() runs on Tester system CseSystem {
  307 + // Local variables
  308 +
  309 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  310 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  311 + v_ae1.done;
  312 +
  313 + v_ae1.start(f_CSE_GEN_UPD_004(e_cseRelative));
  314 + v_ae1.done;
  315 + }
  316 +
  317 + testcase TC_CSE_GEN_UPD_004_SPR() runs on Tester system CseSystem {
  318 + // Local variables
  319 +
  320 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  321 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  322 + v_ae1.done;
  323 +
  324 + v_ae1.start(f_CSE_GEN_UPD_004(e_spRelative));
  325 + v_ae1.done;
  326 + }
  327 +
  328 + testcase TC_CSE_GEN_UPD_004_ABS() runs on Tester system CseSystem {
  329 + // Local variables
  330 +
  331 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  332 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  333 + v_ae1.done;
  334 +
  335 + v_ae1.start(f_CSE_GEN_UPD_004(e_absolute));
  336 + v_ae1.done;
  337 + }
  338 +
  339 + } // end of group g_CSE_GEN_UPD_004
  340 +
217 341 } // end of group Update
218 342  
219 343 group Delete {
... ... @@ -259,6 +383,48 @@ module OneM2M_Testcases_CSE_Release_2 {
259 383  
260 384 } // end of group g_CSE_GEN_DEL_003
261 385  
  386 +
  387 + group g_CSE_GEN_DEL_004 {
  388 +
  389 + /**
  390 + * @desc Check that the IUT accepts the deletion of a <container> resource using structured resource identifier with hybrid addressing.
  391 + *
  392 + */
  393 + testcase TC_CSE_GEN_DEL_004_CSR() runs on Tester system CseSystem {
  394 + // Local variables
  395 +
  396 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  397 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  398 + v_ae1.done;
  399 +
  400 + v_ae1.start(f_CSE_GEN_DEL_004(e_cseRelative));
  401 + v_ae1.done;
  402 + }
  403 +
  404 + testcase TC_CSE_GEN_DEL_004_SPR() runs on Tester system CseSystem {
  405 + // Local variables
  406 +
  407 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  408 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  409 + v_ae1.done;
  410 +
  411 + v_ae1.start(f_CSE_GEN_DEL_004(e_spRelative));
  412 + v_ae1.done;
  413 + }
  414 +
  415 + testcase TC_CSE_GEN_DEL_004_ABS() runs on Tester system CseSystem {
  416 + // Local variables
  417 +
  418 + var AeSimu v_ae1 := AeSimu.create("AE1") alive;
  419 + v_ae1.start(f_setProtocolBinding(PX_PROTOCOL_BINDING_AE1));
  420 + v_ae1.done;
  421 +
  422 + v_ae1.start(f_CSE_GEN_DEL_004(e_absolute));
  423 + v_ae1.done;
  424 + }
  425 +
  426 + } // end of group g_CSE_GEN_DEL_004
  427 +
262 428 } // end of group Delete
263 429  
264 430 } // end of group Generic
... ...