Commit 86d6738d authored by saiu's avatar saiu
Browse files

Add 4 (from 001 to 004) testcase about conference removing

parent dd4f5305
Loading
Loading
Loading
Loading
+390 −1
Original line number Diff line number Diff line
@@ -10699,7 +10699,7 @@ module AtsNIT_SipSip_SS_TCFunctions {
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(v_confUrl),
    			m_ReferTo_SipUrl(v_confUrl, "INVITE"),
    			omit 
			));
			
@@ -10966,6 +10966,395 @@ module AtsNIT_SipSip_SS_TCFunctions {
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_LEAV_002UE2
    	
    	
    	/* 
    	* @desc		This is the test case function (originating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE1
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE1(in CSeq p_cSeq_s) runs on ImsComponent {
     		// variables
    		// enables conference state subscription
    		var boolean v_subscription := true; 
    		var SipUrl v_confUrl;
    		
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		v_confUrl := f_createConference(vc_cSeq, c_conferenceProfile_factoryURI, v_subscription);
    		
    		f_referUser(vc_cSeq, c_userProfile_UE2atSUThome, v_confUrl);
    		
    		//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"active",
				"application/conference-info+xml",
				m_Event_conference,
				* // TODO check XML Body
			));
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
		    
		    // Testbody
		    
		    LibIms_Steps.f_setHeadersREFER_conf(vc_cSeq, f_initSipUrl(c_conferenceProfile_factoryURI));
			
			f_SendREFER(m_REFER_Request_Base(
				vc_requestUri, 
            	vc_callId, 
    			vc_cSeq,
    			vc_contact, 
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(f_initSipUrl(c_userProfile_UE2atSUThome), "BYE"),
    			omit 
			));
			
			f_awaitingResponse(mw_Response_Base(
    			c_statusLine202, 
    			vc_callId, 
    			vc_cSeq
    		));
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"active",
				"message/sipfrag",
				m_Event_refer,
				m_MBody_sipfrag("SIP/2.0 100 Trying")
			));
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"terminated",
				"message/sipfrag",
				m_Event_refer,
				m_MBody_sipfrag("SIP/2.0 200 OK")
			));
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				?,
				"application/conference-info+xml",
				m_Event_conference,
				* // TODO check XML Body
			));
    		
    		//await BYE and send 200OK
    		//f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE1
		
				 
    	/* 
    	* @desc		This is the test case function (terminating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE2
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE2(in CSeq p_cSeq_s) runs on ImsComponent {
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		    		
    		    		
    		// await REFER
			f_joinConference(vc_cSeq, c_conferenceProfile_factoryURI);
    		
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		   		
    		// Testbody
		    // subscribe to conference state
    		
			//await BYE and send 200OK
			f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
			
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    		
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE2
    	
    	
    	/* 
    	* @desc		This is the test case function (originating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE1
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE1(in CSeq p_cSeq_s) runs on ImsComponent {
     		// variables
    		// enables conference state subscription
    		var boolean v_subscription := false; 
    		var SipUrl v_confUrl;
    		
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		v_confUrl := f_createConference(vc_cSeq, c_conferenceProfile_factoryURI, v_subscription);
    		
    		f_referUser(vc_cSeq, c_userProfile_UE2atSUThome, v_confUrl);
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
		    
		    // Testbody
		    
		    LibIms_Steps.f_setHeadersREFER_conf(vc_cSeq, f_initSipUrl(c_conferenceProfile_factoryURI));
			
			f_SendREFER(m_REFER_Request_Base(
				vc_requestUri, 
            	vc_callId, 
    			vc_cSeq,
    			vc_contact, 
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(f_initSipUrl(c_userProfile_UE2atSUThome), "BYE"),
    			omit 
			));
			
			f_awaitingResponse(mw_Response_Base(
    			c_statusLine202, 
    			vc_callId, 
    			vc_cSeq
    		));
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"active",
				"message/sipfrag",
				m_Event_refer,
				m_MBody_sipfrag("SIP/2.0 100 Trying")
			));
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"terminated",
				"message/sipfrag",
				m_Event_refer,
				m_MBody_sipfrag("SIP/2.0 200 OK")
			));
			
    		
    		//await BYE and send 200OK
    		//f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE1
    	
    	/* 
    	* @desc		This is the test case function (terminating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE2
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE2(in CSeq p_cSeq_s) runs on ImsComponent {
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		    		
    		    		
    		// await REFER
			f_joinConference(vc_cSeq, c_conferenceProfile_factoryURI);    		
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		   		
    		// Testbody
		    // subscribe to conference state
    		
			//await BYE and send 200OK
			f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
			
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    		
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE2
    	
    	
    	/* 
    	* @desc		This is the test case function (originating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE1
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE1(in CSeq p_cSeq_s) runs on ImsComponent {
     		// variables
    		// enables conference state subscription
    		var boolean v_subscription := true; 
    		var SipUrl v_confUrl;
    		
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		v_confUrl := f_createConference(vc_cSeq, c_conferenceProfile_factoryURI, v_subscription);
    		
    		f_referUser(vc_cSeq, c_userProfile_UE2atSUThome, v_confUrl);
    		
    		//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				"active",
				"application/conference-info+xml",
				m_Event_conference,
				* // TODO check XML Body
			));
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
		    
		    // Testbody
		    
    		//SendBYE and await response
    		f_terminateCall_UE(
    			vc_requestUri, 
    			vc_callId, 
    			vc_cSeq, 
    			vc_caller_From, 
    			vc_caller_To
    		);
		    
			
			//await NOTIFY and send reply 200 OK
	  		f_awaitingNOTIFY_sendReply(mw_NOTIFY_Request(
				vc_callId,
				?,
				"application/conference-info+xml",
				m_Event_conference,
				* // TODO check XML Body
			));
    		
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE1
		
				 
    	/* 
    	* @desc		This is the test case function (terminating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE2
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE2(in CSeq p_cSeq_s) runs on ImsComponent {
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		    		
    		    		
    		// await REFER
			f_joinConference(vc_cSeq, c_conferenceProfile_factoryURI);
    		
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		   		
    		// Testbody
		    // subscribe to conference state
    		
			//await BYE and send 200OK
			f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
			
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    		
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE2
    	
    	/* 
    	* @desc		This is the test case function (originating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE1
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE1(in CSeq p_cSeq_s) runs on ImsComponent {
     		// variables
    		// enables conference state subscription
    		var boolean v_subscription := false; 
    		var SipUrl v_confUrl;
    		
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		v_confUrl := f_createConference(vc_cSeq, c_conferenceProfile_factoryURI, v_subscription);
    		
    		f_referUser(vc_cSeq, c_userProfile_UE2atSUThome, v_confUrl);
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
		    
		    // Testbody
		    
    		//SendBYE and await response
    		f_terminateCall_UE(
    			vc_requestUri, 
    			vc_callId, 
    			vc_cSeq, 
    			vc_caller_From, 
    			vc_caller_To
    		);
    		
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE1
		
				 
    	/* 
    	* @desc		This is the test case function (terminating side) for f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE2
    	* @param	p_CSeq_s Transaction Id
    	*/
    	function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE2(in CSeq p_cSeq_s) runs on ImsComponent {
    		// premable
    		f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable
    
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		    		
    		    		
    		// await REFER
			f_joinConference(vc_cSeq, c_conferenceProfile_factoryURI);
    		
    		
    		f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    		
    		   		
    		// Testbody
		    // subscribe to conference state
    		
			//await BYE and send 200OK
			f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));
			
    		
    		f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
    		
    		// postamble
    		f_IMS_postamble_withDeRegistration(vc_cSeq);
    		
    	} // end function f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE2
    	
	}//end group TP2_10_SS_CONF
	
	group TP2_11_SS_CFNRc {
+3 −3
Original line number Diff line number Diff line
@@ -360,7 +360,7 @@ module AtsNIT_SipSip_Steps {
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(p_conferenceUri),
    			m_ReferTo_SipUrl(p_conferenceUri, "INVITE"),
    			omit 
			));
			
