From ee3bfe455efbe3463302aebadfb68fa356fde11a Mon Sep 17 00:00:00 2001 From: reinaortega <miguelangel.reinaortega@etsi.org> Date: Wed, 17 May 2017 04:23:30 +0200 Subject: [PATCH] Correction for handling Subscription verification in TC_CSE_DMR test cases Signed-off-by: reinaortega <miguelangel.reinaortega@etsi.org> --- LibOneM2M/OneM2M_Functions.ttcn | 7 ++-- LibOneM2M/OneM2M_Templates.ttcn | 18 ++++++++- OneM2M_Testcases.ttcn | 65 ++++++++++++++++++++++++++++----- 3 files changed, 75 insertions(+), 15 deletions(-) diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index 3b342be..7deedc6 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Functions.ttcn $ - * $Id: OneM2M_Functions.ttcn 248 2017-03-29 13:59:41Z reinaortega $ + * $Id: OneM2M_Functions.ttcn 263 2017-05-16 10:09:27Z reinaortega $ * @desc Module containing functions for oneM2M * */ @@ -670,7 +670,7 @@ module OneM2M_Functions { } //end f_cse_resourceAnnouncementHandler - function f_subscriptionVerificationHandler(in XSD.ID p_creator, in ResponseStatusCode p_responseStatusCode := int2001) runs on CseTester { + function f_subscriptionVerificationHandler(in XSD.ID p_creator, in ResponseStatusCode p_responseStatusCode := int2000) runs on CseTester { // Local variables var MsgIn v_response; var ResponsePrimitive v_responsePrimitive; @@ -697,7 +697,8 @@ module OneM2M_Functions { [] mcaPort.receive(mw_request(mw_notify(v_notificationRequest))) -> value v_response { tc_ac.stop; setverdict(pass, testcasename() & ": Notification received"); - mcaPort.send(m_response(v_responsePrimitive)); + v_responsePrimitive.requestIdentifier := v_response.primitive.requestPrimitive.requestIdentifier; + mcaPort.send(m_httpResponse(v_responsePrimitive)); } [] mcaPort.receive(mw_request(mw_notify(mw_contentNotification(?)))) -> value v_response { tc_ac.stop; diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn index ef524fa..410e9e6 100644 --- a/LibOneM2M/OneM2M_Templates.ttcn +++ b/LibOneM2M/OneM2M_Templates.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Templates.ttcn $ - * $Id: OneM2M_Templates.ttcn 254 2017-05-02 15:55:08Z reinaortega $ + * $Id: OneM2M_Templates.ttcn 264 2017-05-17 01:25:42Z berge $ * @desc Module containing templates for oneM2M * */ @@ -63,6 +63,20 @@ module OneM2M_Templates { serialization := PX_SERIALIZATION, forcedFields := p_forcedFields }; + + /** + * @desc Base template for response sending operations + * @param p_responsePrimitive + */ + template (value) MsgOut m_httpResponse(in template (value) ResponsePrimitive p_responsePrimitive, in template (omit) AttributeAux_list p_forcedFields := omit) := { + primitive := { responsePrimitive := p_responsePrimitive}, + host := PX_SUT_ADDRESS, + xmlNamespace := PX_XML_NAMESPACE, + protocolBinding := "HTTP", + serialization := PX_SERIALIZATION, + forcedFields := p_forcedFields + }; + //Added by @Naum template MsgIn mw_request(in template (present) RequestPrimitive p_requestPrimitive) := { primitive := { requestPrimitive := p_requestPrimitive} @@ -772,7 +786,7 @@ module OneM2M_Templates { requestIdentifier := testcasename() & "-m_createSchedule" & f_rnd(1, 1000000), resourceType := int18, primitiveContent := { - any_1 := {{Schedule_optional := m_contentCreateSchedule ({{"0,0,0 1 2,1,1,*"}})}} + any_1 := {{Schedule_optional := m_contentCreateSchedule ({{"0 0 0,1,2 1 1 * *"}})}} } }; diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index b79b685..6a2d4ae 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/OneM2M_Testcases.ttcn $ - * $Id: OneM2M_Testcases.ttcn 261 2017-05-16 09:02:53Z reinaortega $ + * $Id: OneM2M_Testcases.ttcn 266 2017-05-17 02:20:11Z reinaortega $ * @desc Module containing test cases for oneM2M * */ @@ -640,8 +640,9 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; var RequestPrimitive v_request; - + var CseTester v_notifyHandler; var integer v_aeIndex := -1; + var integer v_ae2Index := -1; var integer v_resourceIndex := -1; var integer v_childResourceIndex := -1; @@ -655,6 +656,14 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + if(isvalue(p_childResourceType)) { + if(valueof(p_childResourceType) == int23) { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_childRequestPrimitive, valueof(p_childResourceType)); + } else { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, valueof(p_resourceType)); + } + } + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive, v_aeIndex); if(p_resourceType != int15) { @@ -756,8 +765,9 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; var RequestPrimitive v_request; - + var CseTester v_notifyHandler; var integer v_aeIndex := -1; + var integer v_ae2Index := -1; var integer v_resourceIndex := -1; var integer v_childResourceIndex := -1; @@ -770,7 +780,15 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); - + + if(isvalue(p_childResourceType)) { + if(valueof(p_childResourceType) == int23) { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_childRequestPrimitive, valueof(p_childResourceType)); + } else { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, valueof(p_resourceType)); + } + } + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive, v_aeIndex); if(p_resourceType != int15) { @@ -871,8 +889,9 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; var RequestPrimitive v_request; - + var CseTester v_notifyHandler; var integer v_aeIndex := -1; + var integer v_ae2Index := -1; var integer v_resourceIndex := -1; var integer v_childResourceIndex := -1; @@ -885,7 +904,15 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); - + + if(isvalue(p_childResourceType)) { + if(valueof(p_childResourceType) == int23) { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_childRequestPrimitive, valueof(p_childResourceType)); + } else { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, valueof(p_resourceType)); + } + } + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive, v_aeIndex); if(p_resourceType != int15) { @@ -986,8 +1013,9 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; var RequestPrimitive v_request; - + var CseTester v_notifyHandler; var integer v_aeIndex := -1; + var integer v_ae2Index := -1; var integer v_resourceIndex := -1; var integer v_childResourceIndex := -1; @@ -1000,7 +1028,15 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); - + + if(isvalue(p_childResourceType)) { + if(valueof(p_childResourceType) == int23) { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_childRequestPrimitive, valueof(p_childResourceType)); + } else { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, valueof(p_resourceType)); + } + } + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive, v_aeIndex); if(p_resourceType != int15) { @@ -1101,8 +1137,9 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; var RequestPrimitive v_request; - + var CseTester v_notifyHandler; var integer v_aeIndex := -1; + var integer v_ae2Index := -1; var integer v_resourceIndex := -1; var integer v_childResourceIndex := -1; @@ -1115,7 +1152,15 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); - + + if(isvalue(p_childResourceType)) { + if(valueof(p_childResourceType) == int23) { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_childRequestPrimitive, valueof(p_childResourceType)); + } else { + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, valueof(p_resourceType)); + } + } + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive, v_aeIndex); if(p_resourceType != int15) { -- GitLab