Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +46 −1 Original line number Diff line number Diff line Loading @@ -2505,6 +2505,51 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_PCC_19 /* * @desc This is the test case function TC_PCEF_PCC_20 * @param */ function f_TC_PCEF_PCC_20() runs on DiameterComponent { f_preamble_PCRF(); f_awaiting_CCR(mw_CCR_Request(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(INITIAL_REQUEST_E), *, *, *)); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_RAR(DiameterGx_Templates.m_RAR_QoS // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, {m_qoS_Information_Bearer(m_bearer_Identifier(PX_BEARER_IDENTIFIER))})); f_awaiting_RAA(mw_RAA_basic(?,?,?)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCR(mw_CCR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(TERMINATION_REQUEST_E) )); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCRF(); } // end function f_TC_PCEF_PCC_20 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services Loading Loading @@ -2671,7 +2716,7 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRem // RAR in Rx-module has different header! f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRemove // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_chrgRuleRemove_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)) Loading DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +5 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,11 @@ module DiameterGx_PIXITS */ modulepar octetstring PX_PDN_CONNECTION_ID_DATA := '08'O; /** @desc enumerated type octetstring, * avp_Data within Bearer_Identifier_AVP is of octetstring type */ modulepar octetstring PX_BEARER_IDENTIFIER := '01020304'O; /** @desc enumerated type Bearer_Usage, * avp_Data within Bearer_Usage_AVP is of enumerated type Bearer_Usage */ Loading DiameterGx/ttcn/DiameterGx_Templates.ttcn +33 −21 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ module DiameterGx_Templates { template Charging_Rule_Report_AVP m_chargRuleReport_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Report_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Report_AVP, 4, omit), charging_Rule_Name := omit, charging_Rule_Base_Name := omit, bearer_Identifier := omit, Loading @@ -50,7 +50,7 @@ module DiameterGx_Templates { template QoS_Information_AVP m_qoS_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 4, omit), qoS_Class_Identifier := omit, max_Requested_Bandwidth_UL := omit, max_Requested_Bandwidth_DL := omit, Loading @@ -65,7 +65,7 @@ module DiameterGx_Templates { template Packet_Filter_Information_AVP m_packet_Filter_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdPacket_Filter_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdPacket_Filter_Information_AVP, 4, omit), packet_Filter_Identifier := omit, precedence := omit, packet_Filter_Content := omit, Loading Loading @@ -93,7 +93,7 @@ module DiameterGx_Templates { template Charging_Rule_Install_AVP m_chrgRuleInstall_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Install_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Install_AVP, 4, omit), charging_Rule_Definition := omit, charging_Rule_Name := omit, charging_Rule_Base_Name := omit, Loading Loading @@ -129,7 +129,7 @@ module DiameterGx_Templates { template Charging_Rule_Remove_AVP m_chrgRuleRemove_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Remove_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Remove_AVP, 4, omit), charging_Rule_Name := omit, charging_Rule_Base_Name := omit, aVP_Type := omit Loading Loading @@ -160,7 +160,7 @@ module DiameterGx_Templates { template Charging_Rule_Definition_AVP m_chrgRuleDefinition_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, 4, omit), charging_Rule_Name := m_chargingRuleName(''O), service_Identifier := omit, rating_Group := omit, Loading Loading @@ -243,7 +243,7 @@ module DiameterGx_Templates { template Flow_Information_AVP m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 4, omit), flow_Description := omit, packet_Filter_Identifier := omit, packet_Filter_Usage := omit, Loading Loading @@ -370,6 +370,12 @@ module DiameterGx_Templates { qoS_Class_Identifier := m_qoS_Class_Identifier(p_avpData) } template QoS_Information_AVP m_qoS_Information_Bearer(template Bearer_Identifier_AVP p_bearerIdentifier) modifies m_qoS_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 4+lengthof(encvalue(p_bearerIdentifier)), omit), bearer_Identifier := p_bearerIdentifier } template APN_Aggregate_Max_Bitrate_UL_AVP m_APN_Aggregate_Max_Bitrate_UL(UInt32 p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdAPN_Aggregate_Max_Bitrate_UL_AVP, 4, omit), Loading Loading @@ -406,6 +412,12 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Bearer_Identifier_AVP m_bearer_Identifier(octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdBearer_Usage_AVP, 4+lengthof(p_avpData), omit), aVP_Data := p_avpData } template (value) Access_Network_Charging_Address_AVP m_accessNetworkChargingAddress(template (value) Address p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdAccess_Network_Charging_Address_AVP, f_IPAdressLength(), omit), Loading Loading @@ -1555,18 +1567,6 @@ module DiameterGx_Templates { charging_Rule_Install := {p_chargingRuleInstall} } template RAR_MSG m_RAR_CharRuleRem(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Destination_Realm_AVP p_destinationRealm, template Destination_Host_AVP p_destinationHost, template Charging_Rule_Remove_AVP p_chargingRuleRemove) modifies m_RAR_basic := { charging_Rule_Remove := {p_chargingRuleRemove} } template RAR_MSG m_RAR_CharRuleInst_EvTrigger(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, Loading Loading @@ -1674,6 +1674,18 @@ module DiameterGx_Templates { charging_Rule_Install := {p_chargingRuleInstall,p_chargingRuleInstall2} } template RAR_MSG m_RAR_QoS(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Destination_Realm_AVP p_destinationRealm, template Destination_Host_AVP p_destinationHost, template RAR_MSG.qoS_Information p_qoSInformation) modifies m_RAR_basic := { qoS_Information := p_qoSInformation } } // end group Gxmodified_request_templates_send group Gxmodified_request_templates_receive { Loading DiameterGx/ttcn/DiameterGx_TestCases.ttcn +20 −0 Original line number Diff line number Diff line Loading @@ -1435,6 +1435,26 @@ module DiameterGx_TestCases f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_PCC_19 /* * @desc TC_PCEF_PCC_20 */ testcase TC_PCEF_PCC_20() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_PCC_20()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_PCC_20 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services Loading DiameterGx/ttcn/DiameterGx_TestExecutions.ttcn +1 −0 Original line number Diff line number Diff line Loading @@ -82,6 +82,7 @@ module DiameterGx_TestExecutions execute(TC_PCEF_PCC_17()); execute(TC_PCEF_PCC_18()); execute(TC_PCEF_PCC_19()); execute(TC_PCEF_PCC_20()); execute(TC_PCEF_RAU_01()); execute(TC_PCEF_RAU_02()); execute(TC_PCEF_RAU_03()); Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +46 −1 Original line number Diff line number Diff line Loading @@ -2505,6 +2505,51 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_PCC_19 /* * @desc This is the test case function TC_PCEF_PCC_20 * @param */ function f_TC_PCEF_PCC_20() runs on DiameterComponent { f_preamble_PCRF(); f_awaiting_CCR(mw_CCR_Request(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(INITIAL_REQUEST_E), *, *, *)); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_RAR(DiameterGx_Templates.m_RAR_QoS // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, {m_qoS_Information_Bearer(m_bearer_Identifier(PX_BEARER_IDENTIFIER))})); f_awaiting_RAA(mw_RAA_basic(?,?,?)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCR(mw_CCR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(TERMINATION_REQUEST_E) )); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCRF(); } // end function f_TC_PCEF_PCC_20 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services Loading Loading @@ -2671,7 +2716,7 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRem // RAR in Rx-module has different header! f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRemove // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_chrgRuleRemove_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)) Loading
DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +5 −0 Original line number Diff line number Diff line Loading @@ -206,6 +206,11 @@ module DiameterGx_PIXITS */ modulepar octetstring PX_PDN_CONNECTION_ID_DATA := '08'O; /** @desc enumerated type octetstring, * avp_Data within Bearer_Identifier_AVP is of octetstring type */ modulepar octetstring PX_BEARER_IDENTIFIER := '01020304'O; /** @desc enumerated type Bearer_Usage, * avp_Data within Bearer_Usage_AVP is of enumerated type Bearer_Usage */ Loading
DiameterGx/ttcn/DiameterGx_Templates.ttcn +33 −21 Original line number Diff line number Diff line Loading @@ -38,7 +38,7 @@ module DiameterGx_Templates { template Charging_Rule_Report_AVP m_chargRuleReport_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Report_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Report_AVP, 4, omit), charging_Rule_Name := omit, charging_Rule_Base_Name := omit, bearer_Identifier := omit, Loading @@ -50,7 +50,7 @@ module DiameterGx_Templates { template QoS_Information_AVP m_qoS_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 4, omit), qoS_Class_Identifier := omit, max_Requested_Bandwidth_UL := omit, max_Requested_Bandwidth_DL := omit, Loading @@ -65,7 +65,7 @@ module DiameterGx_Templates { template Packet_Filter_Information_AVP m_packet_Filter_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdPacket_Filter_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdPacket_Filter_Information_AVP, 4, omit), packet_Filter_Identifier := omit, precedence := omit, packet_Filter_Content := omit, Loading Loading @@ -93,7 +93,7 @@ module DiameterGx_Templates { template Charging_Rule_Install_AVP m_chrgRuleInstall_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Install_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Install_AVP, 4, omit), charging_Rule_Definition := omit, charging_Rule_Name := omit, charging_Rule_Base_Name := omit, Loading Loading @@ -129,7 +129,7 @@ module DiameterGx_Templates { template Charging_Rule_Remove_AVP m_chrgRuleRemove_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Remove_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Remove_AVP, 4, omit), charging_Rule_Name := omit, charging_Rule_Base_Name := omit, aVP_Type := omit Loading Loading @@ -160,7 +160,7 @@ module DiameterGx_Templates { template Charging_Rule_Definition_AVP m_chrgRuleDefinition_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, 4, omit), charging_Rule_Name := m_chargingRuleName(''O), service_Identifier := omit, rating_Group := omit, Loading Loading @@ -243,7 +243,7 @@ module DiameterGx_Templates { template Flow_Information_AVP m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 0, omit), aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 4, omit), flow_Description := omit, packet_Filter_Identifier := omit, packet_Filter_Usage := omit, Loading Loading @@ -370,6 +370,12 @@ module DiameterGx_Templates { qoS_Class_Identifier := m_qoS_Class_Identifier(p_avpData) } template QoS_Information_AVP m_qoS_Information_Bearer(template Bearer_Identifier_AVP p_bearerIdentifier) modifies m_qoS_Information_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 4+lengthof(encvalue(p_bearerIdentifier)), omit), bearer_Identifier := p_bearerIdentifier } template APN_Aggregate_Max_Bitrate_UL_AVP m_APN_Aggregate_Max_Bitrate_UL(UInt32 p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdAPN_Aggregate_Max_Bitrate_UL_AVP, 4, omit), Loading Loading @@ -406,6 +412,12 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Bearer_Identifier_AVP m_bearer_Identifier(octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdBearer_Usage_AVP, 4+lengthof(p_avpData), omit), aVP_Data := p_avpData } template (value) Access_Network_Charging_Address_AVP m_accessNetworkChargingAddress(template (value) Address p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdAccess_Network_Charging_Address_AVP, f_IPAdressLength(), omit), Loading Loading @@ -1555,18 +1567,6 @@ module DiameterGx_Templates { charging_Rule_Install := {p_chargingRuleInstall} } template RAR_MSG m_RAR_CharRuleRem(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Destination_Realm_AVP p_destinationRealm, template Destination_Host_AVP p_destinationHost, template Charging_Rule_Remove_AVP p_chargingRuleRemove) modifies m_RAR_basic := { charging_Rule_Remove := {p_chargingRuleRemove} } template RAR_MSG m_RAR_CharRuleInst_EvTrigger(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, Loading Loading @@ -1674,6 +1674,18 @@ module DiameterGx_Templates { charging_Rule_Install := {p_chargingRuleInstall,p_chargingRuleInstall2} } template RAR_MSG m_RAR_QoS(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Destination_Realm_AVP p_destinationRealm, template Destination_Host_AVP p_destinationHost, template RAR_MSG.qoS_Information p_qoSInformation) modifies m_RAR_basic := { qoS_Information := p_qoSInformation } } // end group Gxmodified_request_templates_send group Gxmodified_request_templates_receive { Loading
DiameterGx/ttcn/DiameterGx_TestCases.ttcn +20 −0 Original line number Diff line number Diff line Loading @@ -1435,6 +1435,26 @@ module DiameterGx_TestCases f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_PCC_19 /* * @desc TC_PCEF_PCC_20 */ testcase TC_PCEF_PCC_20() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_PCC_20()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_PCC_20 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services Loading
DiameterGx/ttcn/DiameterGx_TestExecutions.ttcn +1 −0 Original line number Diff line number Diff line Loading @@ -82,6 +82,7 @@ module DiameterGx_TestExecutions execute(TC_PCEF_PCC_17()); execute(TC_PCEF_PCC_18()); execute(TC_PCEF_PCC_19()); execute(TC_PCEF_PCC_20()); execute(TC_PCEF_RAU_01()); execute(TC_PCEF_RAU_02()); execute(TC_PCEF_RAU_03()); Loading