Commit 44d7f1b3 authored by schmitting's avatar schmitting
Browse files

Validation Results included

parent bfe597e4
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -12,6 +12,11 @@ module DiameterRx_PIXITS


    //const charstring IPV4or6RegExp:= pattern "/^(?:(?>(?>([a-f0-9]{1,4})(?>:(?1)){7})|(?>(?!(?:.*[a-f0-9](?>:|$)){8,})((?1)(?>:(?1)){0,6})?::(?2)?))|(?>(?>(?>(?1)(?>:(?1)){5}:)|(?>(?!(?:.*[a-f0-9]:){6,})((?1)(?>:(?1)){0,4})?::(?>(?3):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?>\.(?4)){3}))$/iD";
    //const charstring IPV4or6RegExp:= pattern "/^(?:(?>(?>([a-f0-9]{1,4})(?>:(?1)){7})|(?>(?!(?:.*[a-f0-9](?>:|$)){8,})((?1)(?>:(?1)){0,6})?::(?2)?))|(?>(?>(?>(?1)(?>:(?1)){5}:)|(?>(?!(?:.*[a-f0-9]:){6,})((?1)(?>:(?1)){0,4})?::(?>(?3):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?>\.(?4)){3}))$/iD";


    /** @desc	boolean indicator, 
     * true, if two Gm interfaces are accessible to trigger Diameter messages at the Rx interface of the P-CSCF
    */
    modulepar boolean PX_SIPsupport := false;

    group Port_and_addresses{
    group Port_and_addresses{
        
        
        /** @desc	charstring, PIXIT item A-1/3
        /** @desc	charstring, PIXIT item A-1/3
+178 −93

File changed.

Preview size limit exceeded, changes collapsed.

+30 −58
Original line number Original line Diff line number Diff line
@@ -33,7 +33,7 @@
        runs on DiameterComponent {
        runs on DiameterComponent {
            
            
            //Defaults
            //Defaults
    		vc_def_catchSyncStop_diameter := activate(a_diamater_catchSyncStop());
    		vc_def_catchSyncStop_diameter := activate(a_diameter_catchSyncStop());
    		vc_default_diameter := activate (a_diameter_default());
    		vc_default_diameter := activate (a_diameter_default());
    		
    		
    		//Base LibDiameter init function if there will be any base initialisation
    		//Base LibDiameter init function if there will be any base initialisation
@@ -60,10 +60,10 @@
        } // end function f_DiameterRx_init
        } // end function f_DiameterRx_init
        
        
        /*
        /*
        *  @desc	This is a test step that awaits session esthablishment by the IUT
        *  @desc	This is a test step that awaits session establishment by the IUT
        *  @param	
        *  @param	
        */
        */
        function f_IUT_session_esthablishment()
        function f_IUT_session_establishment()
        runs on DiameterComponent {
        runs on DiameterComponent {
    		
    		
            f_awaiting_AAR(mw_AAR_dummy); // IUT esthablish Diameter session
            f_awaiting_AAR(mw_AAR_dummy); // IUT esthablish Diameter session
@@ -74,7 +74,27 @@
													  m_resultCode(m_resultCode_diameterSuccess),
													  m_resultCode(m_resultCode_diameterSuccess),
													  omit));
													  omit));
    
    
        } // end function f_AF_IUT_session_esthablishment
        } // end function f_IUT_session_establishment
        
        /*
        *  @desc	This is a test step that initiate session establishment by the ETS
        *  @param	
        */
        function f_ETS_session_establishment()
        runs on DiameterComponent {
            f_send_AAR(m_AAR_FIP_Media1(vc_sessionId, vc_originHost,
                                        vc_originRealm,
                                        vc_destinationRealm,
                                           vc_destinationHost,
                                        f_framedIpAddress4_send(),
                                        f_framedIpAddress6_send(), 
                                        m_mediaComponentDescription_flowStatus(m_flowStatus(ENABLED_E))));
            
            f_awaiting_AAA(mw_AAA_modified_ResultCode_ANCA(?, ?, ?,
                                                           mw_resultCode
                                                           (mw_resultCode_diameterSuccess)
                                                           , ?)); // ANCA-AVP present
        } // end function f_ETS_session_establishment
        
        
    } // end group GlobalSteps
    } // end group GlobalSteps
    
    
