Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +88 −45 Original line number Diff line number Diff line /** * @author STF 443 * @version $Id$ * @desc This module provides RX test functions used by the test cases * @desc This module provides GX test functions used by the test cases * for IMS-DIAMETER tests. */ module DiameterGx_Gx_TCFunctions { Loading @@ -21,6 +21,7 @@ module DiameterGx_Gx_TCFunctions { import from DiameterGx_Steps all; group TP_PCEFRole{ group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc This is the test case function TC_PCRF_IPS_01 Loading @@ -33,7 +34,7 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //f_send_CCR(m_CCR_basic());//TODO 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 Loading @@ -44,11 +45,32 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_01 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour }//end group TP_PCEFRole_INV group TP_PCEFRole_ST { //Session Termination }//end group TP_PCEFRole_ST group TP_PCEFRole_PCC { //PCC rules }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCEFRole_EMS group TP_PCEFRole_UMC { //Usage monitoring control }//end group TP_PCEFRole_UMC group TP_PCEFRole_IRS { //IMS Restoration Support }//end group TP_PCEFRole_IRS group TP_PCEFRole_MPS { //Multimedia Priority Support }//end group TP_PCEFRole_MPS group TP_PCEFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCEFRole_SDC group TP_PCEFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCEFRole_RAU } //end group TP_PCEFRole group TP_PCRFRole { group TP_PCRFRole_IPS { //Initial Provisioning Session /* * @desc This is the test case function TC_PCEF_IPS_01 * @param Loading @@ -71,6 +93,27 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCRF(); } // end function f_TC_PCEF_IPS_01 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI group TP_PCRFRole_INV { //Invalid Behaviour }//end group TP_PCRFRole_INV group TP_PCRFRole_ST { //Session Termination }//end group TP_PCRFRole_ST group TP_PCRFRole_PCC { //PCC rules }//end group TP_PCRFRole_PCC group TP_PCRFRole_EMS { //Emergency services }//end group TP_PCRFRole_EMS group TP_PCRFRole_UMC { //Usage monitoring control }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC group TP_PCRFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCRFRole_RAU } //end group TP_PCRFRole Loading DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +58 −0 Original line number Diff line number Diff line Loading @@ -113,6 +113,64 @@ module DiameterGx_PIXITS */ modulepar charstring PX_DestinationRealm := "myalupcrf.vf.de"; /** @desc octetstring , PIXIT item A.1/ (This is an operator option, not a protocol option), UE IP address: The Framed-IP-Address AVP (AVP Code 8) [RADIUS] is of type OctetString and contains an IPv4 address of the type specified in the attribute value to be configured for the user. It MAY be used in an authorization request as a hint to the server that a specific address is desired, but the server is not required to honor the hint in the corresponding response. Two values have special significance: 0xFFFFFFFF and 0xFFFFFFFE. The value 0xFFFFFFFF indicates that the NAS should allow the user to select an address (i.e., negotiated). The value 0xFFFFFFFE indicates that the NAS should select an address for the user (e.g., assigned from a pool of addresses kept by the NAS). Ref: TS 129 214 5-4, table 5-4-1 */ modulepar octetstring PX_UE_framedIpAddress := 'ffffffff'O; /** @desc octetstring, PIXIT item A.1/ (This is an operator option, not a protocol option), UE IP6 address: The Framed-IPv6-Prefix AVP (AVP Code 97) is of type OctetString and contains the IPv6 prefix to be configured for the user. One or more AVPs MAY be used in authorization requests as a hint to the server that specific IPv6 prefixes are desired, but the server is not required to honor the hint in the corresponding response. Ref: TS 129 214 5-4, table 5-4-1 */ modulepar octetstring PX_UE_framedIp6Address := 'ffffffff'O; /** @desc charstring, PIXIT item A.1/ */ modulepar CC_Request_Ty_Type PX_CC_REQUEST_TYPE := INITIAL_REQUEST_E; /** @desc charstring, PIXIT item A.1/ */ modulepar Subscription_Id_Ty_Type PX_SUBSCRIPTION_ID_TYPE := END_USER_IMSI_E; /** @desc charstring, PIXIT item A.1/ */ modulepar UTF8String PX_SUBSCRIPTION_ID_DATA := "SUBS_DATA"; /** @desc charstring, PIXIT item A.1/ */ modulepar IP_CAN_Type PX_IP_CAN_TYPE := ThreeGPP_GPRS_E; /** @desc charstring, PIXIT item A.1/ */ modulepar RAT_Type PX_RAT_TYPE := WLAN_E; } //end group DiameterCommonGxData } // end module DiameterGx_PIXITS No newline at end of file DiameterGx/ttcn/DiameterGx_Steps.ttcn3 +16 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,22 @@ group AVPOperations { function f_framedIpAddress4_send () return template Framed_IP_Address_AVP { if (PX_IPv6) {return(omit)} else {return(m_framedIpAddress(PX_UE_framedIpAddress))} } function f_framedIpAddress6_send () return template Framed_IPv6_Prefix_AVP { if (PX_IPv6) {return(m_framedIp6Address(PX_UE_framedIp6Address))} else {return(omit)} } }//end group AVPOperations group DefaultAltsteps { Loading DiameterGx/ttcn/DiameterGx_Templates.ttcn +70 −1 Original line number Diff line number Diff line Loading @@ -62,6 +62,55 @@ module DiameterGx_Templates { aVP_Header := m_aVP_HeaderVid(c_vendIdAuth_Application_Id_AVP, 4, omit), aVP_Data := p_avpData } //TODO template CC_Request_Type_AVP m_cC_Request_Type(CC_Request_Ty_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdCC_Request_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_AVP m_subscription_Id(Subscription_Id_Type_AVP p_typeAVP, Subscription_Id_Data_AVP p_dataAVP):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_AVP, (0/*check if headers length need to be added)*/+p_typeAVP.aVP_Header.aVP_len+p_dataAVP.aVP_Header.aVP_len), omit), subscription_Id_Type := p_typeAVP, subscription_Id_Data := p_dataAVP } template IP_CAN_Type_AVP m_iP_CAN_Type(IP_CAN_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdIP_CAN_Type_AVP, 4, omit), aVP_Data := p_avpData } template RAT_Type_AVP m_rAT_Type(RAT_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdRAT_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_Type_AVP m_subscription_Id_Type(Subscription_Id_Ty_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_Data_AVP m_subscription_Id_Data(UTF8String p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_Data_AVP, 4, omit), aVP_Data := p_avpData } template Framed_IP_Address_AVP m_framedIpAddress(template (value) octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFramed_IP_Address_AVP, lengthof(p_avpData), omit), aVP_Data := p_avpData } template Framed_IPv6_Prefix_AVP m_framedIp6Address(template (value) octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFramed_IPv6_Prefix_AVP, lengthof(p_avpData), omit), aVP_Data := p_avpData } } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading @@ -87,6 +136,26 @@ module DiameterGx_Templates { group Gxbasic_request_templates_send { template CCR_MSG m_CCR_basic(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_dummy := { header := m_diameterHeaderReq_dummy(CCR_E, c_applIdGx), session_Id := p_sessionId, origin_Host := p_originHost, origin_Realm := p_originRealm, destination_Realm := p_destinationRealm, auth_Application_Id := m_authApplicationId(c_applIdGx), cC_Request_Type := m_cC_Request_Type(PX_CC_REQUEST_TYPE), subscription_Id := {m_subscription_Id(m_subscription_Id_Type(PX_SUBSCRIPTION_ID_TYPE),m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))}, framed_IP_Address := p_framedIpAddress, framed_IPv6_Prefix := p_framedIp6Address, iP_CAN_Type := m_iP_CAN_Type(PX_IP_CAN_TYPE), rAT_Type := m_rAT_Type(PX_RAT_TYPE) } } // end group Gxbasic_request_templates_send group Gxbasic_request_templates_receive { Loading DiameterGx/ttcn/DiameterGx_TestCases.ttcn +83 −2 Original line number Diff line number Diff line Loading @@ -22,25 +22,56 @@ module DiameterGx_TestCases group TP_PCEFRole { group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCEF_IPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCEF_IPS_01() 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_IPS_01()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_IPS_01 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour }//end group TP_PCEFRole_INV group TP_PCEFRole_ST { //Session Termination }//end group TP_PCEFRole_ST group TP_PCEFRole_PCC { //PCC rules }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCEFRole_EMS group TP_PCEFRole_UMC { //Usage monitoring control }//end group TP_PCEFRole_UMC group TP_PCEFRole_IRS { //IMS Restoration Support }//end group TP_PCEFRole_IRS group TP_PCEFRole_MPS { //Multimedia Priority Support }//end group TP_PCEFRole_MPS group TP_PCEFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCEFRole_SDC group TP_PCEFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCEFRole_RAU Loading @@ -49,8 +80,58 @@ module DiameterGx_TestCases }//end group TP_PCEFRole group TP_PCRFRole { group TP_PCRFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCRF_IPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IPS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; f_cf_1GxEUp(v_diameterComponent_pcef); //Start v_diameterComponent_pcef.start(f_TC_PCRF_IPS_01()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxEDown(v_diameterComponent_pcef); } // end TC_PCRF_IPS_01 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI group TP_PCRFRole_INV { //Invalid Behaviour }//end group TP_PCRFRole_INV group TP_PCRFRole_ST { //Session Termination }//end group TP_PCRFRole_ST group TP_PCRFRole_PCC { //PCC rules }//end group TP_PCRFRole_PCC group TP_PCRFRole_EMS { //Emergency services }//end group TP_PCRFRole_EMS group TP_PCRFRole_UMC { //Usage monitoring control }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC group TP_PCRFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCRFRole_RAU } //end group TP_PCRFRole Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +88 −45 Original line number Diff line number Diff line /** * @author STF 443 * @version $Id$ * @desc This module provides RX test functions used by the test cases * @desc This module provides GX test functions used by the test cases * for IMS-DIAMETER tests. */ module DiameterGx_Gx_TCFunctions { Loading @@ -21,6 +21,7 @@ module DiameterGx_Gx_TCFunctions { import from DiameterGx_Steps all; group TP_PCEFRole{ group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc This is the test case function TC_PCRF_IPS_01 Loading @@ -33,7 +34,7 @@ module DiameterGx_Gx_TCFunctions { f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //f_send_CCR(m_CCR_basic());//TODO 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 Loading @@ -44,11 +45,32 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCEF(); } // end function f_TC_PCRF_IPS_01 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour }//end group TP_PCEFRole_INV group TP_PCEFRole_ST { //Session Termination }//end group TP_PCEFRole_ST group TP_PCEFRole_PCC { //PCC rules }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCEFRole_EMS group TP_PCEFRole_UMC { //Usage monitoring control }//end group TP_PCEFRole_UMC group TP_PCEFRole_IRS { //IMS Restoration Support }//end group TP_PCEFRole_IRS group TP_PCEFRole_MPS { //Multimedia Priority Support }//end group TP_PCEFRole_MPS group TP_PCEFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCEFRole_SDC group TP_PCEFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCEFRole_RAU } //end group TP_PCEFRole group TP_PCRFRole { group TP_PCRFRole_IPS { //Initial Provisioning Session /* * @desc This is the test case function TC_PCEF_IPS_01 * @param Loading @@ -71,6 +93,27 @@ module DiameterGx_Gx_TCFunctions { f_postamble_PCRF(); } // end function f_TC_PCEF_IPS_01 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI group TP_PCRFRole_INV { //Invalid Behaviour }//end group TP_PCRFRole_INV group TP_PCRFRole_ST { //Session Termination }//end group TP_PCRFRole_ST group TP_PCRFRole_PCC { //PCC rules }//end group TP_PCRFRole_PCC group TP_PCRFRole_EMS { //Emergency services }//end group TP_PCRFRole_EMS group TP_PCRFRole_UMC { //Usage monitoring control }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC group TP_PCRFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCRFRole_RAU } //end group TP_PCRFRole Loading
DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +58 −0 Original line number Diff line number Diff line Loading @@ -113,6 +113,64 @@ module DiameterGx_PIXITS */ modulepar charstring PX_DestinationRealm := "myalupcrf.vf.de"; /** @desc octetstring , PIXIT item A.1/ (This is an operator option, not a protocol option), UE IP address: The Framed-IP-Address AVP (AVP Code 8) [RADIUS] is of type OctetString and contains an IPv4 address of the type specified in the attribute value to be configured for the user. It MAY be used in an authorization request as a hint to the server that a specific address is desired, but the server is not required to honor the hint in the corresponding response. Two values have special significance: 0xFFFFFFFF and 0xFFFFFFFE. The value 0xFFFFFFFF indicates that the NAS should allow the user to select an address (i.e., negotiated). The value 0xFFFFFFFE indicates that the NAS should select an address for the user (e.g., assigned from a pool of addresses kept by the NAS). Ref: TS 129 214 5-4, table 5-4-1 */ modulepar octetstring PX_UE_framedIpAddress := 'ffffffff'O; /** @desc octetstring, PIXIT item A.1/ (This is an operator option, not a protocol option), UE IP6 address: The Framed-IPv6-Prefix AVP (AVP Code 97) is of type OctetString and contains the IPv6 prefix to be configured for the user. One or more AVPs MAY be used in authorization requests as a hint to the server that specific IPv6 prefixes are desired, but the server is not required to honor the hint in the corresponding response. Ref: TS 129 214 5-4, table 5-4-1 */ modulepar octetstring PX_UE_framedIp6Address := 'ffffffff'O; /** @desc charstring, PIXIT item A.1/ */ modulepar CC_Request_Ty_Type PX_CC_REQUEST_TYPE := INITIAL_REQUEST_E; /** @desc charstring, PIXIT item A.1/ */ modulepar Subscription_Id_Ty_Type PX_SUBSCRIPTION_ID_TYPE := END_USER_IMSI_E; /** @desc charstring, PIXIT item A.1/ */ modulepar UTF8String PX_SUBSCRIPTION_ID_DATA := "SUBS_DATA"; /** @desc charstring, PIXIT item A.1/ */ modulepar IP_CAN_Type PX_IP_CAN_TYPE := ThreeGPP_GPRS_E; /** @desc charstring, PIXIT item A.1/ */ modulepar RAT_Type PX_RAT_TYPE := WLAN_E; } //end group DiameterCommonGxData } // end module DiameterGx_PIXITS No newline at end of file
DiameterGx/ttcn/DiameterGx_Steps.ttcn3 +16 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,22 @@ group AVPOperations { function f_framedIpAddress4_send () return template Framed_IP_Address_AVP { if (PX_IPv6) {return(omit)} else {return(m_framedIpAddress(PX_UE_framedIpAddress))} } function f_framedIpAddress6_send () return template Framed_IPv6_Prefix_AVP { if (PX_IPv6) {return(m_framedIp6Address(PX_UE_framedIp6Address))} else {return(omit)} } }//end group AVPOperations group DefaultAltsteps { Loading
DiameterGx/ttcn/DiameterGx_Templates.ttcn +70 −1 Original line number Diff line number Diff line Loading @@ -62,6 +62,55 @@ module DiameterGx_Templates { aVP_Header := m_aVP_HeaderVid(c_vendIdAuth_Application_Id_AVP, 4, omit), aVP_Data := p_avpData } //TODO template CC_Request_Type_AVP m_cC_Request_Type(CC_Request_Ty_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdCC_Request_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_AVP m_subscription_Id(Subscription_Id_Type_AVP p_typeAVP, Subscription_Id_Data_AVP p_dataAVP):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_AVP, (0/*check if headers length need to be added)*/+p_typeAVP.aVP_Header.aVP_len+p_dataAVP.aVP_Header.aVP_len), omit), subscription_Id_Type := p_typeAVP, subscription_Id_Data := p_dataAVP } template IP_CAN_Type_AVP m_iP_CAN_Type(IP_CAN_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdIP_CAN_Type_AVP, 4, omit), aVP_Data := p_avpData } template RAT_Type_AVP m_rAT_Type(RAT_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdRAT_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_Type_AVP m_subscription_Id_Type(Subscription_Id_Ty_Type p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_Type_AVP, 4, omit), aVP_Data := p_avpData } template Subscription_Id_Data_AVP m_subscription_Id_Data(UTF8String p_avpData):= { aVP_Header := m_aVP_HeaderVid(c_vendIdSubscription_Id_Data_AVP, 4, omit), aVP_Data := p_avpData } template Framed_IP_Address_AVP m_framedIpAddress(template (value) octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFramed_IP_Address_AVP, lengthof(p_avpData), omit), aVP_Data := p_avpData } template Framed_IPv6_Prefix_AVP m_framedIp6Address(template (value) octetstring p_avpData) := { aVP_Header := m_aVP_HeaderVid(c_vendIdFramed_IPv6_Prefix_AVP, lengthof(p_avpData), omit), aVP_Data := p_avpData } } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading @@ -87,6 +136,26 @@ module DiameterGx_Templates { group Gxbasic_request_templates_send { template CCR_MSG m_CCR_basic(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_dummy := { header := m_diameterHeaderReq_dummy(CCR_E, c_applIdGx), session_Id := p_sessionId, origin_Host := p_originHost, origin_Realm := p_originRealm, destination_Realm := p_destinationRealm, auth_Application_Id := m_authApplicationId(c_applIdGx), cC_Request_Type := m_cC_Request_Type(PX_CC_REQUEST_TYPE), subscription_Id := {m_subscription_Id(m_subscription_Id_Type(PX_SUBSCRIPTION_ID_TYPE),m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))}, framed_IP_Address := p_framedIpAddress, framed_IPv6_Prefix := p_framedIp6Address, iP_CAN_Type := m_iP_CAN_Type(PX_IP_CAN_TYPE), rAT_Type := m_rAT_Type(PX_RAT_TYPE) } } // end group Gxbasic_request_templates_send group Gxbasic_request_templates_receive { Loading
DiameterGx/ttcn/DiameterGx_TestCases.ttcn +83 −2 Original line number Diff line number Diff line Loading @@ -22,25 +22,56 @@ module DiameterGx_TestCases group TP_PCEFRole { group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCEF_IPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCEF_IPS_01() 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_IPS_01()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_IPS_01 }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information }//end group TP_PCEFRole_MSI group TP_PCEFRole_INV { //Invalid Behaviour }//end group TP_PCEFRole_INV group TP_PCEFRole_ST { //Session Termination }//end group TP_PCEFRole_ST group TP_PCEFRole_PCC { //PCC rules }//end group TP_PCEFRole_PCC group TP_PCEFRole_EMS { //Emergency services }//end group TP_PCEFRole_EMS group TP_PCEFRole_UMC { //Usage monitoring control }//end group TP_PCEFRole_UMC group TP_PCEFRole_IRS { //IMS Restoration Support }//end group TP_PCEFRole_IRS group TP_PCEFRole_MPS { //Multimedia Priority Support }//end group TP_PCEFRole_MPS group TP_PCEFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCEFRole_SDC group TP_PCEFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCEFRole_RAU Loading @@ -49,8 +80,58 @@ module DiameterGx_TestCases }//end group TP_PCEFRole group TP_PCRFRole { group TP_PCRFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCRF_IPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IPS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; f_cf_1GxEUp(v_diameterComponent_pcef); //Start v_diameterComponent_pcef.start(f_TC_PCRF_IPS_01()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxEDown(v_diameterComponent_pcef); } // end TC_PCRF_IPS_01 }//end group TP_PCRFRole_IPS group TP_PCRFRole_MSI { //Modification of Session Information }//end group TP_PCRFRole_MSI group TP_PCRFRole_INV { //Invalid Behaviour }//end group TP_PCRFRole_INV group TP_PCRFRole_ST { //Session Termination }//end group TP_PCRFRole_ST group TP_PCRFRole_PCC { //PCC rules }//end group TP_PCRFRole_PCC group TP_PCRFRole_EMS { //Emergency services }//end group TP_PCRFRole_EMS group TP_PCRFRole_UMC { //Usage monitoring control }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC group TP_PCRFRole_RAU { //Reporting Accumulated Usage }//end group TP_PCRFRole_RAU } //end group TP_PCRFRole Loading