diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn index 8b7f1a53aa5ea1e6e5f3afbd1037bddcf494750f..58ad561ed27545b562c8bf7e76b746ab97fca700 100644 --- a/LibOneM2M/OneM2M_Templates.ttcn +++ b/LibOneM2M/OneM2M_Templates.ttcn @@ -1126,10 +1126,10 @@ module OneM2M_Templates { /** * @desc Base NOTIFY request primitive */ - template RequestPrimitive m_notify := { + template RequestPrimitive m_notify(XSD.ID p_resourceAddress) := { operation := int5, - to_ := "NotInitialized", - from_ := omit, + to_ := p_resourceAddress, + from_ := "NotInitialized", requestIdentifier := testcasename() & "-m_notify" & f_rnd(1, 1000000), resourceType := omit, primitiveContent := {notification := m_contentCreateNotification_allOmit}, diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn index 2bd068387c3ed67f849237b6df1de78278c86681..b6dfd960d970219ef7018cbd9140ff5d51b740f8 100644 --- a/OneM2M_PermutationFunctions.ttcn +++ b/OneM2M_PermutationFunctions.ttcn @@ -37,7 +37,7 @@ module OneM2M_PermutationFunctions { var integer v_parentIndex := -1; var integer v_resourceIndex := -1; var MsgIn v_request; - var PrimitiveContent v_modifiedResource; + var PrimitiveContent v_resource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid CREATE Request for container containing To set to " & f_getLocalResourceAddress(0, e_nonHierarchical, p_primitiveScope); if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { @@ -57,14 +57,15 @@ module OneM2M_PermutationFunctions { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container creation request received successfuly"); v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); - v_modifiedResource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); - v_resourceIndex := f_setLocalResource(v_modifiedResource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, v_modifiedResource)); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while creating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -78,12 +79,14 @@ module OneM2M_PermutationFunctions { } function f_AE_GEN_CRE_002(PrimitiveScope p_primitiveScope) runs on CseSimu { var MsgIn v_request; + var Integer v_parentIndex := -1; + var Integer v_resourceIndex := -1; var ResponsePrimitive v_responsePrimitive; var template UtTriggerPrimitive v_utRequest := m_utCreateContainer; var UtTriggerAckPrimitive v_trigger_response; + var PrimitiveContent v_resource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid CREATE Request for container containing To set to " & f_getLocalResourceAddress(-, e_hierarchical, p_primitiveScope); - //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"); @@ -102,13 +105,16 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_createContainer(-,v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container creation request received successfuly"); - - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while creating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -130,7 +136,7 @@ module OneM2M_PermutationFunctions { var ResponsePrimitive v_responsePrimitive; var template UtTriggerPrimitive v_utRequest := m_utUpdateContainer; var UtTriggerAckPrimitive v_trigger_response; - var integer v_auxInteger; + var integer v_resourceIndex; var PrimitiveContent v_localResource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid UPDATE Request for container containing To set to " & f_getLocalResourceAddress(-, e_nonHierarchical, p_primitiveScope); @@ -144,22 +150,24 @@ module OneM2M_PermutationFunctions { //Send Trigger Message v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger, e_nonHierarchical, p_primitiveScope); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex, e_nonHierarchical, p_primitiveScope); f_sendUtPrimitive(v_utRequest,v_action); tc_ac.start; alt { - [] mcaPortIn.receive(mw_request(mw_updateContainer(-,v_utRequest.requestPrimitive.to_))) -> value (v_request) { + [] mcaPortIn.receive(mw_request(mw_updateContainer(-,v_utRequest.requestPrimitive.to_))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container update request received successfuly"); - - v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + f_cse_updateLocalResource(v_resourceIndex, v_request.primitive.requestPrimitive.primitiveContent); + v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while updating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -176,7 +184,7 @@ module OneM2M_PermutationFunctions { var ResponsePrimitive v_responsePrimitive; var template UtTriggerPrimitive v_utRequest := m_utUpdateContainer; var UtTriggerAckPrimitive v_trigger_response; - var integer v_auxInteger; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid UPDATE Request for container containing To set to " & f_getLocalResourceAddress(-, e_hierarchical, p_primitiveScope); @@ -189,8 +197,8 @@ module OneM2M_PermutationFunctions { //Send Trigger Message v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger, e_hierarchical, p_primitiveScope); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex, e_hierarchical, p_primitiveScope); f_sendUtPrimitive(v_utRequest,v_action); tc_ac.start; @@ -198,13 +206,15 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_updateContainer(-,v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container update request received successfuly"); - - v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + f_cse_updateLocalResource(v_resourceIndex, v_request.primitive.requestPrimitive.primitiveContent); + v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while updating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -227,7 +237,7 @@ module OneM2M_PermutationFunctions { var template UtTriggerPrimitive v_utRequestTemplate; var UtTriggerPrimitive v_utRequest; var UtTriggerAckPrimitive v_trigger_response; - var integer v_auxInteger; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid RETRIEVE Request for container containing To set to " & f_getLocalResourceAddress(-, e_nonHierarchical, p_primitiveScope); @@ -240,8 +250,8 @@ module OneM2M_PermutationFunctions { //Send Trigger Message v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequestTemplate := m_utRetrieve(f_getLocalResourceAddress(v_auxInteger, e_nonHierarchical, p_primitiveScope)); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequestTemplate := m_utRetrieve(f_getLocalResourceAddress(v_resourceIndex, e_nonHierarchical, p_primitiveScope)); f_sendUtPrimitive(v_utRequestTemplate,v_action); v_utRequest := valueof(v_utRequestTemplate); @@ -250,13 +260,14 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container retrieve request received successfuly"); - - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while retrieving container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -274,7 +285,7 @@ module OneM2M_PermutationFunctions { var template UtTriggerPrimitive v_utRequestTemplate; var UtTriggerPrimitive v_utRequest; var UtTriggerAckPrimitive v_trigger_response; - var integer v_auxInteger; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid RETRIEVE Request for container containing To set to " & f_getLocalResourceAddress(-, e_hierarchical, p_primitiveScope); @@ -287,8 +298,8 @@ module OneM2M_PermutationFunctions { //Send Trigger Message v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequestTemplate := m_utRetrieve(f_getLocalResourceAddress(v_auxInteger, e_hierarchical, p_primitiveScope)); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequestTemplate := m_utRetrieve(f_getLocalResourceAddress(v_resourceIndex, e_hierarchical, p_primitiveScope)); v_utRequest := valueof(v_utRequestTemplate); f_sendUtPrimitive(v_utRequest,v_action); @@ -297,13 +308,14 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container retrieve request received successfuly"); - - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while retrieving container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -347,20 +359,21 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_delete(v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container update request received successfuly"); - v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, omit)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while updating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { setverdict(fail, __SCOPE__, " : No answer while updating resource"); stop; } - } + }" &Conflicts in index. Try without --index. + " // Postamble f_cf03Down(); @@ -393,13 +406,13 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(mw_delete(v_utRequest.requestPrimitive.to_))) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container update request received successfuly"); - v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, omit)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while updating container"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); stop; } [] tc_ac.timeout { @@ -424,6 +437,9 @@ module OneM2M_PermutationFunctions { //primitives for mcaPortIn var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var ResponsePrimitive v_responsePrimitive; f_cf03Up(); @@ -439,15 +455,18 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_request)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE registration request is accepted!!"); - //v_responsePrimitive := valueof(m_responsePrimitiveTemp(int2000, omit)); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(mw_createAe(*,?,m_contentCreateAe_Invalid))) -> value v_request { tc_ac.stop; setverdict(fail, __SCOPE__, " : AE registration request is rejected due to not including the optional attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -473,6 +492,9 @@ module OneM2M_PermutationFunctions { function f_AE_DMR_CRE_003(template UtTriggerPrimitive p_utRequest, template RequestPrimitive p_request, in universal charstring p_action) runs on CseSimu { var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var PrimitiveContent v_localResource; var integer v_containerIndex := -1; var ResponsePrimitive v_responsePrimitive; @@ -495,10 +517,11 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_request)) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : ContentInstance creation request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } @@ -506,6 +529,7 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : ContentInstance creation request is rejected due to not including the attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ @@ -518,6 +542,9 @@ module OneM2M_PermutationFunctions { } function f_AE_DMR_CRE_004(template UtTriggerPrimitive p_utRequest, template RequestPrimitive p_request, in universal charstring p_action) runs on CseSimu { var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var ResponsePrimitive v_responsePrimitive; //Test component configuration @@ -536,19 +563,19 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_request)) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container creation request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } - [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Container creation request is rejected due to not including the attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } - [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); } @@ -566,9 +593,9 @@ module OneM2M_PermutationFunctions { //primitives for mcaPortIn var MsgIn v_request; - var integer v_auxInteger := -1; - var PrimitiveContent v_modifiedResource; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; + var ResponsePrimitive v_responsePrimitive; f_cf03Up(); @@ -576,8 +603,8 @@ module OneM2M_PermutationFunctions { //Send Trigger Message v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentAe(m_contentCreateAe(omit, omit, omit, omit))), vc_cSEBaseIndex, int2); - v_auxInteger := f_setLocalResource(v_localResource, int2, vc_cSEBaseIndex); - p_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int2, vc_cSEBaseIndex); + p_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(p_utRequest,p_action); //Test behavior @@ -587,14 +614,15 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_expectedUpdateRequest)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE update request is accepted!"); - - vc_response.primitive.responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - mcaPortIn.send(m_response(vc_response.primitive.responsePrimitive)); + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + f_cse_updateLocalResource(v_resourceIndex, v_request.primitive.requestPrimitive.primitiveContent); + v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(?)) -> value v_request { tc_ac.stop; setverdict(fail, __SCOPE__, " : AE update request is rejected due to not including the optional attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -610,15 +638,15 @@ module OneM2M_PermutationFunctions { var MsgIn v_request; var ResponsePrimitive v_responsePrimitive; var PrimitiveContent v_localResource; - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; //Test component configuration f_cf03Up(); //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - p_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + p_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(p_utRequest,p_action); //Test behavior @@ -629,17 +657,16 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_request)) -> value (v_request) { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container update request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + f_cse_updateLocalResource(v_resourceIndex, v_request.primitive.requestPrimitive.primitiveContent); + v_responsePrimitive := valueof(m_responsePrimitive(int2004, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Container update request is rejected due to not including the attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ @@ -662,34 +689,31 @@ module OneM2M_PermutationFunctions { var MsgIn v_request; var ResponsePrimitive v_responsePrimitive; var PrimitiveContent v_localResource; - var integer v_auxInteger := -1; - + var integer v_resourceIndex := -1; + //Test component configuration f_cf03Up(); //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(p_primitiveContent), vc_cSEBaseIndex, p_resourceType); - v_auxInteger := f_setLocalResource(v_localResource, p_resourceType, vc_cSEBaseIndex); - v_utRequest := m_utRetrieve(f_getLocalResourceAddress(v_auxInteger)); + v_resourceIndex := f_setLocalResource(v_localResource, p_resourceType, vc_cSEBaseIndex); + v_utRequest := m_utRetrieve(f_getLocalResourceAddress(v_resourceIndex)); f_sendUtPrimitive(v_utRequest,p_action); //Test behavior tc_ac.start; alt{ - [] mcaPortIn.receive(mw_request(mw_retrieve(f_getLocalResourceAddress(v_auxInteger)))) -> value v_request { + [] mcaPortIn.receive(mw_request(mw_retrieve(f_getLocalResourceAddress(v_resourceIndex)))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : retrieve resource type request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); - tc_ac.stop; } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : error while retrieving resource !"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -716,6 +740,9 @@ module OneM2M_PermutationFunctions { function f_AE_SUB_CRE_002(template UtTriggerPrimitive p_utRequest, template RequestPrimitive p_request, in universal charstring p_action) runs on CseSimu { var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var ResponsePrimitive v_responsePrimitive; f_cf03Up(); @@ -730,16 +757,19 @@ module OneM2M_PermutationFunctions { [] mcaPortIn.receive(mw_request(p_request)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Subscription creation request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + " &Conflicts in index. Try without --index. + " //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Subscription creation request is rejected due to not including the optional attribute!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); diff --git a/OneM2M_Testcases_AE_Release_1.ttcn b/OneM2M_Testcases_AE_Release_1.ttcn index f3c3a86f3ec741b163fbc8acc1b57dbd17c5ec87..6a54a447049675f379e3208f2d80f5810d4fd537 100644 --- a/OneM2M_Testcases_AE_Release_1.ttcn +++ b/OneM2M_Testcases_AE_Release_1.ttcn @@ -463,7 +463,9 @@ module OneM2M_Testcases_AE_Release_1 { //primitives for utPort var template UtTriggerPrimitive v_utRequest := m_utCreateAe; - + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; //primitives for mcaPortIn var MsgIn v_request; @@ -484,8 +486,10 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE registration request is accepted!!"); - //v_responsePrimitive := valueof(m_responsePrimitiveTemp(int2000, omit)); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); @@ -493,6 +497,7 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createAe(*,?,m_contentCreateAe_Invalid))) -> value v_request { tc_ac.stop; setverdict(fail, __SCOPE__, " : AE registration request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -688,9 +693,7 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_delete(v_utRequest.requestPrimitive.to_))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE deregistration request is accepted!"); - - //v_responsePrimitive := valueof(m_responsePrimitiveTemp(int2000, omit)); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_responsePrimitive := valueof(m_responsePrimitive(int2002, v_request.primitive.requestPrimitive.requestIdentifier, omit)); //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); @@ -698,6 +701,7 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Error while AE deregistration"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -734,6 +738,9 @@ module OneM2M_Testcases_AE_Release_1 { //variables var template UtTriggerPrimitive v_utRequest := m_utCreateContainer; var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var template RequestPrimitive v_requestPrimitive := mw_createContainer; var ResponsePrimitive v_responsePrimitive; var universal charstring v_action := __SCOPE__ & ": Please, send a valid CREATE Request for container"; @@ -751,9 +758,10 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Container creation request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); @@ -761,6 +769,7 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Container creation request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -787,6 +796,9 @@ module OneM2M_Testcases_AE_Release_1 { var template UtTriggerPrimitive v_utRequest := m_utCreateContentInstance; var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var PrimitiveContent v_localResource; var integer v_containerIndex := -1; var template RequestPrimitive v_requestPrimitive := mw_createContentInstance; @@ -811,17 +823,18 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(v_requestPrimitive)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : ContentInstance creation request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } - [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : ContentInstance creation request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ @@ -1294,7 +1307,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_RET_002() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1308,8 +1321,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger) & "/" & c_resourceShortNameOldest; + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex) & "/" & c_resourceShortNameOldest; f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1318,17 +1331,14 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_ ))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : retrieve attribute oldest request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); - tc_ac.stop; } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : error while retrieving attribute !"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -1354,7 +1364,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_RET_003() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1368,8 +1378,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger) & "/" & c_resourceShortNameLatest; + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex) & "/" & c_resourceShortNameLatest; f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1378,17 +1388,14 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : retrieve attribute latest request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); - tc_ac.stop; } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : error while retrieving attribute !"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -1414,7 +1421,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_RET_004() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1428,8 +1435,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1438,17 +1445,14 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : retrieve resource type request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); - tc_ac.stop; } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : error while retrieving resource !"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -1474,7 +1478,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_RET_005() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1488,8 +1492,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContentInstance(m_contentCreateContentInstance)), vc_cSEBaseIndex, int4); - v_auxInteger := f_setLocalResource(v_localResource, int4, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int4, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1498,17 +1502,14 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_retrieve(v_utRequest.requestPrimitive.to_))) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : retrieve resource type request is accepted!!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - - //send back responsePrimitive + v_resourceIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_responsePrimitive := valueof(m_responsePrimitive(int2000, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); mcaPortIn.send(m_response(v_responsePrimitive)); - tc_ac.stop; } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : error while retrieving resource !"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -1538,7 +1539,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_DEL_001() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1552,8 +1553,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger) & "/" & c_resourceShortNameOldest; + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex) & "/" & c_resourceShortNameOldest; f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1598,7 +1599,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_DEL_002() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1612,8 +1613,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger) & "/" & c_resourceShortNameLatest; + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex) & "/" & c_resourceShortNameLatest; f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1658,7 +1659,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_DEL_003() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1672,8 +1673,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), vc_cSEBaseIndex, int3); - v_auxInteger := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int3, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1718,7 +1719,7 @@ module OneM2M_Testcases_AE_Release_1 { function f_AE_DMR_DEL_004() runs on CseSimu { - var integer v_auxInteger := -1; + var integer v_resourceIndex := -1; var PrimitiveContent v_localResource; //variables @@ -1732,8 +1733,8 @@ module OneM2M_Testcases_AE_Release_1 { //send triggering primitive to SUT v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentContentInstance(m_contentCreateContentInstance)), vc_cSEBaseIndex, int4); - v_auxInteger := f_setLocalResource(v_localResource, int4, vc_cSEBaseIndex); - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_resourceIndex := f_setLocalResource(v_localResource, int4, vc_cSEBaseIndex); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); f_sendUtPrimitive(v_utRequest,v_action); //Test behavior @@ -1790,6 +1791,9 @@ module OneM2M_Testcases_AE_Release_1 { //variables var template UtTriggerPrimitive v_utRequest := m_utCreateSubscription; var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var ResponsePrimitive v_responsePrimitive; var universal charstring v_action := __SCOPE__ & ": Please, send a valid subscription creation request"; @@ -1805,16 +1809,18 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createSubscription)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Subscription creation request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive { tc_ac.stop; setverdict(fail, __SCOPE__, " : Subscription creation request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(fail, __SCOPE__, " : Timeout due to no response received from requested SUT!"); @@ -1973,6 +1979,9 @@ module OneM2M_Testcases_AE_Release_1 { //variables var template UtTriggerPrimitive v_utRequest := m_utCreateAe; var MsgIn v_request; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var ResponsePrimitive v_responsePrimitive; var PrimitiveContent v_localResource; var integer v_auxInteger := -1; @@ -1981,8 +1990,6 @@ module OneM2M_Testcases_AE_Release_1 { f_cf03Up(); //create Ae - v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentAe(m_contentCreateAe(omit, omit, omit, omit))), vc_cSEBaseIndex, int2); - v_auxInteger := f_setLocalResource(v_localResource, int2, vc_cSEBaseIndex); v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(); f_sendUtPrimitive(v_utRequest,v_action); @@ -1991,26 +1998,30 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createAe)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE registration request is accepted!!"); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(mw_createAe(*,?,m_contentCreateAe_Invalid))) -> value v_request { tc_ac.stop; setverdict(inconc, __SCOPE__, " : AE registration request is rejected due to not including mandatory attributes!!"); - stop; + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(inconc, __SCOPE__, " : Timeout due to no response received from requested SUT!"); - stop; } } + f_checkCseSimuStatus(); + //create Subscription v_utRequest := m_utCreateSubscription; - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); v_action := "Please, send a valid CREATE request for Subscription"; f_sendUtPrimitive(v_utRequest,v_action); @@ -2019,25 +2030,28 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createSubscription)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Subscription creation request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive { tc_ac.stop; setverdict(inconc, __SCOPE__, " : Subscription creation request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(inconc, __SCOPE__, " : Timeout due to no response received from requested SUT!"); } } - + f_checkCseSimuStatus(); + //Test behavior - mcaPortIn.send(m_request(m_notify)); + mcaPortIn.send(m_request(m_notify(f_getLocalResourceAddress(v_resourceIndex)))); tc_ac.start; alt{ @@ -2078,14 +2092,14 @@ module OneM2M_Testcases_AE_Release_1 { var MsgIn v_request; var ResponsePrimitive v_responsePrimitive; var PrimitiveContent v_localResource; - var integer v_auxInteger := -1; + var integer v_parentIndex := -1; + var integer v_resourceIndex := -1; + var PrimitiveContent v_resource; var universal charstring v_action := __SCOPE__ & ": Please, send a valid AE Registration CREATE Request"; f_cf03Up(); //create Ae - v_localResource := f_ae_generateLocalResource(valueof(m_primitiveContentAe(m_contentCreateAe(omit, omit, omit, omit))), vc_cSEBaseIndex, int2); - v_auxInteger := f_setLocalResource(v_localResource, int2, vc_cSEBaseIndex); v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(); f_sendUtPrimitive(v_utRequest,v_action); tc_ac.start; @@ -2093,26 +2107,30 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createAe)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : AE registration request is accepted!!"); - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive(mw_request(mw_createAe(*,?,m_contentCreateAe_Invalid))) -> value v_request { tc_ac.stop; setverdict(inconc, __SCOPE__, " : AE registration request is rejected due to not including mandatory attributes!!"); - stop; + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(inconc, __SCOPE__, " : Timeout due to no response received from requested SUT!"); - stop; } } - + + f_checkCseSimuStatus(); + //create Subscription v_utRequest := m_utCreateSubscription; - v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_auxInteger); + v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(v_resourceIndex); v_action := "Please, send a valid CREATE request for Subscription"; f_sendUtPrimitive(v_utRequest,v_action); @@ -2121,23 +2139,26 @@ module OneM2M_Testcases_AE_Release_1 { [] mcaPortIn.receive(mw_request(mw_createSubscription)) -> value v_request { tc_ac.stop; setverdict(pass, __SCOPE__, " : Subscription creation request is accepted!"); - - //set responseStatusCode back to SUT - v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, omit)); - + v_parentIndex := f_getResourceIndex(v_request.primitive.requestPrimitive.to_); + v_resource := f_ae_generateLocalResource(v_request.primitive.requestPrimitive.primitiveContent, v_parentIndex, v_request.primitive.requestPrimitive.resourceType); + v_resourceIndex := f_setLocalResource(v_resource, v_request.primitive.requestPrimitive.resourceType, v_parentIndex); + v_responsePrimitive := valueof(m_responsePrimitive(int2001, v_request.primitive.requestPrimitive.requestIdentifier, vc_localResourcesList[v_resourceIndex].resource)); + //send back responsePrimitive mcaPortIn.send(m_response(v_responsePrimitive)); } [] mcaPortIn.receive { tc_ac.stop; setverdict(inconc, __SCOPE__, " : Subscription creation request is rejected due to not including mandatory attributes!!"); + mcaPortIn.send(m_response(valueof(m_responsePrimitive(int4004, v_request.primitive.requestPrimitive.requestIdentifier, omit)))); } [] tc_ac.timeout{ setverdict(inconc, __SCOPE__, " : Timeout due to no response received from requested SUT!"); } } - + f_checkCseSimuStatus(); + //Test behavior mcaPortIn.send(m_request(m_notifyAggregatedNotification));