Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +55 −1 Original line number Diff line number Diff line Loading @@ -38,13 +38,36 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCA(mw_CCA_modified_ResultCode(?, ?, ?, mw_resultCode(mw_resultCode_diameterSuccess))); f_awaiting_CCA(mw_CCA_modified_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, mw_resultCode(mw_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_01 /* * @desc This is the test case function TC_PCRF_IPS_02 * @param */ function f_TC_PCRF_IPS_02() runs on DiameterComponent { f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //f_send_CCR(m_CCR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, f_framedIpAddress4_send(),f_framedIpAddress6_send())); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCA(mw_CCA_modified_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_02 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI Loading Loading @@ -100,6 +123,37 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCRF(); } // end function f_TC_PCEF_IPS_01 /* * @desc This is the test case function TC_PCEF_IPS_02 * @param */ function f_TC_PCEF_IPS_02() runs on DiameterComponent { f_preamble_PCRF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_awaiting_CCR(mw_CCR_sessionRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(INITIAL_REQUEST_E), f_framedIpAddress4(), f_framedIpAddress6(), mw_routing_Rule_Install)); 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_IPS_02 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI Loading DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +2 −1 Original line number Diff line number Diff line Loading @@ -151,7 +151,8 @@ module DiameterGx_PIXITS modulepar octetstring PX_UE_framedIp6Address := 'ffffffff'O; /** @desc charstring, PIXIT item A.1/ /** @desc * avp_Data within CC_Request_Type_AVP is of enumerated type CC_Request_Ty_Type , */ modulepar CC_Request_Ty_Type PX_CC_REQUEST_TYPE := INITIAL_REQUEST_E; Loading DiameterGx/ttcn/DiameterGx_Templates.ttcn +83 −22 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ module DiameterGx_Templates { } //end group DummyAVPHeaders group SpecificAVPHeaders { group sendingTemplatesForAVPs{ template Destination_Host_AVP m_destinationHost(charstring p_avpData) := { Loading Loading @@ -118,67 +119,102 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Framed_IP_Address_AVP mw_framedIpAddress(template (present) octetstring p_avpData) := template Network_Request_Support_AVP m_network_Request_Support(Network_Request_Support p_avpData) := { aVP_Header := aVP_Header := m_aVP_HeaderVid(c_vendIdNetwork_Request_Support_AVP, 4, omit), aVP_Data := p_avpData } template QoS_Information_AVP m_qoS_Information_APN_AMBR_UL := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 12/*length aPN_Aggregate_Max_Bitrate_UL*/, omit), qoS_Class_Identifier := omit, max_Requested_Bandwidth_UL := omit, max_Requested_Bandwidth_DL := omit, guaranteed_Bitrate_UL := omit, guaranteed_Bitrate_DL := omit, bearer_Identifier := omit, allocation_Retention_Priority := omit, aPN_Aggregate_Max_Bitrate_UL := m_APN_Aggregate_Max_Bitrate_UL, aPN_Aggregate_Max_Bitrate_DL := omit, aVP_Type := omit } template APN_Aggregate_Max_Bitrate_UL_AVP m_APN_Aggregate_Max_Bitrate_UL:= { aVP_Code := ?, aVP_flags := {v_bit := ?, m_bit := ?, p_bit := ?, reserved_bits := ?}, aVP_len := ?, aVP_vid := ? }, aVP_Header := m_aVP_HeaderVid(c_vendIdAPN_Aggregate_Max_Bitrate_UL_AVP, 4, omit), aVP_Data := 100//PX_APN_Aggregate_Max_Bitrate_UL_AVP_DATA }; }//end group sendingTemplatesForAVPs group awaitingTemplatesForAVPs{ template Framed_IP_Address_AVP mw_framedIpAddress(template (present) octetstring p_avpData) := { aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Framed_IPv6_Prefix_AVP mw_framedIp6Address(template (present) octetstring p_avpData) := { aVP_Header := { aVP_Code := ?, aVP_flags := {v_bit := ?, m_bit := ?, p_bit := ?, reserved_bits := ?}, aVP_len := ?, aVP_vid := ? }, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Subscription_Id_AVP mw_subscription_Id(template Subscription_Id_Type_AVP p_typeAVP, template Subscription_Id_Data_AVP p_dataAVP):= template Subscription_Id_AVP mw_subscription_Id(Subscription_Id_Type_AVP p_typeAVP, Subscription_Id_Data_AVP p_dataAVP):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, subscription_Id_Type := p_typeAVP, subscription_Id_Data := p_dataAVP } template Subscription_Id_Type_AVP mw_subscription_Id_Type(Subscription_Id_Ty_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Subscription_Id_Data_AVP mw_subscription_Id_Data(UTF8String p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template IP_CAN_Type_AVP mw_iP_CAN_Type(IP_CAN_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template RAT_Type_AVP mw_rAT_Type(RAT_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template CC_Request_Type_AVP mw_cC_Request_Type(CC_Request_Ty_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Routing_Rule_Install_AVP mw_routing_Rule_Install := { aVP_Header := mw_aVP_Header_any, routing_Rule_Definition := {mw_routing_Rule_Definition}, aVP_Type := * }; template Routing_Rule_Definition_AVP mw_routing_Rule_Definition := { aVP_Header := mw_aVP_Header_any, routing_Rule_Identifier := ?, routing_Filter := ?, precedence := *, routing_IP_Address := *, aVP_Type := * }; }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -280,6 +316,24 @@ module DiameterGx_Templates { group Gxmodified_request_templates_send { template CCR_MSG m_CCR_allRequiredAVPs(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 Framed_IP_Address_AVP p_framedIpAddress, template Framed_IPv6_Prefix_AVP p_framedIp6Address) modifies m_CCR_basic := { network_Request_Support := m_network_Request_Support(NETWORK_REQUEST_SUPPORTED_E), qoS_Information := m_qoS_Information_APN_AMBR_UL, threeGPP_MS_TimeZone := omit, called_Station_Id := omit, pDN_Connection_ID := omit, bearer_Usage := omit, access_Network_Charging_Address := omit, access_Network_Charging_Identifier_Gx := omit, routing_Rule_Install := omit } } // end group Gxmodified_request_templates_send group Gxmodified_request_templates_receive { Loading Loading @@ -317,6 +371,13 @@ module DiameterGx_Templates { result_Code := p_resultCode } template CCA_MSG mw_CCA_modified_PCCrules_ChrgRuleInstall( template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm) modifies mw_CCA_basic := { charging_Rule_Install := ? } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +55 −1 Original line number Diff line number Diff line Loading @@ -38,13 +38,36 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCA(mw_CCA_modified_ResultCode(?, ?, ?, mw_resultCode(mw_resultCode_diameterSuccess))); f_awaiting_CCA(mw_CCA_modified_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, mw_resultCode(mw_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_01 /* * @desc This is the test case function TC_PCRF_IPS_02 * @param */ function f_TC_PCRF_IPS_02() runs on DiameterComponent { f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //f_send_CCR(m_CCR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, f_framedIpAddress4_send(),f_framedIpAddress6_send())); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_awaiting_CCA(mw_CCA_modified_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm)); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_02 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI Loading Loading @@ -100,6 +123,37 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCRF(); } // end function f_TC_PCEF_IPS_01 /* * @desc This is the test case function TC_PCEF_IPS_02 * @param */ function f_TC_PCEF_IPS_02() runs on DiameterComponent { f_preamble_PCRF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_awaiting_CCR(mw_CCR_sessionRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(INITIAL_REQUEST_E), f_framedIpAddress4(), f_framedIpAddress6(), mw_routing_Rule_Install)); 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_IPS_02 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI Loading
DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +2 −1 Original line number Diff line number Diff line Loading @@ -151,7 +151,8 @@ module DiameterGx_PIXITS modulepar octetstring PX_UE_framedIp6Address := 'ffffffff'O; /** @desc charstring, PIXIT item A.1/ /** @desc * avp_Data within CC_Request_Type_AVP is of enumerated type CC_Request_Ty_Type , */ modulepar CC_Request_Ty_Type PX_CC_REQUEST_TYPE := INITIAL_REQUEST_E; Loading
DiameterGx/ttcn/DiameterGx_Templates.ttcn +83 −22 Original line number Diff line number Diff line Loading @@ -38,6 +38,7 @@ module DiameterGx_Templates { } //end group DummyAVPHeaders group SpecificAVPHeaders { group sendingTemplatesForAVPs{ template Destination_Host_AVP m_destinationHost(charstring p_avpData) := { Loading Loading @@ -118,67 +119,102 @@ module DiameterGx_Templates { aVP_Data := p_avpData } template Framed_IP_Address_AVP mw_framedIpAddress(template (present) octetstring p_avpData) := template Network_Request_Support_AVP m_network_Request_Support(Network_Request_Support p_avpData) := { aVP_Header := aVP_Header := m_aVP_HeaderVid(c_vendIdNetwork_Request_Support_AVP, 4, omit), aVP_Data := p_avpData } template QoS_Information_AVP m_qoS_Information_APN_AMBR_UL := { aVP_Header := m_aVP_HeaderVid(c_vendIdQoS_Information_AVP, 12/*length aPN_Aggregate_Max_Bitrate_UL*/, omit), qoS_Class_Identifier := omit, max_Requested_Bandwidth_UL := omit, max_Requested_Bandwidth_DL := omit, guaranteed_Bitrate_UL := omit, guaranteed_Bitrate_DL := omit, bearer_Identifier := omit, allocation_Retention_Priority := omit, aPN_Aggregate_Max_Bitrate_UL := m_APN_Aggregate_Max_Bitrate_UL, aPN_Aggregate_Max_Bitrate_DL := omit, aVP_Type := omit } template APN_Aggregate_Max_Bitrate_UL_AVP m_APN_Aggregate_Max_Bitrate_UL:= { aVP_Code := ?, aVP_flags := {v_bit := ?, m_bit := ?, p_bit := ?, reserved_bits := ?}, aVP_len := ?, aVP_vid := ? }, aVP_Header := m_aVP_HeaderVid(c_vendIdAPN_Aggregate_Max_Bitrate_UL_AVP, 4, omit), aVP_Data := 100//PX_APN_Aggregate_Max_Bitrate_UL_AVP_DATA }; }//end group sendingTemplatesForAVPs group awaitingTemplatesForAVPs{ template Framed_IP_Address_AVP mw_framedIpAddress(template (present) octetstring p_avpData) := { aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Framed_IPv6_Prefix_AVP mw_framedIp6Address(template (present) octetstring p_avpData) := { aVP_Header := { aVP_Code := ?, aVP_flags := {v_bit := ?, m_bit := ?, p_bit := ?, reserved_bits := ?}, aVP_len := ?, aVP_vid := ? }, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Subscription_Id_AVP mw_subscription_Id(template Subscription_Id_Type_AVP p_typeAVP, template Subscription_Id_Data_AVP p_dataAVP):= template Subscription_Id_AVP mw_subscription_Id(Subscription_Id_Type_AVP p_typeAVP, Subscription_Id_Data_AVP p_dataAVP):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, subscription_Id_Type := p_typeAVP, subscription_Id_Data := p_dataAVP } template Subscription_Id_Type_AVP mw_subscription_Id_Type(Subscription_Id_Ty_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Subscription_Id_Data_AVP mw_subscription_Id_Data(UTF8String p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template IP_CAN_Type_AVP mw_iP_CAN_Type(IP_CAN_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template RAT_Type_AVP mw_rAT_Type(RAT_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template CC_Request_Type_AVP mw_cC_Request_Type(CC_Request_Ty_Type p_avpData):= { aVP_Header := ?, aVP_Header := mw_aVP_Header_any, aVP_Data := p_avpData } template Routing_Rule_Install_AVP mw_routing_Rule_Install := { aVP_Header := mw_aVP_Header_any, routing_Rule_Definition := {mw_routing_Rule_Definition}, aVP_Type := * }; template Routing_Rule_Definition_AVP mw_routing_Rule_Definition := { aVP_Header := mw_aVP_Header_any, routing_Rule_Identifier := ?, routing_Filter := ?, precedence := *, routing_IP_Address := *, aVP_Type := * }; }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -280,6 +316,24 @@ module DiameterGx_Templates { group Gxmodified_request_templates_send { template CCR_MSG m_CCR_allRequiredAVPs(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 Framed_IP_Address_AVP p_framedIpAddress, template Framed_IPv6_Prefix_AVP p_framedIp6Address) modifies m_CCR_basic := { network_Request_Support := m_network_Request_Support(NETWORK_REQUEST_SUPPORTED_E), qoS_Information := m_qoS_Information_APN_AMBR_UL, threeGPP_MS_TimeZone := omit, called_Station_Id := omit, pDN_Connection_ID := omit, bearer_Usage := omit, access_Network_Charging_Address := omit, access_Network_Charging_Identifier_Gx := omit, routing_Rule_Install := omit } } // end group Gxmodified_request_templates_send group Gxmodified_request_templates_receive { Loading Loading @@ -317,6 +371,13 @@ module DiameterGx_Templates { result_Code := p_resultCode } template CCA_MSG mw_CCA_modified_PCCrules_ChrgRuleInstall( template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm) modifies mw_CCA_basic := { charging_Rule_Install := ? } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading