Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +49 −0 Original line number Diff line number Diff line Loading @@ -1767,6 +1767,55 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_PCC_06 /* * @desc This is the test case function TC_PCEF_PCC_07 * @param */ function f_TC_PCEF_PCC_07() 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_CharRuleInst // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_chrgRuleInstall_Definition(m_chrgRuleDefinition_FI(PX_CHARGING_RULE_NAME_DATA, m_flowInformation_direction_packetFID(m_packet_Filter_Identifier(PX_PACKET_FILTER_IDENTIFIER_DATA), m_flowDirection_Bidirectional))) )); f_awaiting_RAA(mw_RAA_MediaComponent(vc_sessionId,?,?,mw_mediaComponentDescription_flowStatus(?))); 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_07 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCRERole_EMS Loading DiameterGx/ttcn/DiameterGx_Templates.ttcn +37 −1 Original line number Diff line number Diff line Loading @@ -241,6 +241,19 @@ module DiameterGx_Templates { aVP_Type := * } template Flow_Information_AVP m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 0, omit), flow_Description := omit, packet_Filter_Identifier := omit, packet_Filter_Usage := omit, toS_Traffic_Class := omit, security_Parameter_Index := omit, flow_Label := omit, flow_Direction := omit, aVP_Type := omit } template Charging_Rule_Report_AVP mw_chargRuleReport_dummy := { aVP_Header := mw_aVP_Header(c_vendIdCharging_Rule_Report_AVP),//<AVP header: 1011 ....> Loading Loading @@ -447,6 +460,13 @@ module DiameterGx_Templates { aVP_Type := omit } template Flow_Information_AVP m_flowInformation_direction_packetFID (template Packet_Filter_Identifier_AVP p_packetFilterIdentifier, template Flow_Direction_AVP p_flowDirection) modifies m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, lengthof(encvalue(p_packetFilterIdentifier))+lengthof(encvalue(p_flowDirection)), omit), packet_Filter_Identifier := p_packetFilterIdentifier, flow_Direction := p_flowDirection } template Flow_Description_AVP m_flow_Description(IPFilterRule_Type p_IPftr) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Description_AVP, lengthof(encvalue(p_IPftr)), omit), Loading Loading @@ -552,6 +572,13 @@ module DiameterGx_Templates { charging_Rule_Name := m_chargingRuleName(p_avpData) } template Charging_Rule_Definition_AVP m_chrgRuleDefinition_FI (octetstring p_avpData, template Flow_Information_AVP p_flowInformation) modifies m_chrgRuleDefinition_dummy:= { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, lengthof(encvalue(m_chargingRuleName(p_avpData)))+lengthof(encvalue(p_flowInformation)), omit), charging_Rule_Name := m_chargingRuleName(p_avpData), flow_Information := {p_flowInformation} } template Charging_Rule_Base_Name_AVP m_chrgRuleBaseName(UTF8String p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Base_Name_AVP, lengthof(p_avpData), omit), Loading Loading @@ -1423,6 +1450,15 @@ module DiameterGx_Templates { qoS_Information := p_qosInformation } template RAA_MSG mw_RAA_MediaComponent(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Media_Component_Description_AVP p_mediaComponentDescription) modifies mw_RAA_basic := { media_Component_Description := superset(p_mediaComponentDescription) } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +49 −0 Original line number Diff line number Diff line Loading @@ -1767,6 +1767,55 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_PCC_06 /* * @desc This is the test case function TC_PCEF_PCC_07 * @param */ function f_TC_PCEF_PCC_07() 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_CharRuleInst // RAR in Rx-module has different header! (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_chrgRuleInstall_Definition(m_chrgRuleDefinition_FI(PX_CHARGING_RULE_NAME_DATA, m_flowInformation_direction_packetFID(m_packet_Filter_Identifier(PX_PACKET_FILTER_IDENTIFIER_DATA), m_flowDirection_Bidirectional))) )); f_awaiting_RAA(mw_RAA_MediaComponent(vc_sessionId,?,?,mw_mediaComponentDescription_flowStatus(?))); 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_07 }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCRERole_EMS Loading
DiameterGx/ttcn/DiameterGx_Templates.ttcn +37 −1 Original line number Diff line number Diff line Loading @@ -241,6 +241,19 @@ module DiameterGx_Templates { aVP_Type := * } template Flow_Information_AVP m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, 0, omit), flow_Description := omit, packet_Filter_Identifier := omit, packet_Filter_Usage := omit, toS_Traffic_Class := omit, security_Parameter_Index := omit, flow_Label := omit, flow_Direction := omit, aVP_Type := omit } template Charging_Rule_Report_AVP mw_chargRuleReport_dummy := { aVP_Header := mw_aVP_Header(c_vendIdCharging_Rule_Report_AVP),//<AVP header: 1011 ....> Loading Loading @@ -447,6 +460,13 @@ module DiameterGx_Templates { aVP_Type := omit } template Flow_Information_AVP m_flowInformation_direction_packetFID (template Packet_Filter_Identifier_AVP p_packetFilterIdentifier, template Flow_Direction_AVP p_flowDirection) modifies m_flowInformation_dummy := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Information_AVP, lengthof(encvalue(p_packetFilterIdentifier))+lengthof(encvalue(p_flowDirection)), omit), packet_Filter_Identifier := p_packetFilterIdentifier, flow_Direction := p_flowDirection } template Flow_Description_AVP m_flow_Description(IPFilterRule_Type p_IPftr) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFlow_Description_AVP, lengthof(encvalue(p_IPftr)), omit), Loading Loading @@ -552,6 +572,13 @@ module DiameterGx_Templates { charging_Rule_Name := m_chargingRuleName(p_avpData) } template Charging_Rule_Definition_AVP m_chrgRuleDefinition_FI (octetstring p_avpData, template Flow_Information_AVP p_flowInformation) modifies m_chrgRuleDefinition_dummy:= { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Definition_AVP, lengthof(encvalue(m_chargingRuleName(p_avpData)))+lengthof(encvalue(p_flowInformation)), omit), charging_Rule_Name := m_chargingRuleName(p_avpData), flow_Information := {p_flowInformation} } template Charging_Rule_Base_Name_AVP m_chrgRuleBaseName(UTF8String p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdCharging_Rule_Base_Name_AVP, lengthof(p_avpData), omit), Loading Loading @@ -1423,6 +1450,15 @@ module DiameterGx_Templates { qoS_Information := p_qosInformation } template RAA_MSG mw_RAA_MediaComponent(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template Media_Component_Description_AVP p_mediaComponentDescription) modifies mw_RAA_basic := { media_Component_Description := superset(p_mediaComponentDescription) } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading