Commit aecbd759 authored by poglitsch's avatar poglitsch
Browse files

CALL_0020 added

parent 1ec41645
Loading
Loading
Loading
Loading
+14 −0
Original line number Original line Diff line number Diff line
@@ -129,6 +129,20 @@ module AtsImsIot_Functions {
 			return v_status;
 			return v_status;
 		}
 		}
 		
 		
 		/**
		  * @desc Trigger UE given by p_ueRef to add a new media stream 
		  * @param p_userCompRef Reference to IMS UE user component
		  * @return
		  *     true in case of successfull execution of the trigger command
		  *     otherwise false
		  */
 		function f_mtc_userModifiyMediaStream(EquipmentUser p_ueRef) 
            runs on TestCoordinator return boolean {
     		var boolean v_status := true; 
     		// TODO
 			return v_status;
 		}
 		
 		/**
 		/**
		  * @desc Trigger UE given by p_ueRef to add a new media stream 
		  * @desc Trigger UE given by p_ueRef to add a new media stream 
		  * @param p_userCompRef Reference to IMS UE user component
		  * @param p_userCompRef Reference to IMS UE user component
+110 −0
Original line number Original line Diff line number Diff line
@@ -728,4 +728,114 @@ group Limit {
		f_cf_int_call_down(v_config);
		f_cf_int_call_down(v_config);
	}
	}
	
	
	
	/**
	 * @desc Addition of media streams (reINVITE)
	 * @see TS 186 011-2 V2.3.1 cause 4.5.3.1.3.7
	 */
	testcase TC_IMS_CALL_0020() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
		var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
		var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw);
		var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_A);
		var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
		var ImsUserInfo v_userInfoB := f_getAnyValidUser(PX_EUT_B);
		
		// variables
		var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
		var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
		var CF_INT_CALL v_config := {v_gmA, v_mw, v_gmB};
				
		// map/connect component ports
		f_cf_user_up(v_ueA);
		f_cf_user_up(v_ueB);
		
		// configuration
		f_cf_int_call_up(v_config);
		
		// preamble
		f_PR_user_home_registration(v_ueA,v_userInfoA);
		f_PR_user_home_registration(v_ueB,v_userInfoB);
		
		// test body
		
		// Test Sequence 1 --------------------->
		f_mtc_userTriggerInitiateCall (v_ueA, v_userInfoB);
		// Test Sequence 2 --------------------->
		f_mtc_userCheckRinging(v_ueB);
		// Test Sequence 3 --------------------->
		f_mtc_userCheckPeerIsRinging(v_ueA);
		// Test Sequence 4 --------------------->
		f_mtc_userTriggerAnswerCall(v_ueB);
		// Test Sequence 5 --------------------->
		f_mtc_userCheckCallEstablished(v_ueA);
		// Test Sequence 6 --------------------->
		f_mtc_userCheckCallEstablished(v_ueB);
		// Test Sequence 7 --------------------->
		f_mtc_userAddNewMediaStream(v_ueA);
		
		// check 1
		f_mtc_check_TP_IMS_5106_01_gm(v_gmA,1);
		f_mtc_check_TP_IMS_5106_01_mw(v_mw,1);
		
		// Test Sequence 8 --------------------->
		// optional	
		// Test Sequence 9 --------------------->
		// optional
		
		// Test Sequence 10 -------------------->
		f_mtc_userCheckNewMediaStream(v_ueB);
		
		// Test Sequence 11 -------------------->
		f_mtc_userCheckNewMediaStream(v_ueA);
		
		// check 2
		f_mtc_check_TP_IMS_5121_02_gm(v_gmB,1);
		f_mtc_check_TP_IMS_5121_02_mw(v_mw,1);
		
		// Test Sequence 12 -------------------->
		f_mtc_userModifiyMediaStream(v_ueA);
		
		// check 1
		f_mtc_check_TP_IMS_5106_01_gm(v_gmA,0);
		f_mtc_check_TP_IMS_5106_01_mw(v_mw,0);
		
		// Test Sequence 13 -------------------->
		// optional
		// Test Sequence 14 -------------------->
		// optional
		
		// Test Sequence 15 -------------------->
		f_mtc_userCheckNewMediaStream(v_ueB);
		
		// check 2
		f_mtc_check_TP_IMS_5121_02_gm(v_gmB,0);
		f_mtc_check_TP_IMS_5121_02_mw(v_mw,0);
		
		// Test Sequence 16 -------------------->
		f_mtc_userCheckNewMediaStream(v_ueA);
		
		// Test Sequence 17 -------------------->
		f_mtc_triggerEndCall(v_ueB);
		
		// check 2
		f_mtc_check_TP_IMS_5121_02_gm(v_gmB,0);
		f_mtc_check_TP_IMS_5121_02_mw(v_mw,0);
		
		// Test Sequence 18 -------------------->
		f_mtc_userCheckCallEnded(v_ueA );
		
		// Test Sequence 19 -------------------->
		f_mtc_userCheckCallEnded(v_ueB );
		
		// postamble
		f_PO_user_home_deregistration(v_ueA);
		f_PO_user_home_deregistration(v_ueB);
		
		//unmap/disconnet component ports
		f_cf_user_down(v_ueA);
		f_cf_user_down(v_ueB);
		f_cf_int_call_down(v_config);
	}
	
}
}
 No newline at end of file