diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index 7f4f1c17caf483472d58dc158585196360e6f4a1..8edb334b620336c6459514be48294364be4ba7b1 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -2591,6 +2591,17 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_RET_BV_013(int1, m_createAcpBase, v_contentResponse);//AccessControlPolicy } + + testcase TC_CSE_DMR_RET_BV_013_02() runs on CseTester system CseSystem { + // Local variables + var ResponsePrimitive v_responsePrimitive; + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AE_optional := mw_contentAeBase; + + v_responsePrimitive := f_CSE_DMR_RET_BV_013(int2, m_createAe(PX_APP_ID), v_contentResponse);//AE + + } testcase TC_CSE_DMR_RET_BV_013_03() runs on CseTester system CseSystem { // Local variables @@ -2693,6 +2704,670 @@ module OneM2M_Testcases { }//end f_CSE_DMR_RET_BV_013 } // end g_CSE_DMR_RET_BV_013 + + group g_CSE_DMR_RET_BO_014 { + + testcase TC_CSE_DMR_RET_BO_014_01() runs on CseTester system CseSystem { + // Local variables + var template RequestPrimitive v_requestPrimitive := m_createAcpBase; + + v_requestPrimitive.primitiveContent.any_1[0].AccessControlPolicy_optional.selfPrivileges.accessControlRule_list[0].accessControlOperations := int61; + + f_CSE_DMR_RET_BO_014(int1, v_requestPrimitive);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BO_014_02() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_014(int2, m_createPollingChannelBase);//AE + } + + testcase TC_CSE_DMR_RET_BO_014_03() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_014(int3, m_createContainerBase);//Container + } + + testcase TC_CSE_DMR_RET_BO_014_05() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_014(int9, m_createGroupBase);//Group + } + + testcase TC_CSE_DMR_RET_BO_014_11() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_014(int18, m_createScheduleBase);//Schedule + } + + testcase TC_CSE_DMR_RET_BO_014_14() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_014(int23, m_createSubscriptionBase);//Subscription + } + + function f_CSE_DMR_RET_BO_014(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var XSD.ID v_acpId; + var integer v_aeIndex := -1; + var integer v_acpAuxIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + if(not(PICS_ACP_SUPPORT)) { + log(testcasename() & ":AccessControlPolicy support is required for executing this test case"); + stop; + } + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_acpAuxIndex := f_cse_preamble_createAcpAux(-, -);//c_CRUDNDi) + + v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)});//c_CRUDNDi; + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + f_cse_updateAcpAuxResource(int61); //c_CUDNDi + + // Test Body + mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { + tc_ac.stop; + setverdict(pass, testcasename() & ": Access denied to retrieve attributes from resource type " & int2str(enum2int(p_resourceType))); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving attributes from resource without having privileges"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Retrieving attributes from resource without having privileges"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BO_014 + + } // end g_CSE_DMR_RET_BO_014 + + group g_CSE_DMR_RET_BV_015 { + + testcase TC_CSE_DMR_RET_BV_015_01() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AccessControlPolicy_optional := m_contentAcp_allOmit; + v_contentResponse.any_1[0].AccessControlPolicy_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int1, m_createAcpBase, v_contentResponse);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BV_015_02() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AE_optional := m_contentAe_allOmit; + v_contentResponse.any_1[0].AE_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int2, m_createAe(PX_APP_ID), v_contentResponse);//AE + } + + testcase TC_CSE_DMR_RET_BV_015_03() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Container_optional := m_contentContainer_allOmit; + v_contentResponse.any_1[0].Container_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int3, m_createContainerBase, v_contentResponse);//Container + } + + testcase TC_CSE_DMR_RET_BV_015_05() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Group_optional := m_contentGroup_allOmit; + v_contentResponse.any_1[0].Group_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int9, m_createGroupBase, v_contentResponse);//Group + } + + testcase TC_CSE_DMR_RET_BV_015_11() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Schedule_optional := m_contentSchedule_allOmit; + v_contentResponse.any_1[0].Schedule_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int18, m_createScheduleBase,v_contentResponse);//Schedule + } + + testcase TC_CSE_DMR_RET_BV_015_14() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Subscription_optional := m_contentSubscription_allOmit; + v_contentResponse.any_1[0].Subscription_optional.parentID := ?; + + f_CSE_DMR_RET_BV_015(int23, m_createSubscriptionBase, v_contentResponse);//Subscription + } + + function f_CSE_DMR_RET_BV_015(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive, template PrimitiveContent p_contentResponse) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var XSD.String v_attribute := "#pi";//Attribute parentId to be retrieved + var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + // Test Body + mcaPort.send(m_request(m_retrieveResourceAttributeToOption(f_getResourceAddress(v_resourceIndex) & v_attribute, f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, testcasename() & ": Requested attribute retrieved successfuly"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BV_015 + + } // end g_CSE_DMR_RET_BV_015 + + group g_CSE_DMR_RET_BV_016 { + + + testcase TC_CSE_DMR_RET_BV_016_01() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AccessControlPolicy_optional := m_contentAcp_allOmit; + v_contentResponse.any_1[0].AccessControlPolicy_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int1, m_createAcpBase, v_contentResponse);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BV_016_02() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AE_optional := m_contentAe_allOmit; + v_contentResponse.any_1[0].AE_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int2, m_createAe(PX_APP_ID), v_contentResponse);//AE + } + + testcase TC_CSE_DMR_RET_BV_016_03() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Container_optional := m_contentContainer_allOmit; + v_contentResponse.any_1[0].Container_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int3, m_createContainerBase, v_contentResponse);//Container + } + + testcase TC_CSE_DMR_RET_BV_016_05() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Group_optional := m_contentGroup_allOmit; + v_contentResponse.any_1[0].Group_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int9, m_createGroupBase, v_contentResponse);//Group + } + + testcase TC_CSE_DMR_RET_BV_016_11() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Schedule_optional := m_contentSchedule_allOmit; + v_contentResponse.any_1[0].Schedule_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int18, m_createScheduleBase, v_contentResponse);//Schedule + } + + testcase TC_CSE_DMR_RET_BV_016_14() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Subscription_optional := m_contentSubscription_allOmit; + v_contentResponse.any_1[0].Subscription_optional.parentID := ?; + + f_CSE_DMR_RET_BV_016(int23, m_createSubscriptionBase, v_contentResponse);//Subscription + } + + + function f_CSE_DMR_RET_BV_016(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive, template PrimitiveContent p_contentResponse) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + // Test Body + mcaPort.send(m_request(m_retrieveResourceAttributeContentOption(f_getResourceAddress(v_resourceIndex) , {"pi"}, f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, testcasename() & ": Requested attribute retrieved successfuly"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BV_016 + + } // end g_CSE_DMR_RET_BV_016 + + group g_CSE_DMR_RET_BV_017 { + + + testcase TC_CSE_DMR_RET_BV_017_01() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AccessControlPolicy_optional := m_contentAcp_allOmit; + v_contentResponse.any_1[0].AccessControlPolicy_optional.parentID := ?; + v_contentResponse.any_1[0].AccessControlPolicy_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int1, m_createAcpBase, v_contentResponse);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BV_017_02() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].AE_optional := m_contentAe_allOmit; + v_contentResponse.any_1[0].AE_optional.parentID := ?; + v_contentResponse.any_1[0].AE_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int2, m_createAe(PX_APP_ID), v_contentResponse);//AE + } + + testcase TC_CSE_DMR_RET_BV_017_03() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Container_optional := m_contentContainer_allOmit; + v_contentResponse.any_1[0].Container_optional.parentID := ?; + v_contentResponse.any_1[0].Container_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int3, m_createContainerBase, v_contentResponse);//Container + } + + testcase TC_CSE_DMR_RET_BV_017_05() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Group_optional := m_contentGroup_allOmit; + v_contentResponse.any_1[0].Group_optional.parentID := ?; + v_contentResponse.any_1[0].Group_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int9, m_createGroupBase, v_contentResponse);//Group + } + + testcase TC_CSE_DMR_RET_BV_017_11() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Schedule_optional := m_contentSchedule_allOmit; + v_contentResponse.any_1[0].Schedule_optional.parentID := ?; + v_contentResponse.any_1[0].Schedule_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int18, m_createScheduleBase, v_contentResponse);//Schedule + } + + testcase TC_CSE_DMR_RET_BV_017_14() runs on CseTester system CseSystem { + // Local variables + var template PrimitiveContent v_contentResponse; + + v_contentResponse.any_1[0].Subscription_optional := m_contentSubscription_allOmit; + v_contentResponse.any_1[0].Subscription_optional.parentID := ?; + v_contentResponse.any_1[0].Subscription_optional.creationTime := ?; + + f_CSE_DMR_RET_BV_017(int23, m_createSubscriptionBase, v_contentResponse);//Subscription + } + + + function f_CSE_DMR_RET_BV_017(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive, template PrimitiveContent p_contentResponse) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + // Test Body + mcaPort.send(m_request(m_retrieveResourceAttributeContentOption(f_getResourceAddress(v_resourceIndex) , + {"pi", "ct"}, f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, testcasename() & ": Requested attributes retrieved successfuly"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error, not only requested attributes retrieved"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving resource attributes"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BV_017 + + } // end g_CSE_DMR_RET_BV_017 + + group g_CSE_DMR_RET_BO_018 { + + + testcase TC_CSE_DMR_RET_BO_018_01() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int1, m_createAcpBase);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BO_018_02() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int2, m_createAe(PX_APP_ID));//AE + } + + testcase TC_CSE_DMR_RET_BO_018_03() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int3, m_createContainerBase);//Container + } + + testcase TC_CSE_DMR_RET_BO_018_05() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int9, m_createGroupBase);//Group + } + + testcase TC_CSE_DMR_RET_BO_018_11() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int18, m_createScheduleBase);//Schedule + } + + testcase TC_CSE_DMR_RET_BO_018_14() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_018(int23, m_createSubscriptionBase);//Subscription + } + + + function f_CSE_DMR_RET_BO_018(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + // Test Body + mcaPort.send(m_request(m_retrieveResourceAttributeContentOption(f_getResourceAddress(v_resourceIndex), + {"lbl"}, f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { + tc_ac.stop; + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving non existing resource attribute"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BO_018 + + } // end g_CSE_DMR_RET_BO_018 + + group g_CSE_DMR_RET_BO_019 { + + testcase TC_CSE_DMR_RET_BO_019_01() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int1, m_createAcpBase);//AccessControlPolicy + } + + testcase TC_CSE_DMR_RET_BO_019_02() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int2, m_createAe(PX_APP_ID));//AE + } + + testcase TC_CSE_DMR_RET_BO_019_03() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int3, m_createContainerBase);//Container + } + + testcase TC_CSE_DMR_RET_BO_019_05() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int9, m_createGroupBase);//Group + } + + testcase TC_CSE_DMR_RET_BO_019_11() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int18, m_createScheduleBase);//Schedule + } + + testcase TC_CSE_DMR_RET_BO_019_14() runs on CseTester system CseSystem { + // Local variables + + f_CSE_DMR_RET_BO_019(int23, m_createSubscriptionBase);//Subscription + } + + + function f_CSE_DMR_RET_BO_019(ResourceType p_resourceType, template RequestPrimitive p_requestPrimitive) runs on CseTester { + + // Local variables + var MsgIn v_response; + var RequestPrimitive v_request; + var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; + var CseTester v_notifyHandler; + var integer v_ae2Index := -1; + + // Test control + + // Test component configuration + f_cf01Up(); + + // Test adapter configuration + + // Preamble + v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); + + f_cse_preamble_subscriptionVerification(v_notifyHandler, v_aeIndex, v_ae2Index, p_requestPrimitive, p_resourceType); + + v_resourceIndex := f_cse_createResource(p_resourceType, p_requestPrimitive);//under the CSEBase resource + + // Test Body + mcaPort.send(m_request(m_retrieveResourceAttributeContentOption(f_getResourceAddress(v_resourceIndex), + {"lbl", "at"}, f_getOriginator(v_aeIndex))));//from AE ID + + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { + tc_ac.stop; + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error while retrieving non existing resource attributes"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + tc_ac.stop; + setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + } + } + + // Postamble + f_cse_postamble_deleteResources(); + + // Tear down + f_cf01Down(); + + }//end f_CSE_DMR_RET_BO_019 + + } // end f_CSE_DMR_RET_BO_019 }//end group Retrieve