@@ -82,16 +102,21 @@
        
        
        function f_preamble_AF() runs on DiameterComponent
        function f_preamble_AF() runs on DiameterComponent
        {
        {
            vc_isAF := true;
            
            if(PX_DIAM_LLP_ENABLED)
            if(PX_DIAM_LLP_ENABLED)
            {
            {
                f_preambleClient();
                f_preambleClient();
            }
            }
            
            f_DiameterRx_init();
            f_DiameterRx_init();
            f_preambleDiameterBaseClient(c_applIdRx);
            f_preambleDiameterBaseClient(c_applIdRx);
        }
        }
       
       
        function f_preamble_PCRF() runs on DiameterComponent
        function f_preamble_PCRF() runs on DiameterComponent
        {
        {
            vc_isAF := false;
            
            if(PX_DIAM_LLP_ENABLED)
            if(PX_DIAM_LLP_ENABLED)
            {
            {
                f_preambleServer();
                f_preambleServer();
@@ -135,57 +160,4 @@
        }
        }
    }//end group AVPOperations
    }//end group AVPOperations
             
             
    group DefaultAltsteps {
    
    	
    	
    	/**
    	* @desc	This default handles receiving of the sync server
    	*		STOP message and calls the RT HUT postamble. (copy from common lib)
    	*/	
    	altstep a_diamater_catchSyncStop() runs on DiameterComponent 
    	{
    		[]	syncPort.receive(m_syncServerStop)
    		{
    			tc_sync.stop ;
    			log("**** a_diameter_catchSyncStop: Test component received STOP signal from MTC - going to IDLE state **** ");
    			syncPort.send(m_syncClientStop);
    			f_terminate_diameter_component();
    			log("**** a_diameter_catchSyncStop: TEST COMPONENT NOW STOPPING ITSELF! **** ") ;
    			setverdict(inconc);
    			stop ;
    		}
    	} 
    
        altstep a_diameter_default() runs on DiameterComponent
        {
            [] any timer.timeout 
             {
               setverdict(fail); 
               all timer.stop;
               //TODO: need to be done
               //stop
             }
            [] DIAMP.receive (DIAMETER_MSG:{dWR_MSG := mw_DWR_dummy}) -> value vc_recvDiamMsgDefault
              {
                vc_recv_hopid:= vc_recvDiamMsgDefault.dWR_MSG.header.hopid;
                vc_recv_endid:= vc_recvDiamMsgDefault.dWR_MSG.header.endid;
                f_send_DWA(m_DWA_dummy);
                repeat;
              };
            [] DIAMP.receive (DIAMETER_MSG:{cER_MSG := mw_CER_dummy}) -> value vc_recvDiamMsgDefault
              {
                vc_recv_hopid:= vc_recvDiamMsgDefault.cER_MSG.header.hopid;
                vc_recv_endid:= vc_recvDiamMsgDefault.cER_MSG.header.endid;
                f_send_CEA(m_CEA_basic(vc_originHost, vc_originRealm, vc_hostIPAddress));
                repeat;
              };
            [] DIAMP.receive (DIAMETER_MSG:?) -> value vc_recvDiamMsgDefault
              {
                  //TODO: need to be done
                  setverdict (fail);
              };
        }
    
    }// end group DefaultAltsteps
} // end module DiameterRx_Steps
} // end module DiameterRx_Steps
 No newline at end of file
+154 −167

File changed.

Preview size limit exceeded, changes collapsed.

