From 764952c65adff687cbdfe73b9c0e6386f5726209 Mon Sep 17 00:00:00 2001 From: Pramod Kulkarni <pkulkarni75@gmail.com> Date: Tue, 24 Apr 2018 15:25:00 +0100 Subject: [PATCH] Implemented TC ANNC_UPD_014 --- OneM2M_PermutationFunctions.ttcn | 60 +++++++++++++++++++++++++++++ OneM2M_Testcases_CSE_Release_2.ttcn | 29 +++++++++++++- 2 files changed, 88 insertions(+), 1 deletion(-) diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn index 83ae5f0..5c3eacf 100644 --- a/OneM2M_PermutationFunctions.ttcn +++ b/OneM2M_PermutationFunctions.ttcn @@ -7847,6 +7847,66 @@ module OneM2M_PermutationFunctions { // Tear down f_cf02Down(); } //end f_CSE_ANNC_UPD_013 + + function f_CSE_ANNC_UPD_014(ResourceType p_resourceType,template RequestPrimitive p_createRequestAnnc, in template RequestPrimitive p_requestCreatePrimitive := omit, template RequestPrimitive p_requestUpdatePrimitive) runs on AeSimu { + //Local variables + var RequestPrimitive v_updateRequest; + var integer v_aeIndex := -1; + var integer v_resourceIndex; + var ResponsePrimitive v_responsePrimitive; + var template RequestPrimitive v_create := m_createAe(PX_APP_ID, omit, omit); + + v_create.primitiveContent.aE.announceTo := {PX_CSE_ID}; + //Test control + + //Test component configuration + f_cf02Up(); + + //Register the CSE + vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase)); + vc_cse1.done; + + //Preamble + vc_cse1.start(f_cse_announcementProcedure_createHandler(mw_createAEAnnc(-, -, -))); + v_aeIndex := f_cse_createResource(int2,v_create); + vc_cse1.done; + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestCreatePrimitive, v_aeIndex); + + vc_cse1.start(f_cse_announcementProcedure_createHandler(p_createRequestAnnc, int4000)); + v_updateRequest := f_getUpdateRequestPrimitive(p_resourceType, v_resourceIndex, p_requestUpdatePrimitive); + mcaPort.send(m_request(v_updateRequest)); + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value vc_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource updated successfully"); + } + [] 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"); + } + [] tc_ac.timeout { + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); + } + } + + vc_cse1.done; + + //Used to check that the resource has been updated + vc_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + + //Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf02Down(); + } //end f_CSE_ANNC_UPD_014 }//end group Update diff --git a/OneM2M_Testcases_CSE_Release_2.ttcn b/OneM2M_Testcases_CSE_Release_2.ttcn index 33b2b9e..3c02d4c 100644 --- a/OneM2M_Testcases_CSE_Release_2.ttcn +++ b/OneM2M_Testcases_CSE_Release_2.ttcn @@ -8473,7 +8473,34 @@ module OneM2M_Testcases_CSE_Release_2 { } }// end group g_CSE_ANNC_UPD_013 - + + group g_CSE_ANNC_UPD_014{ + + testcase TC_CSE_ANNC_UPD_014_CNT() runs on Tester system CseSystem { + // Local variables + var AeSimu v_ae1 := AeSimu.create("AE1") alive; + var template RequestPrimitive v_createRequest := m_createContainerBase; + var template RequestPrimitive v_createRequestAnnc := mw_createContainerAnncBase; + var template RequestPrimitive v_updateRequest := m_updateContainerBase; + var ResponsePrimitive v_responsePrimitive; + + v_updateRequest.primitiveContent.container.announceTo := {PX_CSE1_ID}; + + v_ae1.start(f_CSE_ANNC_UPD_014(int3, v_createRequestAnnc, v_createRequest, v_updateRequest));//Container + v_ae1.done; + + if(getverdict == pass){ + v_responsePrimitive := f_getResponsePrimitive(v_ae1); + if(ispresent(v_responsePrimitive.primitiveContent)) { + if(ischosen(v_responsePrimitive.primitiveContent.container)) { + if(ispresent(v_responsePrimitive.primitiveContent.container.announcedAttribute)){ + setverdict(fail, __SCOPE__ & ": Error: announcedAttribute attribute is not set to NULL"); + } + } + } + } + } + } //end group g_CSE_ANNC_UPD_014 }//end group Update group Delete{ -- GitLab