Commit 5cfb74ae authored by pintar's avatar pintar
Browse files

Behavior function for TC_IMS_CALL_0009, TC_IMS_CALL_0010 and TC_IMS_CALL_0013

parent 77d00537
Loading
Loading
Loading
Loading
+182 −1
Original line number Diff line number Diff line
@@ -2350,7 +2350,7 @@ group checksTC_IMS_CALL_0008 {
			boolean p_checkMessage,
			integer p_skipCount
    	) runs on ImsTestCoordinator {
    		var template SipUrl v_scscfEutBUrl := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_B));
    		var template SipUrl v_scscfEutBUrl := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
			var template SkipType v_skip := {0, omit};
	    	
			if(p_skipCount > 0) {
@@ -2399,6 +2399,187 @@ group checksTC_IMS_CALL_0008 {
	    
} // group

group checksTC_IMS_CALL_0009 {

								    
		/**
          * @desc Starts monitor component behavior 
          * @param p_monitorCompRef Reference to monitor component
		  */
		function f_mtc_check_TP_IMS_5052_01_gm(
			ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage
		) runs on ImsTestCoordinator {
		   	    		
			p_monitorCompRef.start(
			 f_imsIot_receive(
				{mw_SipRequest(mw_BYE_Request_Base(*))},
				{},
				{0, omit},
				"TP_IMS_5052_01",
				false,
				p_checkMessage
			 )
			);
			p_monitorCompRef.done;
		}
	    
		/**
          * @desc Starts monitor component behavior
          * @param p_monitorCompRef Reference to monitor component
		  */
		function f_mtc_check_TP_IMS_5052_01_mw(
			ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage
		) runs on ImsTestCoordinator  {
			var template SipUrl v_PCSCF_IMS_A := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
			var RouteBody_List p_recordRoute;
			var SipMessage v_sip := {request := valueof(m_ACK_Dummy)};
			
			p_monitorCompRef.start(
				f_imsIot_receive(
				{mw_SipRequest(mw_ACK_Request_Base(?))},
				{},
				{0, omit},
				"TP_IMS_5052_01",
				true,	
				false
				)
			);
			p_monitorCompRef.done;
			
			// get Record-route header from prev ACK
			f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); 
			p_recordRoute := v_sip.request.msgHeader.recordRoute.routeBody;
			
			
			p_monitorCompRef.start(
			 f_imsIot_receive(
				{mw_SipRequest(mdw_TP_IMS_5052_01_mw(?, v_PCSCF_IMS_A, p_recordRoute))},
				{mw_SipRequest(mw_BYE_Request_Base(?))},
				{0, omit},
				"TP_IMS_5052_01",
				false,	
				p_checkMessage
			 )
			);
			p_monitorCompRef.done;
		}
	    
} // group

group checksTC_IMS_CALL_0010 {
	    	
		/**
    	  * @desc Starts monitor component behavior
    	  * @param p_monitorCompRef Reference to monitor component
		  */
    	function f_mtc_check_TP_IMS_5048_01_gm(
    		ImsInterfaceMonitor p_monitorCompRef,
    		boolean p_checkMessage,
			integer p_skipCount
    	) runs on ImsTestCoordinator {
    		var template SkipType v_skip := {0, omit};
	    	
			if(p_skipCount > 0) {
				v_skip := {1, mw_SipRequest(mw_INVITE_Request_Base)};
			}
		   	    		
    		p_monitorCompRef.start(
    		 f_imsIot_receive(
    			{mw_SipRequest(mw_INVITE_Request_Base)},
    			{},
				v_skip,
    			"TP_IMS_5048_01",
    			false,
    			p_checkMessage
    		 )
    		);
    		p_monitorCompRef.done;
		}
	    
	    /**
		  * @desc Starts monitor component behavior
		  * @param p_monitorCompRef Reference to monitor component
		  */
    	function f_mtc_check_TP_IMS_5048_01_mw(
			ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage,
			integer p_skipCount
    	) runs on ImsTestCoordinator {
    		var template SipUrl v_pcscfEutAUrl := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
			var template SkipType v_skip := {0, omit};
	    	
			if(p_skipCount > 0) {
				v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
			}
    		
			// INVITE from IMS_A to IMS_B 
    		p_monitorCompRef.start(
    		 f_imsIot_receive(
    			{mw_SipRequest(mdw_TP_IMS_5048_01_mw(v_pcscfEutAUrl))},
    			{},
				v_skip,
    			"TP_IMS_5048_01",
    			false,
    			p_checkMessage
    			)
    		 );
    		p_monitorCompRef.done;
    	}
	    
	    /**
		  * @desc Starts monitor component behavior
		  * @param p_monitorCompRef Reference to monitor component
		  */
    	function f_mtc_check_TP_IMS_5080_01_mw(
			ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage
    	) runs on ImsTestCoordinator {
    		
			// INVITE from IMS_A to IMS_B 
    		p_monitorCompRef.start(
    		 f_imsIot_receive(
    			{mw_SipRequest(mdw_TP_IMS_5080_01_mw)},
    			{},
    			{0, omit},
    			"TP_IMS_5080_01",
    			false,
    			p_checkMessage
    			)
    		 );
    		p_monitorCompRef.done;
    	}
	    
} // group

group checksTC_IMS_CALL_0013 {	    
    	
		/**
		  * @desc Starts monitor component behavior
		  * @param p_monitorCompRef Reference to monitor component
		  */
		function f_mtc_check_TP_IMS_5072_02_gm(
			ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage
		) runs on ImsTestCoordinator  {
			
			p_monitorCompRef.start(
			 f_imsIot_receive(
				{mw_SipRequest(mdw_TP_IMS_5072_02_gm(?))},
				{},
				{0, omit},
				"TP_IMS_5072_02",
				false,
				p_checkMessage
			 )
			);
			p_monitorCompRef.done;
			
		} //function

} // group

group checksTC_IMS_CALL_0014 {