+151 −57
Original line number Original line Diff line number Diff line
@@ -24,6 +24,7 @@ module DiameterRx_TestCases
    import from DiameterRx_ImsGm_TCFunctions all;
    import from DiameterRx_ImsGm_TCFunctions all;
    import from DiameterRx_Rx_TCFunctions all;
    import from DiameterRx_Rx_TCFunctions all;
    import from DiameterRx_PICS all;
    import from DiameterRx_PICS all;
    import from DiameterRx_PIXITS all;


    group TP_IMSBasicCallFromUe1ToUe2 {
    group TP_IMSBasicCallFromUe1ToUe2 {
			
			
@@ -43,7 +44,7 @@ module DiameterRx_TestCases
                f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
		
		
                // synchronize both PTCs on 3 sychronization points
                // synchronize both PTCs on 3 sychronization points
                f_serverSync2Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(2, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_2GmDown(v_imsComponent_ue1, v_imsComponent_ue2);
                f_cf_2GmDown(v_imsComponent_ue1, v_imsComponent_ue2);
		
		
@@ -66,7 +67,7 @@ module DiameterRx_TestCases
                f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
		
		
                // synchronize both PTCs on 3 sychronization points
                // synchronize both PTCs on 3 sychronization points
                f_serverSync2Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(2, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_2GmDown(v_imsComponent_ue1, v_imsComponent_ue2);
                f_cf_2GmDown(v_imsComponent_ue1, v_imsComponent_ue2);
		
		
@@ -90,12 +91,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_01());
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_01());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -114,12 +117,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_02());
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_02());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -138,12 +143,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_03());
                v_diameterComponent_pcrf.start(f_TC_AF_IPS_03());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -162,12 +169,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_01());
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_01());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -186,12 +195,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_02());
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_02());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -210,12 +221,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_TAR_07_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_TAR_07_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_03());
                v_diameterComponent_pcrf.start(f_TC_AF_MSI_03());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -235,12 +248,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_GRP_01());
                v_diameterComponent_pcrf.start(f_TC_AF_GRP_01());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -259,12 +274,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_ST_01());
                v_diameterComponent_pcrf.start(f_TC_AF_ST_01());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -283,12 +300,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_01());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_01());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -307,12 +326,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_02());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_02());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -331,12 +352,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_03());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_03());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -355,12 +378,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_04());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_04());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -379,12 +404,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_INI_04_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_INI_04_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_05());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_05());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -403,12 +430,14 @@ module DiameterRx_TestCases
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmUp(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
                //Start
                //Start
                if (PX_SIPsupport) {
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue1.start(f_TC_IMST2_GM_SUB_06_UE1(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                    f_IncCSeq(p_cSeq_s); v_imsComponent_ue2.start(f_TC_IMST2_GM_SUB_06_UE2(p_cSeq_s));
                }
                v_diameterComponent_pcrf.start(f_TC_AF_SN_06());
                v_diameterComponent_pcrf.start(f_TC_AF_SN_06());
                
                
                // synchronize PTCs on 4 sychronization points
                // synchronize PTCs on 4 sychronization points
                f_serverSync3Clients({c_prDone, c_sync1, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_sync1, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -433,7 +462,7 @@ module DiameterRx_TestCases
                v_diameterComponent_pcrf.start(f_TC_AF_TPE_01());
                v_diameterComponent_pcrf.start(f_TC_AF_TPE_01());
                
                
                // synchronize PTCs on 3 sychronization points
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
                f_cf_1Rx2GmDown(v_imsComponent_ue1, v_imsComponent_ue2, v_diameterComponent_pcrf);
		
		
@@ -458,7 +487,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_01());
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_01());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -480,7 +509,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_02());
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_02());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -502,7 +531,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_03());
                v_diameterComponent_ims.start(f_TC_PCRF_IPS_03());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -524,7 +553,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_MSI_01());
                v_diameterComponent_ims.start(f_TC_PCRF_MSI_01());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -546,7 +575,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_MSI_02());
                v_diameterComponent_ims.start(f_TC_PCRF_MSI_02());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -568,7 +597,29 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_ST_01());
                v_diameterComponent_ims.start(f_TC_PCRF_ST_01());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
                f_cf_1RxDown(v_diameterComponent_ims);
		
            } // end TC_PCRF_ST_01

			
            /*
            * @desc TC_PCRF_GRP_01
            * @param p_cSeq_s Transaction Id
            */
            testcase TC_PCRF_GRP_01(inout CSeq p_cSeq_s) 
            runs on ServerSyncComp
            system TestAdapter {
                //Variables
                var DiameterComponent v_diameterComponent_ims;
                f_cf_1RxUp(v_diameterComponent_ims);
		
                //Start
                v_diameterComponent_ims.start(f_TC_PCRF_GRP_01());
                
                // synchronize PTC on 3 sychronization points
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -590,7 +641,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_ST_02());
                v_diameterComponent_ims.start(f_TC_PCRF_ST_02());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -612,7 +663,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_SN_01());
                v_diameterComponent_ims.start(f_TC_PCRF_SN_01());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -633,7 +684,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_SN_02());
                v_diameterComponent_ims.start(f_TC_PCRF_SN_02());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -654,7 +705,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_SN_03());
                v_diameterComponent_ims.start(f_TC_PCRF_SN_03());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -675,7 +726,7 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_SN_04());
                v_diameterComponent_ims.start(f_TC_PCRF_SN_04());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
@@ -696,12 +747,55 @@ module DiameterRx_TestCases
                v_diameterComponent_ims.start(f_TC_PCRF_SN_05());
                v_diameterComponent_ims.start(f_TC_PCRF_SN_05());
                
                
                // synchronize PTC on 3 sychronization points
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
		
                f_cf_1RxDown(v_diameterComponent_ims);
                f_cf_1RxDown(v_diameterComponent_ims);
		
		
            } // end TC_PCRF_SN_05
            } // end TC_PCRF_SN_05


            /*
            * @desc TC_PCRF_TPE_01
            * @param p_cSeq_s Transaction Id
            */
            testcase TC_PCRF_TPE_01(inout CSeq p_cSeq_s) 
            runs on ServerSyncComp
            system TestAdapter {
                //Variables
                var DiameterComponent v_diameterComponent_ims;
                f_cf_1RxUp(v_diameterComponent_ims);
		
                //Start
                v_diameterComponent_ims.start(f_TC_PCRF_TPE_01());
                
                // synchronize PTC on 3 sychronization points
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
                f_cf_1RxDown(v_diameterComponent_ims);
		
            } // end TC_PCRF_TPE_01

			
            /*
            * @desc TC_PCRF_TPE_02
            * @param p_cSeq_s Transaction Id
            */
            testcase TC_PCRF_TPE_02(inout CSeq p_cSeq_s) 
            runs on ServerSyncComp
            system TestAdapter {
                //Variables
                var DiameterComponent v_diameterComponent_ims;
                f_cf_1RxUp(v_diameterComponent_ims);
		
                //Start
                v_diameterComponent_ims.start(f_TC_PCRF_TPE_02());
                
                // synchronize PTC on 3 sychronization points
                f_serverSyncNClients(1, {c_prDone, c_tbDone, c_poDone});
		
                f_cf_1RxDown(v_diameterComponent_ims);
		
            } // end TC_PCRF_TPE_02

    } //end group TP_PCRFRole
    } //end group TP_PCRFRole
	  
	  
} // end module DiameterRx_TestCases
} // end module DiameterRx_TestCases
 No newline at end of file
Loading