From aea7e49f3efdcbfcab0df9c5cdab6e8f2370a69e Mon Sep 17 00:00:00 2001 From: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org> Date: Wed, 26 Jul 2017 08:26:17 +0200 Subject: [PATCH] Update of vc_resourcesList moved to f_setResource Signed-off-by: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org> --- LibOneM2M/OneM2M_Functions.ttcn | 37 ++++++++++++++++----------------- LibOneM2M/OneM2M_Types.ttcn | 3 ++- OneM2M_Testcases.ttcn | 7 +++---- 3 files changed, 23 insertions(+), 24 deletions(-) diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index 9f35628..c76b0c3 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Functions.ttcn $ - * $Id: OneM2M_Functions.ttcn 325 2017-07-24 16:17:05Z reinaortega $ + * $Id: OneM2M_Functions.ttcn 327 2017-07-26 06:25:46Z reinaortega $ * @desc Module containing functions for oneM2M * */ @@ -212,8 +212,7 @@ module OneM2M_Functions { f_checkAttributesToBeSaved(int2, v_request, v_response.primitive.responsePrimitive); - v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_aeAuxIndex}; + v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2); if(ispresent(vc_aeAux.aE_ID)){ f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID))); @@ -281,8 +280,7 @@ module OneM2M_Functions { if(ischosen(v_response.primitive.responsePrimitive.primitiveContent.aE)) { vc_aeAux := v_response.primitive.responsePrimitive.primitiveContent.aE; - v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_aeAuxIndex}; + v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2); if(ispresent(vc_aeAux.aE_ID)){ f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID))); @@ -436,10 +434,7 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type " & int2str(enum2int(p_resourceType)) & " created successfuly"); f_checkAttributesToBeSaved(p_resourceType, v_request, v_response.primitive.responsePrimitive); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_parentIndex); - if(match(int2, p_resourceType) or match(-1, p_parentIndex)) {//If created resource is an AE or created under CSEBase, it needs to be added to the resourceToBeDeleted list - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; - } + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, p_parentIndex); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -483,9 +478,8 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type " & int2str(1) & " created successfuly"); f_checkAttributesToBeSaved(int1, v_request, v_response.primitive.responsePrimitive); - v_acpAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); + v_acpAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int1); vc_acpAuxIndex := v_acpAuxIndex; - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_acpAuxIndex}; } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -1094,8 +1088,7 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type RemoteCSE created successfuly"); f_checkAttributesToBeSaved(int16, v_request, v_response.primitive.responsePrimitive); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, -1); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int16, -1); } [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -1248,7 +1241,7 @@ module OneM2M_Functions { p_resource.aE := v_ae; p_modifiedResource.aE := v_aeModified; - return f_setResource(p_resource, p_parentIndex); + return f_setResource(p_resource, p_resourceType, p_parentIndex); } @@ -1725,14 +1718,20 @@ module OneM2M_Functions { * @return Internal resource index of the saved resource * @verdict */ - function f_setResource(PrimitiveContent p_resource, integer p_parentIndex := -1) runs on Tester return integer { - + function f_setResource(PrimitiveContent p_resource, ResourceType p_resourceType, integer p_parentIndex := -1) runs on Tester return integer { + var integer v_newIndex := -1; if(isbound(vc_resourcesList)) { - vc_resourcesList[lengthof(vc_resourcesList)] := {p_parentIndex, p_resource}; + vc_resourcesList[lengthof(vc_resourcesList)] := {p_parentIndex, p_resourceType, p_resource}; } else { - vc_resourcesList[0] := {p_parentIndex, p_resource}; + vc_resourcesList[0] := {p_parentIndex, p_resourceType, p_resource}; } - return lengthof(vc_resourcesList)-1; + + v_newIndex := lengthof(vc_resourcesList)-1; + if(match(int2, p_resourceType) or match(-1, p_parentIndex)) {//If created resource is an AE or created under CSEBase, it needs to be added to the resourceToBeDeleted list + vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_newIndex}; + } + + return v_newIndex; } diff --git a/LibOneM2M/OneM2M_Types.ttcn b/LibOneM2M/OneM2M_Types.ttcn index 47460e5..2b7f452 100644 --- a/LibOneM2M/OneM2M_Types.ttcn +++ b/LibOneM2M/OneM2M_Types.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Types.ttcn $ - * $Id: OneM2M_Types.ttcn 318 2017-07-13 12:35:45Z berge $ + * $Id: OneM2M_Types.ttcn 327 2017-07-26 06:25:46Z reinaortega $ * @desc OneM2M data types module * */ @@ -7794,6 +7794,7 @@ group InvalidTypes { type record MyResource { integer parentIndex, + ResourceType resourceType, PrimitiveContent resource }; diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index 84d02f6..6d03e8b 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/OneM2M_Testcases.ttcn $ - * $Id: OneM2M_Testcases.ttcn 324 2017-07-24 16:16:08Z reinaortega $ + * $Id: OneM2M_Testcases.ttcn 327 2017-07-26 06:25:46Z reinaortega $ * @desc Module containing test cases for oneM2M * */ @@ -2207,9 +2207,8 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(p_resourceType)) & " created successfully"); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, v_parentIndex); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; - } + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, v_parentIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; setverdict(fail, testcasename() & ": Error while creating resource type " & int2str(enum2int(p_resourceType))); -- GitLab