Loading DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +48 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ module DiameterGx_Gx_TCFunctions { import from DiameterGx_PIXITS all; import from DiameterGx_Templates all; import from DiameterGx_Steps all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; import from LibGtp_Templates all; import from LibGtp_Steps all; import from LibGtp_Interface all; group TP_PCRFRole{ group TP_PCRFRole_IPS { //Initial Provisioning Session Loading Loading @@ -178,4 +183,47 @@ module DiameterGx_Gx_TCFunctions { } //end group TP_PCEFRole group GTP_Role { /* * @desc This is the test case function for GTP component 1 to trigger the PCEF * @param */ function f_TC_GTP_01() runs on GtpComponent { activate(a_echoResponse()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync GTP.send (m_gtp_v1_dummy); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_GTP_01 /* * @desc This is the test case function for GTP component 2 to serve the triggered PCEF * @param */ function f_TC_GTP_02() runs on GtpComponent { activate(a_echoResponse()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync GTP.receive (m_gtp_v1_dummy); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_GTP_02 } } // end module DiameterGx_Gx_TCFunctions DiameterGx/ttcn/DiameterGx_TestCases.ttcn +31 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ module DiameterGx_TestCases import from DiameterGx_Rx_TCFunctions all; import from DiameterGx_Gx_TCFunctions all; import from DiameterGx_PICS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group TP_PCEFRole { Loading @@ -43,6 +45,35 @@ module DiameterGx_TestCases f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_IPS_01 /* * @desc TC_PCEF_IPS_01_ * @param p_cSeq_s Transaction Id * * Testconfiguration with GTP components */ testcase TC_PCEF_IPS_01_() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcrf; var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_cf_1Gx2GtpRUp(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_01()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02()); // synchronize PTC on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); } // end TC_PCEF_IPS_01_ }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information Loading DiameterGx/ttcn/DiameterGx_TestConfiguration.ttcn +53 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,8 @@ module DiameterGx_TestConfiguration //AtsIms import from DiameterGx_TestSystem all; import from DiameterGx_PIXITS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group cfUp { Loading Loading @@ -72,6 +74,34 @@ module DiameterGx_TestConfiguration f_setVerdict(v_ret); }//end f_cf_1GxRUp /** * * @desc Creates test configuration of CF_1Gx - PCEF is SUT * @param p_diameterComponent_pcrf pcrf component, 2 GTP components */ function f_cf_1Gx2GtpRUp(out DiameterComponent p_diameterComponent_pcrf, out GtpComponent p_gtpComponent1, out GtpComponent p_gtpComponent2) runs on ServerSyncComp { //Variables var FncRetCode v_ret := e_success; //Create p_diameterComponent_pcrf := DiameterComponent.create ; p_gtpComponent1 := GtpComponent.create ; p_gtpComponent2 := GtpComponent.create ; //Connect connect(p_diameterComponent_pcrf:syncPort, self:syncPort) ; //Map map(p_diameterComponent_pcrf:DIAMP, system:PCRF);// Diameter Init test Configuration if (PX_DIAM_LLP_ENABLED){ map(p_diameterComponent_pcrf:LLPP, system:LLIMS);// Lower Layer Primitive Init test Configuration } f_setVerdict(v_ret); }//end f_cf_1GxRUp }//end group cfUp group cfDown { Loading Loading @@ -112,7 +142,29 @@ module DiameterGx_TestConfiguration if (PX_DIAM_LLP_ENABLED){ unmap(p_diameterComponent_pcrf:LLPP, system:LLIMS); } }//end f_cf_1GxEDown }//end f_cf_1GxRDown /** * * @desc Deletes configuration of CF_1GxR - PCEF is SUT * @param p_diameterComponent_ims diameter component, two GTP-C components */ function f_cf_1Gx2GtpRDown(in DiameterComponent p_diameterComponent_pcrf, in GtpComponent p_gtpComponent1, in GtpComponent p_gtpComponent2) runs on ServerSyncComp { f_serverWaitForAllClientsToStop(); //Disconnect disconnect(p_diameterComponent_pcrf:syncPort, self:syncPort); disconnect(p_gtpComponent1:syncPort, self:syncPort); disconnect(p_gtpComponent2:syncPort, self:syncPort); //Unmap unmap(p_diameterComponent_pcrf:DIAMP, system:PCRF); if (PX_DIAM_LLP_ENABLED){ unmap(p_diameterComponent_pcrf:LLPP, system:LLIMS); } }//end f_cf_1Gx2GtpRDown } //end group cfDown Loading DiameterGx/ttcn/DiameterGx_TestSystem.ttcn +3 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ module DiameterGx_TestSystem import from LibDiameter_Interface all; //AtsIms import from DiameterGx_PIXITS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group CMTypes { type charstring CM_Message; Loading @@ -32,6 +34,7 @@ module DiameterGx_TestSystem type component TestAdapter { port LowerLayerPPort LLPCRF, LLIMS; port DiameterPort PCRF, PCEF; port GtpPort GTP; } } // end Group TestSystemInterfaces }// end group TestComponents Loading Loading
DiameterGx/ttcn/DiameterGx_Gx_TCFunctions.ttcn +48 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ module DiameterGx_Gx_TCFunctions { import from DiameterGx_PIXITS all; import from DiameterGx_Templates all; import from DiameterGx_Steps all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; import from LibGtp_Templates all; import from LibGtp_Steps all; import from LibGtp_Interface all; group TP_PCRFRole{ group TP_PCRFRole_IPS { //Initial Provisioning Session Loading Loading @@ -178,4 +183,47 @@ module DiameterGx_Gx_TCFunctions { } //end group TP_PCEFRole group GTP_Role { /* * @desc This is the test case function for GTP component 1 to trigger the PCEF * @param */ function f_TC_GTP_01() runs on GtpComponent { activate(a_echoResponse()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync GTP.send (m_gtp_v1_dummy); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_GTP_01 /* * @desc This is the test case function for GTP component 2 to serve the triggered PCEF * @param */ function f_TC_GTP_02() runs on GtpComponent { activate(a_echoResponse()); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync GTP.receive (m_gtp_v1_dummy); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_GTP_02 } } // end module DiameterGx_Gx_TCFunctions
DiameterGx/ttcn/DiameterGx_TestCases.ttcn +31 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ module DiameterGx_TestCases import from DiameterGx_Rx_TCFunctions all; import from DiameterGx_Gx_TCFunctions all; import from DiameterGx_PICS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group TP_PCEFRole { Loading @@ -43,6 +45,35 @@ module DiameterGx_TestCases f_cf_1GxRDown(v_diameterComponent_pcrf); } // end TC_PCEF_IPS_01 /* * @desc TC_PCEF_IPS_01_ * @param p_cSeq_s Transaction Id * * Testconfiguration with GTP components */ testcase TC_PCEF_IPS_01_() runs on ServerSyncComp system TestAdapter { //Variables var DiameterComponent v_diameterComponent_pcrf; var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_cf_1Gx2GtpRUp(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_01()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02()); // synchronize PTC on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); } // end TC_PCEF_IPS_01_ }//end group TP_PCEFRole_IPS group TP_PCEFRole_MSI { //Modification of Session Information Loading
DiameterGx/ttcn/DiameterGx_TestConfiguration.ttcn +53 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,8 @@ module DiameterGx_TestConfiguration //AtsIms import from DiameterGx_TestSystem all; import from DiameterGx_PIXITS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group cfUp { Loading Loading @@ -72,6 +74,34 @@ module DiameterGx_TestConfiguration f_setVerdict(v_ret); }//end f_cf_1GxRUp /** * * @desc Creates test configuration of CF_1Gx - PCEF is SUT * @param p_diameterComponent_pcrf pcrf component, 2 GTP components */ function f_cf_1Gx2GtpRUp(out DiameterComponent p_diameterComponent_pcrf, out GtpComponent p_gtpComponent1, out GtpComponent p_gtpComponent2) runs on ServerSyncComp { //Variables var FncRetCode v_ret := e_success; //Create p_diameterComponent_pcrf := DiameterComponent.create ; p_gtpComponent1 := GtpComponent.create ; p_gtpComponent2 := GtpComponent.create ; //Connect connect(p_diameterComponent_pcrf:syncPort, self:syncPort) ; //Map map(p_diameterComponent_pcrf:DIAMP, system:PCRF);// Diameter Init test Configuration if (PX_DIAM_LLP_ENABLED){ map(p_diameterComponent_pcrf:LLPP, system:LLIMS);// Lower Layer Primitive Init test Configuration } f_setVerdict(v_ret); }//end f_cf_1GxRUp }//end group cfUp group cfDown { Loading Loading @@ -112,7 +142,29 @@ module DiameterGx_TestConfiguration if (PX_DIAM_LLP_ENABLED){ unmap(p_diameterComponent_pcrf:LLPP, system:LLIMS); } }//end f_cf_1GxEDown }//end f_cf_1GxRDown /** * * @desc Deletes configuration of CF_1GxR - PCEF is SUT * @param p_diameterComponent_ims diameter component, two GTP-C components */ function f_cf_1Gx2GtpRDown(in DiameterComponent p_diameterComponent_pcrf, in GtpComponent p_gtpComponent1, in GtpComponent p_gtpComponent2) runs on ServerSyncComp { f_serverWaitForAllClientsToStop(); //Disconnect disconnect(p_diameterComponent_pcrf:syncPort, self:syncPort); disconnect(p_gtpComponent1:syncPort, self:syncPort); disconnect(p_gtpComponent2:syncPort, self:syncPort); //Unmap unmap(p_diameterComponent_pcrf:DIAMP, system:PCRF); if (PX_DIAM_LLP_ENABLED){ unmap(p_diameterComponent_pcrf:LLPP, system:LLIMS); } }//end f_cf_1Gx2GtpRDown } //end group cfDown Loading
DiameterGx/ttcn/DiameterGx_TestSystem.ttcn +3 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ module DiameterGx_TestSystem import from LibDiameter_Interface all; //AtsIms import from DiameterGx_PIXITS all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; group CMTypes { type charstring CM_Message; Loading @@ -32,6 +34,7 @@ module DiameterGx_TestSystem type component TestAdapter { port LowerLayerPPort LLPCRF, LLIMS; port DiameterPort PCRF, PCEF; port GtpPort GTP; } } // end Group TestSystemInterfaces }// end group TestComponents Loading