Loading DiameterS9/ttcn/DiameterS9_Steps.ttcn3 +155 −2 Original line number Diff line number Diff line Loading @@ -23,20 +23,78 @@ //DiameterS9 import from DiameterS9_PIXITS all; import from DiameterS9_Templates all; import from DiameterS9_TestConfiguration all; group GlobalSteps { /* * @desc This is a test step that init global variables * @param */ function f_DiameterS9_init() runs on DiameterComponent { //Defaults vc_def_catchSyncStop_diameter := activate(a_diameter_catchSyncStop()); vc_default_diameter := activate (a_diameter_default()); //Base LibDiameter init function if there will be any base initialisation f_Diameter_Init_Component(); vc_ETS_address := PX_DIAMETER_S9_ETS_IPADDR; vc_ETS_port := PX_DIAMETER_S9_ETS_PORT; vc_SUT_address := PX_DIAMETER_S9_SUT_IPADDR; vc_SUT_port := PX_DIAMETER_S9_SUT_PORT; vc_sessionId := m_sessionId(PX_SessionID); vc_originHost := m_originHost(PX_OriginHost); vc_originRealm := m_originRealm(PX_OriginRealm); // realm of the originator (TS) vc_originHost_IUT := m_originHost(PX_DestinationHost); vc_originRealm_IUT := m_originRealm(PX_DestinationRealm); // realm of the originator (TS) vc_destinationHost := m_destinationHost(PX_DestinationHost); vc_destinationRealm := m_destinationRealm(PX_DestinationRealm); vc_hostIPAddress := valueof(f_IPV4or6_String2Address (PX_DIAMETER_S9_ETS_IPADDR)); vc_send_hopid:=hex2int('00000100'H); vc_send_endid:=hex2int('01000000'H); } // end function f_DiameterS9_init } // end group GlobalSteps group Preambles{ function f_preamble_VPCRF() runs on DiameterComponent { if(PX_DIAM_LLP_ENABLED) { f_preambleClient(); } f_DiameterS9_init(); f_preambleDiameterBaseClient(c_applIdS9); } function f_preamble_HPCRF() runs on DiameterComponent { if(PX_DIAM_LLP_ENABLED) { f_preambleServer(); } f_DiameterS9_init(); f_preambleDiameterBaseServer(c_applIdS9); } /* * @desc This is a test step that initiate communication with H-PCRF * @param */ function f_initiate_session_HPCRF() runs on DiameterComponent function f_initiate_session_VPCRF() runs on DiameterComponent { f_send_CCR(m_CCR_InitialRequest(vc_sessionId, vc_originHost, Loading @@ -52,16 +110,111 @@ group Postambles { function f_postamble_VPCRF() runs on DiameterComponent { f_postambleDiameterBase(); if(PX_DIAM_LLP_ENABLED) { f_postambleDisconnect(); } } function f_postamble_HPCRF() runs on DiameterComponent { f_postambleDiameterBase(); if(PX_DIAM_LLP_ENABLED) { f_postambleDisconnect(); } } /** * * @desc */ function f_terminate_session_HPCRF() runs on DiameterComponent function f_terminate_session_VPCRF() runs on DiameterComponent { f_send_CCR(m_CCR_TerminationRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm)); f_awaiting_CCA(mw_CCA_basic(vc_sessionId, vc_originHost_IUT, vc_originRealm_IUT)); } function f_terminate_session_HPCRF() runs on DiameterComponent { f_send_RAR(m_RAR_SessionEnd (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_sessReleaseCause (UNSPECIFIED_REASON_E))); f_awaiting_RAA(mw_RAA_dummy); f_awaiting_CCR(mw_CCR_basic(?, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(TERMINATION_REQUEST_E) )); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm, m_cC_Request_Type(TERMINATION_REQUEST_E), m_resultCode(m_resultCode_diameterSuccess))); } function f_ConfigRun_HPCRF_PCEF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_pcef) runs on ServerSyncComp { if (PX_Gxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_1Gx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_pcef); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } function f_ConfigRun_HPCRF_BBERF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_bberf) runs on ServerSyncComp { if (PX_Gxxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_1Gxx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_bberf); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } function f_ConfigRun_HPCRF_2BBERF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_bberf1, DiameterComponent p_diameterComponent_bberf2) runs on ServerSyncComp { if (PX_Gxxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_2Gxx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_bberf1, p_diameterComponent_bberf2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } }// end group Postambles group AVPOperations { Loading Loading
DiameterS9/ttcn/DiameterS9_Steps.ttcn3 +155 −2 Original line number Diff line number Diff line Loading @@ -23,20 +23,78 @@ //DiameterS9 import from DiameterS9_PIXITS all; import from DiameterS9_Templates all; import from DiameterS9_TestConfiguration all; group GlobalSteps { /* * @desc This is a test step that init global variables * @param */ function f_DiameterS9_init() runs on DiameterComponent { //Defaults vc_def_catchSyncStop_diameter := activate(a_diameter_catchSyncStop()); vc_default_diameter := activate (a_diameter_default()); //Base LibDiameter init function if there will be any base initialisation f_Diameter_Init_Component(); vc_ETS_address := PX_DIAMETER_S9_ETS_IPADDR; vc_ETS_port := PX_DIAMETER_S9_ETS_PORT; vc_SUT_address := PX_DIAMETER_S9_SUT_IPADDR; vc_SUT_port := PX_DIAMETER_S9_SUT_PORT; vc_sessionId := m_sessionId(PX_SessionID); vc_originHost := m_originHost(PX_OriginHost); vc_originRealm := m_originRealm(PX_OriginRealm); // realm of the originator (TS) vc_originHost_IUT := m_originHost(PX_DestinationHost); vc_originRealm_IUT := m_originRealm(PX_DestinationRealm); // realm of the originator (TS) vc_destinationHost := m_destinationHost(PX_DestinationHost); vc_destinationRealm := m_destinationRealm(PX_DestinationRealm); vc_hostIPAddress := valueof(f_IPV4or6_String2Address (PX_DIAMETER_S9_ETS_IPADDR)); vc_send_hopid:=hex2int('00000100'H); vc_send_endid:=hex2int('01000000'H); } // end function f_DiameterS9_init } // end group GlobalSteps group Preambles{ function f_preamble_VPCRF() runs on DiameterComponent { if(PX_DIAM_LLP_ENABLED) { f_preambleClient(); } f_DiameterS9_init(); f_preambleDiameterBaseClient(c_applIdS9); } function f_preamble_HPCRF() runs on DiameterComponent { if(PX_DIAM_LLP_ENABLED) { f_preambleServer(); } f_DiameterS9_init(); f_preambleDiameterBaseServer(c_applIdS9); } /* * @desc This is a test step that initiate communication with H-PCRF * @param */ function f_initiate_session_HPCRF() runs on DiameterComponent function f_initiate_session_VPCRF() runs on DiameterComponent { f_send_CCR(m_CCR_InitialRequest(vc_sessionId, vc_originHost, Loading @@ -52,16 +110,111 @@ group Postambles { function f_postamble_VPCRF() runs on DiameterComponent { f_postambleDiameterBase(); if(PX_DIAM_LLP_ENABLED) { f_postambleDisconnect(); } } function f_postamble_HPCRF() runs on DiameterComponent { f_postambleDiameterBase(); if(PX_DIAM_LLP_ENABLED) { f_postambleDisconnect(); } } /** * * @desc */ function f_terminate_session_HPCRF() runs on DiameterComponent function f_terminate_session_VPCRF() runs on DiameterComponent { f_send_CCR(m_CCR_TerminationRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm)); f_awaiting_CCA(mw_CCA_basic(vc_sessionId, vc_originHost_IUT, vc_originRealm_IUT)); } function f_terminate_session_HPCRF() runs on DiameterComponent { f_send_RAR(m_RAR_SessionEnd (vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, vc_destinationHost, m_sessReleaseCause (UNSPECIFIED_REASON_E))); f_awaiting_RAA(mw_RAA_dummy); f_awaiting_CCR(mw_CCR_basic(?, vc_originHost, vc_originRealm, vc_destinationRealm, mw_cC_Request_Type(TERMINATION_REQUEST_E) )); f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm, m_cC_Request_Type(TERMINATION_REQUEST_E), m_resultCode(m_resultCode_diameterSuccess))); } function f_ConfigRun_HPCRF_PCEF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_pcef) runs on ServerSyncComp { if (PX_Gxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_1Gx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_pcef); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } function f_ConfigRun_HPCRF_BBERF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_bberf) runs on ServerSyncComp { if (PX_Gxxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_1Gxx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_bberf); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } function f_ConfigRun_HPCRF_2BBERF(DiameterComponent p_diameterComponent_hpcrf, DiameterComponent p_diameterComponent_bberf1, DiameterComponent p_diameterComponent_bberf2) runs on ServerSyncComp { if (PX_Gxxsupport) { // synchronize PTCs on 3 sychronization points f_serverSync3Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_2Gxx_hpcrfDown(p_diameterComponent_hpcrf, p_diameterComponent_bberf1, p_diameterComponent_bberf2); } else { // synchronize single PTC on 3 sychronization points f_serverSync1Client({c_prDone, c_tbDone, c_poDone}); f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf); } } }// end group Postambles group AVPOperations { Loading