Loading DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +6 −1 Original line number Diff line number Diff line Loading @@ -372,6 +372,11 @@ module DiameterGx_PIXITS modulepar UTF8String PX_EMERGENCY_APN := "dummy"; /** @desc boolean indicator, * true, if GTP interface is accessable */ modulepar boolean PX_GTPsupport := false; } //end group DiameterCommonGxData Loading DiameterGx/ttcn/DiameterGx_Steps.ttcn3 +55 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,12 @@ //DiameterGx import from DiameterGx_Templates all; import from DiameterGx_PIXITS all; import from DiameterGx_Gx_TCFunctions all; import from DiameterGx_TestConfiguration all; // GPRS tunneling protocol // import from LibGtp_TypesAndValues all; import from LibGtp_Interface all; group GlobalSteps { Loading Loading @@ -83,6 +89,19 @@ f_DiameterGx_init(); f_preambleDiameterBaseServer(); } function f_ConfigUp_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { f_cf_1Gx2GtpRUp(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { action("Please trigger PCEF for CCR initial request."); f_cf_1GxRUp(p_diameterComponent_pcrf); } } }// end group Preambles group Postambles { Loading @@ -99,6 +118,41 @@ } function f_ConfigRun_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { p_gtpComponent1.start(f_TC_GTP_01()); p_gtpComponent2.start(f_TC_GTP_02()); // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(p_diameterComponent_pcrf); } } function f_ConfigRun2_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { p_gtpComponent1.start(f_TC_GTP_01()); p_gtpComponent2.start(f_TC_GTP_02_neg()); // <== neg. behaviour! // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(p_diameterComponent_pcrf); } } }// end group Postambles group AVPOperations { Loading DiameterGx/ttcn/DiameterGx_TestCases.ttcn +63 −79 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; import from DiameterGx_PIXITS all; import from DiameterGx_Steps all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; import from LibGtp_Interface all; Loading Loading @@ -761,6 +763,7 @@ module DiameterGx_TestCases group TP_PCEFRole { group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCEF_IPS_01 * @param p_cSeq_s Transaction Id Loading @@ -768,44 +771,22 @@ module DiameterGx_TestCases 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 /* * @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 // Initialize 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); f_ConfigUp_PCRF(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}); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); f_cf_1Gx2GtpRDown(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); } // end TC_PCEF_IPS_01_ } // end TC_PCEF_IPS_01 /* * @desc TC_PCEF_IPS_02 Loading @@ -814,17 +795,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_02() runs on ServerSyncComp system TestAdapter { //Variables // Initialize var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_02()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_02 /* Loading @@ -836,21 +820,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_03() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_03()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_03 /* Loading @@ -862,21 +845,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_04() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_04()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_04 /* Loading @@ -888,21 +870,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_05() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_05()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_05 Loading @@ -913,17 +894,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_06() runs on ServerSyncComp system TestAdapter { //Variables // Initialize var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_06()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_06 }//end group TP_PCEFRole_IPS Loading Loading
DiameterGx/ttcn/DiameterGx_PIXITS.ttcn +6 −1 Original line number Diff line number Diff line Loading @@ -372,6 +372,11 @@ module DiameterGx_PIXITS modulepar UTF8String PX_EMERGENCY_APN := "dummy"; /** @desc boolean indicator, * true, if GTP interface is accessable */ modulepar boolean PX_GTPsupport := false; } //end group DiameterCommonGxData Loading
DiameterGx/ttcn/DiameterGx_Steps.ttcn3 +55 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,12 @@ //DiameterGx import from DiameterGx_Templates all; import from DiameterGx_PIXITS all; import from DiameterGx_Gx_TCFunctions all; import from DiameterGx_TestConfiguration all; // GPRS tunneling protocol // import from LibGtp_TypesAndValues all; import from LibGtp_Interface all; group GlobalSteps { Loading Loading @@ -83,6 +89,19 @@ f_DiameterGx_init(); f_preambleDiameterBaseServer(); } function f_ConfigUp_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { f_cf_1Gx2GtpRUp(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { action("Please trigger PCEF for CCR initial request."); f_cf_1GxRUp(p_diameterComponent_pcrf); } } }// end group Preambles group Postambles { Loading @@ -99,6 +118,41 @@ } function f_ConfigRun_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { p_gtpComponent1.start(f_TC_GTP_01()); p_gtpComponent2.start(f_TC_GTP_02()); // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(p_diameterComponent_pcrf); } } function f_ConfigRun2_PCRF(DiameterComponent p_diameterComponent_pcrf, GtpComponent p_gtpComponent1, GtpComponent p_gtpComponent2) runs on ServerSyncComp { if (PX_GTPsupport) { p_gtpComponent1.start(f_TC_GTP_01()); p_gtpComponent2.start(f_TC_GTP_02_neg()); // <== neg. behaviour! // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Gx2GtpRDown(p_diameterComponent_pcrf, p_gtpComponent1, p_gtpComponent2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(p_diameterComponent_pcrf); } } }// end group Postambles group AVPOperations { Loading
DiameterGx/ttcn/DiameterGx_TestCases.ttcn +63 −79 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; import from DiameterGx_PIXITS all; import from DiameterGx_Steps all; // GPRS tunneling protocol import from LibGtp_TypesAndValues all; import from LibGtp_Interface all; Loading Loading @@ -761,6 +763,7 @@ module DiameterGx_TestCases group TP_PCEFRole { group TP_PCEFRole_IPS { //Initial Provisioning Session /* * @desc TC_PCEF_IPS_01 * @param p_cSeq_s Transaction Id Loading @@ -768,44 +771,22 @@ module DiameterGx_TestCases 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 /* * @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 // Initialize 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); f_ConfigUp_PCRF(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}); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); f_cf_1Gx2GtpRDown(v_diameterComponent_pcrf,v_gtpComponent_1,v_gtpComponent_2); } // end TC_PCEF_IPS_01_ } // end TC_PCEF_IPS_01 /* * @desc TC_PCEF_IPS_02 Loading @@ -814,17 +795,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_02() runs on ServerSyncComp system TestAdapter { //Variables // Initialize var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_02()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_02 /* Loading @@ -836,21 +820,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_03() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_03()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_03 /* Loading @@ -862,21 +845,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_04() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_04()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_04 /* Loading @@ -888,21 +870,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_05() runs on ServerSyncComp system TestAdapter { //Variables // Initialize 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); f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_05()); v_gtpComponent_1.start(f_TC_GTP_01()); v_gtpComponent_1.start(f_TC_GTP_02_neg()); // 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); // Finish (neg. GTP2 behaviour) f_ConfigRun2_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_05 Loading @@ -913,17 +894,20 @@ module DiameterGx_TestCases testcase TC_PCEF_IPS_06() runs on ServerSyncComp system TestAdapter { //Variables // Initialize var DiameterComponent v_diameterComponent_pcrf; f_cf_1GxRUp(v_diameterComponent_pcrf); var GtpComponent v_gtpComponent_1; var GtpComponent v_gtpComponent_2; f_ConfigUp_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); //Start v_diameterComponent_pcrf.start(f_TC_PCEF_IPS_06()); // synchronize PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1GxRDown(v_diameterComponent_pcrf); // Finish f_ConfigRun_PCRF(v_diameterComponent_pcrf, v_gtpComponent_1, v_gtpComponent_2); } // end TC_PCEF_IPS_06 }//end group TP_PCEFRole_IPS Loading