@@ -410,7 +410,7 @@ module AtsNIT_SipSip_Steps {
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(f_initSipUrl(p_to_user)),
    			m_ReferTo_SipUrl(f_initSipUrl(p_to_user), "INVITE"),
    			omit 
			));
			
@@ -471,7 +471,7 @@ module AtsNIT_SipSip_Steps {
    			vc_from, 
    			vc_to, 
    			vc_via, 
    			m_ReferTo_SipUrl(v_uri),
    			m_ReferTo_SipUrl(v_uri, "INVITE"),
    			omit 
			));
			
+96 −0
Original line number Diff line number Diff line
@@ -1485,6 +1485,102 @@ group TP2_1_SS_OIP_OIR {
            		f_cf_2imsDown(v_imsComponent1,v_imsComponent2);
        	  	} // end TC_SSS__XXSSCONF_LEAV_002
        	  }//end group TP2_8_3_SS_LEAV
        	  
        	  group TP2_8_4_SS_CONF_REMOV {
        	  	/*
            	 * @desc TC_SSS__XXSSCONF_REMOV_001
            	 * @param p_CSeq_s Transaction Id
            	 */
            	testcase TC_SSS__XXSSCONF_REMOV_001 (
            		inout CSeq p_CSeq_s
            	) runs on ServerSyncComp system TestAdapter {
            		//Variables
            		var ImsComponent v_imsComponent1;
              		var ImsComponent v_imsComponent2;
            		
            		//Configuration
            		f_cf_2imsUp(v_imsComponent1,v_imsComponent2);
            		f_IncCSeq(p_CSeq_s); 
            
            		//Start
            		v_imsComponent1.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE1(p_CSeq_s));
            		v_imsComponent2.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_001UE2(p_CSeq_s));
            		
            		// synchronize both PTCs on 4 sychronization points
            		f_serverSync2ClientsAndStop({c_prDone, c_Ringing, c_uPlane, c_tbDone});
                    
                    //Clear configration
            		f_cf_2imsDown(v_imsComponent1,v_imsComponent2);
        	  	} // end TC_SSS__XXSSCONF_REMOV_001
        	  	
        	  	testcase TC_SSS__XXSSCONF_REMOV_002 (
            		inout CSeq p_CSeq_s
            	) runs on ServerSyncComp system TestAdapter {
            		//Variables
            		var ImsComponent v_imsComponent1;
              		var ImsComponent v_imsComponent2;
            		
            		//Configuration
            		f_cf_2imsUp(v_imsComponent1,v_imsComponent2);
            		f_IncCSeq(p_CSeq_s); 
            
            		//Start
            		v_imsComponent1.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE1(p_CSeq_s));
            		v_imsComponent2.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_002UE2(p_CSeq_s));
            		
            		// synchronize both PTCs on 4 sychronization points
            		f_serverSync2ClientsAndStop({c_prDone, c_Ringing, c_uPlane, c_tbDone});
                    
                    //Clear configration
            		f_cf_2imsDown(v_imsComponent1,v_imsComponent2);
        	  	} // end TC_SSS__XXSSCONF_REMOV_002
        	  	
        	  	testcase TC_SSS__XXSSCONF_REMOV_003 (
            		inout CSeq p_CSeq_s
            	) runs on ServerSyncComp system TestAdapter {
            		//Variables
            		var ImsComponent v_imsComponent1;
              		var ImsComponent v_imsComponent2;
            		
            		//Configuration
            		f_cf_2imsUp(v_imsComponent1,v_imsComponent2);
            		f_IncCSeq(p_CSeq_s); 
            
            		//Start
            		v_imsComponent1.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE1(p_CSeq_s));
            		v_imsComponent2.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_003UE2(p_CSeq_s));
            		
            		// synchronize both PTCs on 4 sychronization points
            		f_serverSync2ClientsAndStop({c_prDone, c_Ringing, c_uPlane, c_tbDone});
                    
                    //Clear configration
            		f_cf_2imsDown(v_imsComponent1,v_imsComponent2);
        	  	} // end TC_SSS__XXSSCONF_REMOV_003
        	  	
        	  	testcase TC_SSS__XXSSCONF_REMOV_004 (
            		inout CSeq p_CSeq_s
            	) runs on ServerSyncComp system TestAdapter {
            		//Variables
            		var ImsComponent v_imsComponent1;
              		var ImsComponent v_imsComponent2;
            		
            		//Configuration
            		f_cf_2imsUp(v_imsComponent1,v_imsComponent2);
            		f_IncCSeq(p_CSeq_s); 
            
            		//Start
            		v_imsComponent1.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE1(p_CSeq_s));
            		v_imsComponent2.start(f_AtsNIT_TC_SSS__XXSSCONF_REMOV_004UE2(p_CSeq_s));
            		
            		// synchronize both PTCs on 4 sychronization points
            		f_serverSync2ClientsAndStop({c_prDone, c_Ringing, c_uPlane, c_tbDone});
                    
                    //Clear configration
            		f_cf_2imsDown(v_imsComponent1,v_imsComponent2);
        	  	} // end TC_SSS__XXSSCONF_REMOV_004
        	  	
        	  }//end group TP2_8_3_SS_CONF_REMOV
        	  
    	 }//end group TP2_8_SS_CONF
                                 	
        group TP2_9_SS_CFNRc {