Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +88 −0 Original line number Diff line number Diff line Loading @@ -831,9 +831,97 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCRF_UMC_01 }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support /* * @desc This is the test case function TC_PCRF_IRS_01 * @param */ function f_TC_PCRF_IRS_01() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //IUT install dynamic PCC rules, f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleInstall_Definition(mw_chrgRuleDefinition_flowInfoAfSigProt(mw_flowInformation_direction, ?)))); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IRS_01 /* * @desc This is the test case function TC_PCRF_IRS_02 * @param */ function f_TC_PCRF_IRS_02() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); // RAR due to session opening f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleInstall_Definition(mw_chrgRuleDefinition_flowInfoAfSigProt(mw_flowInformation_direction, ?)))); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // RAR due to session closing f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleRemove(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleRemove_Name)); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IRS_02 }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support /* * @desc This is the test case function TC_PCRF_MPS_01 * @param */ function f_TC_PCRF_MPS_01() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_CCR(m_CCR_InitialRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, f_framedIpAddress4_send(),f_framedIpAddress6_send())); f_awaiting_CCA(mw_CCA_QosInfo(vc_sessionId, vc_originHost, vc_originRealm, {mw_qosInformation_QosInfo_ARP} )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_MPS_01 }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC Loading DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +6 −0 Original line number Diff line number Diff line Loading @@ -258,6 +258,12 @@ module DiameterGx_PIXITS */ modulepar Offline PX_OFFLINE_DATA := DISABLE_OFFLINE_E; /** @desc octectstring, PIXIT item A.1/ * avp_Data within MPS_Identifier_AVP is of octectstring type * (parameter is part of AAR message) */ modulepar octetstring PX_MPS_IDENTIFIER := '01020304050607'O; /** @desc enumerated type PCC_Rule_Status, PIXIT item A.1/ * avp_Data within Online_AVP is of enumerated type Online */ Loading DiameterGx/ttcn/DiameterGx_Rx_TCFunctions.ttcn +106 −3 Original line number Diff line number Diff line Loading @@ -8,15 +8,118 @@ module DiameterGx_Rx_TCFunctions { // LibCommon import from LibCommon_Sync {function f_selfOrClientSyncAndVerdict; const c_prDone, c_tbDone, c_poDone;} // LibDiameter import from LibDiameter_TypesAndValues all; import from LibDiameter_Templates all; import from LibDiameter_Interface all; import from LibDiameter_Steps all; // DiameterRx import from DiameterRx_Templates all; import from DiameterRx_Steps all; import from DiameterGx_PIXITS all; // PCRF is TS and ports for Gx and Rx interface will be used group TP_B{ //Used in case if PCRF is TS and ports for Gx and Rx interface will be used } //end group TP_B group TP_PCRFRole { /* * @desc This is the test case function TC_PCRF_OpenSession * @param */ function f_TC_PCRF_OpenSession() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); f_send_AAR(m_AAR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost)); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenSession /* * @desc This is the test case function TC_PCRF_OpemSession * @param */ function f_TC_PCRF_OpenCloseSession() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); // tester (AF role) intitiates esthablishment f_send_AAR(m_AAR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost)); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session // tester (AF role) intitiates termination f_send_STR(m_STR_basic(vc_sessionId, vc_originHost, // Tester initiates termination vc_originRealm, vc_destinationRealm, m_terminationCause(DIAMETER_LOGOUT_E))); f_awaiting_STA(mw_STA_dummy); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenCloseSession /* * @desc This is the test case function TC_PCRF_OpenSessionPrio * @param */ function f_TC_PCRF_OpenSessionPrio() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); f_send_AAR(m_AAR_Priority(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_mpsIdentifier(PX_MPS_IDENTIFIER), m_reservationPriority(PRIORITY_ONE_E))); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenSessionPrio }//end group TP_PCRFRole } // end module DiameterGx_Rx_TCFunctions No newline at end of file DiameterGx/ttcn/DiameterGx_Templates.ttcn +36 −1 Original line number Diff line number Diff line Loading @@ -169,6 +169,20 @@ module DiameterGx_Templates { aVP_Type := * } template Flow_Information_AVP mw_flowInformation_dummy := { aVP_Header := mw_aVP_Header_any, flow_Description := *, packet_Filter_Identifier := *, packet_Filter_Usage := *, toS_Traffic_Class := *, security_Parameter_Index := *, flow_Label := *, flow_Direction := *, aVP_Type := * } } //end group DummyAVPHeaders group SpecificAVPHeaders { Loading Loading @@ -638,6 +652,13 @@ module DiameterGx_Templates { charging_Rule_Name := mw_chrgRuleName } template Charging_Rule_Definition_AVP mw_chrgRuleDefinition_flowInfoAfSigProt(template Flow_Information_AVP p_flowInfo, template AF_Signalling_Protocol_AVP p_AfSigProt) modifies mw_chrgRuleDefinition_dummy:= { aVP_Header := mw_aVP_Header_any, flow_Information := {p_flowInfo}, aF_Signalling_Protocol := p_AfSigProt } template Charging_Rule_Definition_AVP mw_chrgRuleDefinition_qosInfoNoBearerID modifies mw_chrgRuleDefinition_dummy:= { aVP_Header := mw_aVP_Header_any, Loading Loading @@ -716,6 +737,11 @@ module DiameterGx_Templates { aVP_Data := p_aVP_Data } template Flow_Information_AVP mw_flowInformation_direction modifies mw_flowInformation_dummy := { flow_Direction := ? } }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -1120,6 +1146,15 @@ module DiameterGx_Templates { usage_Monitoring_Information := {mw_usageMonitoringInfo_Key_GrantedServiceUnit} } template CCA_MSG mw_CCA_QosInfo( template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template QoS_Information_AVP_setof p_qosInformation) modifies mw_CCA_basic := { qoS_Information := p_qosInformation } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading DiameterGx/ttcn/DiameterGx_TestCases.ttcn +71 −0 Original line number Diff line number Diff line Loading @@ -596,9 +596,80 @@ module DiameterGx_TestCases }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support /* * @desc TC_PCRF_IRS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IRS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_IRS_01()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenSession()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_IRS_01 /* * @desc TC_PCRF_IRS_02 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IRS_02() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_IRS_02()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenCloseSession()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_IRS_02 }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support /* * @desc TC_PCRF_MPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_MPS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_MPS_01()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenSessionPrio()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_MPS_01 }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +88 −0 Original line number Diff line number Diff line Loading @@ -831,9 +831,97 @@ module DiameterGx_Gx_TCFunctions { } // end function f_TC_PCRF_UMC_01 }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support /* * @desc This is the test case function TC_PCRF_IRS_01 * @param */ function f_TC_PCRF_IRS_01() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync //IUT install dynamic PCC rules, f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleInstall_Definition(mw_chrgRuleDefinition_flowInfoAfSigProt(mw_flowInformation_direction, ?)))); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IRS_01 /* * @desc This is the test case function TC_PCRF_IRS_02 * @param */ function f_TC_PCRF_IRS_02() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); // RAR due to session opening f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleInstall_Definition(mw_chrgRuleDefinition_flowInfoAfSigProt(mw_flowInformation_direction, ?)))); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // RAR due to session closing f_awaiting_RAR(mw_RAR_PCCrules_ChrgRuleRemove(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, mw_chrgRuleRemove_Name)); f_send_RAA(m_RAA_ResultCode(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess))); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_IRS_02 }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support /* * @desc This is the test case function TC_PCRF_MPS_01 * @param */ function f_TC_PCRF_MPS_01() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_PCEF(); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_send_CCR(m_CCR_InitialRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, f_framedIpAddress4_send(),f_framedIpAddress6_send())); f_awaiting_CCA(mw_CCA_QosInfo(vc_sessionId, vc_originHost, vc_originRealm, {mw_qosInformation_QosInfo_ARP} )); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_PCEF(); } // end function f_TC_PCRF_MPS_01 }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity }//end group TP_PCRFRole_SDC Loading
DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +6 −0 Original line number Diff line number Diff line Loading @@ -258,6 +258,12 @@ module DiameterGx_PIXITS */ modulepar Offline PX_OFFLINE_DATA := DISABLE_OFFLINE_E; /** @desc octectstring, PIXIT item A.1/ * avp_Data within MPS_Identifier_AVP is of octectstring type * (parameter is part of AAR message) */ modulepar octetstring PX_MPS_IDENTIFIER := '01020304050607'O; /** @desc enumerated type PCC_Rule_Status, PIXIT item A.1/ * avp_Data within Online_AVP is of enumerated type Online */ Loading
DiameterGx/ttcn/DiameterGx_Rx_TCFunctions.ttcn +106 −3 Original line number Diff line number Diff line Loading @@ -8,15 +8,118 @@ module DiameterGx_Rx_TCFunctions { // LibCommon import from LibCommon_Sync {function f_selfOrClientSyncAndVerdict; const c_prDone, c_tbDone, c_poDone;} // LibDiameter import from LibDiameter_TypesAndValues all; import from LibDiameter_Templates all; import from LibDiameter_Interface all; import from LibDiameter_Steps all; // DiameterRx import from DiameterRx_Templates all; import from DiameterRx_Steps all; import from DiameterGx_PIXITS all; // PCRF is TS and ports for Gx and Rx interface will be used group TP_B{ //Used in case if PCRF is TS and ports for Gx and Rx interface will be used } //end group TP_B group TP_PCRFRole { /* * @desc This is the test case function TC_PCRF_OpenSession * @param */ function f_TC_PCRF_OpenSession() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); f_send_AAR(m_AAR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost)); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenSession /* * @desc This is the test case function TC_PCRF_OpemSession * @param */ function f_TC_PCRF_OpenCloseSession() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); // tester (AF role) intitiates esthablishment f_send_AAR(m_AAR_basic(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost)); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session // tester (AF role) intitiates termination f_send_STR(m_STR_basic(vc_sessionId, vc_originHost, // Tester initiates termination vc_originRealm, vc_destinationRealm, m_terminationCause(DIAMETER_LOGOUT_E))); f_awaiting_STA(mw_STA_dummy); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenCloseSession /* * @desc This is the test case function TC_PCRF_OpenSessionPrio * @param */ function f_TC_PCRF_OpenSessionPrio() runs on DiameterComponent { var boolean v_cc_xx_octets_present; f_preamble_AF(); f_send_AAR(m_AAR_Priority(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_mpsIdentifier(PX_MPS_IDENTIFIER), m_reservationPriority(PRIORITY_ONE_E))); f_awaiting_AAA(mw_AAA_dummy); // IUT esthablish Diameter session f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync f_postamble_AF(); } // end function f_TC_PCRF_OpenSessionPrio }//end group TP_PCRFRole } // end module DiameterGx_Rx_TCFunctions No newline at end of file
DiameterGx/ttcn/DiameterGx_Templates.ttcn +36 −1 Original line number Diff line number Diff line Loading @@ -169,6 +169,20 @@ module DiameterGx_Templates { aVP_Type := * } template Flow_Information_AVP mw_flowInformation_dummy := { aVP_Header := mw_aVP_Header_any, flow_Description := *, packet_Filter_Identifier := *, packet_Filter_Usage := *, toS_Traffic_Class := *, security_Parameter_Index := *, flow_Label := *, flow_Direction := *, aVP_Type := * } } //end group DummyAVPHeaders group SpecificAVPHeaders { Loading Loading @@ -638,6 +652,13 @@ module DiameterGx_Templates { charging_Rule_Name := mw_chrgRuleName } template Charging_Rule_Definition_AVP mw_chrgRuleDefinition_flowInfoAfSigProt(template Flow_Information_AVP p_flowInfo, template AF_Signalling_Protocol_AVP p_AfSigProt) modifies mw_chrgRuleDefinition_dummy:= { aVP_Header := mw_aVP_Header_any, flow_Information := {p_flowInfo}, aF_Signalling_Protocol := p_AfSigProt } template Charging_Rule_Definition_AVP mw_chrgRuleDefinition_qosInfoNoBearerID modifies mw_chrgRuleDefinition_dummy:= { aVP_Header := mw_aVP_Header_any, Loading Loading @@ -716,6 +737,11 @@ module DiameterGx_Templates { aVP_Data := p_aVP_Data } template Flow_Information_AVP mw_flowInformation_direction modifies mw_flowInformation_dummy := { flow_Direction := ? } }//end group awaitingTemplatesForAVPs } //end group SpecificAVPHeaders } //end group HeaderFieldTemplates Loading Loading @@ -1120,6 +1146,15 @@ module DiameterGx_Templates { usage_Monitoring_Information := {mw_usageMonitoringInfo_Key_GrantedServiceUnit} } template CCA_MSG mw_CCA_QosInfo( template Session_Id_AVP p_sessionId, template Origin_Host_AVP p_originHost, template Origin_Realm_AVP p_originRealm, template QoS_Information_AVP_setof p_qosInformation) modifies mw_CCA_basic := { qoS_Information := p_qosInformation } } // end group Gxmodified_answer_templates_receive } //end group Gxmodified_templates Loading
DiameterGx/ttcn/DiameterGx_TestCases.ttcn +71 −0 Original line number Diff line number Diff line Loading @@ -596,9 +596,80 @@ module DiameterGx_TestCases }//end group TP_PCRFRole_UMC group TP_PCRFRole_IRS { //IMS Restoration Support /* * @desc TC_PCRF_IRS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IRS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_IRS_01()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenSession()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_IRS_01 /* * @desc TC_PCRF_IRS_02 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_IRS_02() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_IRS_02()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenCloseSession()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_IRS_02 }//end group TP_PCRFRole_IRS group TP_PCRFRole_MPS { //Multimedia Priority Support /* * @desc TC_PCRF_MPS_01 * @param p_cSeq_s Transaction Id */ testcase TC_PCRF_MPS_01() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcef; var DiameterComponent v_diameterComponent_af; f_cf_1Gx1RxUp(v_diameterComponent_pcef,v_diameterComponent_af); //Start v_diameterComponent_pcef.start(DiameterGx_Gx_TCFunctions.f_TC_PCRF_MPS_01()); v_diameterComponent_af.start(DiameterGx_Rx_TCFunctions.f_TC_PCRF_OpenSessionPrio()); // synchronize 2 PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx1RxDown(v_diameterComponent_pcef,v_diameterComponent_af); } // end TC_PCRF_MPS_01 }//end group TP_PCRFRole_MPS group TP_PCRFRole_SDC { //Sponsored Data Connectivity Loading