Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +128 −0 Original line number Diff line number Diff line Loading @@ -1179,6 +1179,134 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_MSI_02 /* * @desc This is the test case function TC_PCEF_MSI_03 * @param */ function f_TC_PCEF_MSI_03() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(ADDITION_E), mw_packet_Filter_Information(*,?,?), ?)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_03 /* * @desc This is the test case function TC_PCEF_MSI_04 * @param */ function f_TC_PCEF_MSI_04() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(MODIFICATION_E), mw_packet_Filter_Information(*,*,*), *)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_04 /* * @desc This is the test case function TC_PCEF_MSI_05 * @param */ function f_TC_PCEF_MSI_05() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(DELETION_E), mw_packet_Filter_Information(?,*,*), *)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_05 }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour Loading DiameterGx/ttcn/DiameterGx_Templates.ttcn +54 −2 Original line number Diff line number Diff line Loading @@ -76,6 +76,20 @@ module DiameterGx_Templates { aVP_Type := omit } template Packet_Filter_Information_AVP mw_packet_Filter_Information_dummy := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Information_AVP),//<AVP header: 1011 ....> packet_Filter_Identifier := *, precedence := *, packet_Filter_Content := *, toS_Traffic_Class := *, security_Parameter_Index := *, flow_Label := *, flow_Direction := *, aVP_Type := * } template Charging_Rule_Install_AVP mw_chrgRuleInstall_dummy := { aVP_Header := mw_aVP_Header_any, Loading Loading @@ -502,6 +516,12 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Packet_Filter_Operation_AVP mw_packet_Filter_Operation(Packet_Filter_Operation p_avpData) := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Operation_AVP), aVP_Data := p_avpData } template Experimental_Result_AVP m_experimentalResult(Vendor_Id_AVP p_vendorId, Experimental_Result_Code_AVP p_expResultCode) := { aVP_Header := m_aVP_HeaderVid(c_vendIdExperimental_Result_AVP, 12/*12-Vendor_Id_AVP*/+12/*12-experimental_Result_Code*/, omit), Loading Loading @@ -784,6 +804,19 @@ module DiameterGx_Templates { pCC_Rule_Status := ? } template Packet_Filter_Information_AVP mw_packet_Filter_Information (template Packet_Filter_Identifier_AVP p_packetFilterIdentifier, template Precedence_AVP p_precedence, template Packet_Filter_Content_AVP p_packetFilterContent) modifies mw_packet_Filter_Information_dummy := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Information_AVP),//<AVP header: 1011 ....> packet_Filter_Identifier := p_packetFilterIdentifier, precedence := p_precedence, packet_Filter_Content := p_packetFilterContent } }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -1094,6 +1127,25 @@ module DiameterGx_Templates { routing_Rule_Install := p_routing_Rule_Install } template CCR_MSG mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(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 CC_Request_Type_AVP p_cCRequestType, template Charging_Rule_Report_AVP p_chargingRuleReport, template Event_Trigger_AVP p_eventTrigger, template Packet_Filter_Operation_AVP p_packetFilterOperation, template Packet_Filter_Information_AVP p_packetFilterInformation, template QoS_Information_AVP p_qoSInformation ) modifies mw_CCR_basic := { subscription_Id := {mw_subscription_Id(mw_subscription_Id_Type(PX_SUBSCRIPTION_ID_TYPE),mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))}, charging_Rule_Report := superset(p_chargingRuleReport), event_Trigger := superset(p_eventTrigger), packet_Filter_Operation := p_packetFilterOperation, packet_Filter_Information := superset(p_packetFilterInformation), qoS_Information := p_qoSInformation } template RAR_MSG mw_RAR_sessReleaseCause(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +128 −0 Original line number Diff line number Diff line Loading @@ -1179,6 +1179,134 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCEF_MSI_02 /* * @desc This is the test case function TC_PCEF_MSI_03 * @param */ function f_TC_PCEF_MSI_03() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(ADDITION_E), mw_packet_Filter_Information(*,?,?), ?)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_03 /* * @desc This is the test case function TC_PCEF_MSI_04 * @param */ function f_TC_PCEF_MSI_04() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(MODIFICATION_E), mw_packet_Filter_Information(*,*,*), *)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_04 /* * @desc This is the test case function TC_PCEF_MSI_05 * @param */ function f_TC_PCEF_MSI_05() 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_awaiting_CCR(mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(UPDATE_REQUEST_E), mw_chargRuleReport_Status, mw_eventTrigger(IP_CAN_CHANGE_E), mw_packet_Filter_Operation(DELETION_E), mw_packet_Filter_Information(?,*,*), *)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync 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_MSI_05 }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour Loading
DiameterGx/ttcn/DiameterGx_Templates.ttcn +54 −2 Original line number Diff line number Diff line Loading @@ -76,6 +76,20 @@ module DiameterGx_Templates { aVP_Type := omit } template Packet_Filter_Information_AVP mw_packet_Filter_Information_dummy := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Information_AVP),//<AVP header: 1011 ....> packet_Filter_Identifier := *, precedence := *, packet_Filter_Content := *, toS_Traffic_Class := *, security_Parameter_Index := *, flow_Label := *, flow_Direction := *, aVP_Type := * } template Charging_Rule_Install_AVP mw_chrgRuleInstall_dummy := { aVP_Header := mw_aVP_Header_any, Loading Loading @@ -502,6 +516,12 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Packet_Filter_Operation_AVP mw_packet_Filter_Operation(Packet_Filter_Operation p_avpData) := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Operation_AVP), aVP_Data := p_avpData } template Experimental_Result_AVP m_experimentalResult(Vendor_Id_AVP p_vendorId, Experimental_Result_Code_AVP p_expResultCode) := { aVP_Header := m_aVP_HeaderVid(c_vendIdExperimental_Result_AVP, 12/*12-Vendor_Id_AVP*/+12/*12-experimental_Result_Code*/, omit), Loading Loading @@ -784,6 +804,19 @@ module DiameterGx_Templates { pCC_Rule_Status := ? } template Packet_Filter_Information_AVP mw_packet_Filter_Information (template Packet_Filter_Identifier_AVP p_packetFilterIdentifier, template Precedence_AVP p_precedence, template Packet_Filter_Content_AVP p_packetFilterContent) modifies mw_packet_Filter_Information_dummy := { aVP_Header := mw_aVP_Header(c_vendIdPacket_Filter_Information_AVP),//<AVP header: 1011 ....> packet_Filter_Identifier := p_packetFilterIdentifier, precedence := p_precedence, packet_Filter_Content := p_packetFilterContent } }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -1094,6 +1127,25 @@ module DiameterGx_Templates { routing_Rule_Install := p_routing_Rule_Install } template CCR_MSG mw_CCR_Request_ChrgRuleRep_EvtTrig_PackFilt(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 CC_Request_Type_AVP p_cCRequestType, template Charging_Rule_Report_AVP p_chargingRuleReport, template Event_Trigger_AVP p_eventTrigger, template Packet_Filter_Operation_AVP p_packetFilterOperation, template Packet_Filter_Information_AVP p_packetFilterInformation, template QoS_Information_AVP p_qoSInformation ) modifies mw_CCR_basic := { subscription_Id := {mw_subscription_Id(mw_subscription_Id_Type(PX_SUBSCRIPTION_ID_TYPE),mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))}, charging_Rule_Report := superset(p_chargingRuleReport), event_Trigger := superset(p_eventTrigger), packet_Filter_Operation := p_packetFilterOperation, packet_Filter_Information := superset(p_packetFilterInformation), qoS_Information := p_qoSInformation } template RAR_MSG mw_RAR_sessReleaseCause(template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, Loading