Commit 4e56d59d authored by pintar's avatar pintar
Browse files

TC_IMS_SS_0008, TC_IMS_SS_0009, TC_IMS_SS_0010 are done

parent 6356f511
Loading
Loading
Loading
Loading
+191 −0
Original line number Diff line number Diff line
@@ -469,6 +469,197 @@ module AtsImsIot_TestCases_SS {
		f_cf_int_as_down(v_config);
	} //end testcase TC_IMS_SS_0007
	
	/**
	 * @desc Supplementary Service CFU with AS in roaming
	 * @see TS 186 011-2 V2.3.1 cause 4.5.5.8
	 */
	testcase TC_IMS_SS_0008() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
		var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
		var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
		var IotEquipmentUser v_ueA2 := f_cf_create_IotEquipmentUser(c_userUE_A2);
		var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
		var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
		var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw);
		var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
		var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
		var ImsUserInfo v_userInfoB := f_getAnyValidUser(PX_EUT_B);
		var ImsUserInfo v_userInfoA2 := f_getAnyValidUser(PX_EUT_A);//// TODO f_getAnyValidUser2 ? 
		var CF_ROAM_AS v_config := {v_gmA, v_mw, v_gmB, v_iscA, omit};
		
		// map/connect component ports
		// f_cf_user_up(v_ueB);
		f_cf_user_up(v_ueA);
		f_cf_user_up(v_ueB);
		f_cf_user_up(v_ueA2);
		f_cf_roam_as_up(v_config);
		
		// preamble
		f_mtc_userTriggerRegistration(v_ueA, v_userInfoA); 
		f_mtc_userTriggerRegistration(v_ueB, v_userInfoB); 
		f_mtc_userTriggerRegistration(v_ueA2, v_userInfoA2); 
		
		// test body
		f_mtc_userTriggerInitiateCall (v_ueB, v_userInfoA);//Test Sequence Step 1

        // checks 1,2,3 - INVITE
		f_mtc_check_TP_IMS_5046_01_gm(v_gmB, true); // Check1
		f_mtc_check_TP_IMS_5067_01_gm(v_gmB, false); // Check2
		f_mtc_check_TP_IMS_5046_01_mw(v_mw, true); // Check1
		f_mtc_check_TP_IMS_5067_01_mw(v_mw, true); // Check2
		f_mtc_check_TP_IMS_5070_01_mw(v_mw, false); // Check3

   		//f_mtc_userCheckRinging(v_ueA2); //possible Test Sequence Step
		//f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
		f_mtc_userTriggerAnswerCall(v_ueA2);//Test Sequence Step 3

		//check 4 - 200 OK
		f_mtc_check_TP_IMS_5110_01_isc(v_iscA); // Check4 
		f_mtc_check_TP_IMS_5110_01_mw(v_mw); // Check4 
		
		f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 4
		f_mtc_userCheckCallEstablished(v_ueA2);//Test Sequence Step 5

		f_mtc_triggerEndCall(v_ueB);//Test Sequence Step 6
		f_mtc_userCheckCallEnded(v_ueA2);//Test Sequence Step 7
		f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
		
		// postamble
		f_PO_user_home_deregistration(v_ueA);
		f_PO_user_home_deregistration(v_ueB);
		f_PO_user_home_deregistration(v_ueA2);
		
		//unmap/disconnet component ports
		f_cf_user_down(v_ueA);
		f_cf_user_down(v_ueB);
		f_cf_user_down(v_ueA2);
		f_cf_roam_as_down(v_config);
	} //end testcase TC_IMS_SS_0008
	
	/**
	 * @desc Supplementary Service OIP and OIR with AS
	 * @see TS 186 011-2 V2.3.1 cause 4.5.5.9
	 */
	testcase TC_IMS_SS_0009() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
		var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
		var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
		var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
		var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
		var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw);
		var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
		var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
		var ImsUserInfo v_userInfoA := f_getOIRUser(PX_EUT_A);
		var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B); 
		var CF_INT_AS v_config := {v_gmA, v_mw, v_gmB, v_iscA, v_iscB};
		
		// map/connect component ports
		// f_cf_user_up(v_ueB);
		f_cf_user_up(v_ueA);
		f_cf_user_up(v_ueB);
		f_cf_int_as_up(v_config);
		
		// preamble
		f_mtc_userTriggerRegistration(v_ueA, v_userInfoA); 
		f_mtc_userTriggerRegistration(v_ueB, v_userInfoB); 
		
		// test body
		f_mtc_userTriggerInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1

        // checks 1,2 - INVITE
		f_mtc_check_TP_IMS_5097_01_gm(v_gmA, false); // Check1 
		f_mtc_check_TP_IMS_5097_01_mw(v_mw, true); // Check1 
		f_mtc_check_TP_IMS_5108_03_mw(v_mw, false); // Check2 
		f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false); // Check2

   		f_mtc_userCheckRinging(v_ueB); //possible Test Sequence Step
		f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
		f_mtc_userTriggerAnswerCall(v_ueB);//Test Sequence Step 3
		
		f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 4
		f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 5

		f_mtc_triggerEndCall(v_ueB);//Test Sequence Step 6
		f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 7
		f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
		
		// 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_as_down(v_config);
	} //end testcase TC_IMS_SS_0009
	
	/**
	 * @desc Supplementary Service OIP and OIR with AS in roaming
	 * @see TS 186 011-2 V2.3.1 cause 4.5.5.10
	 */
	testcase TC_IMS_SS_0010() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
		var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
		var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
		var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
		var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
		var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw);
		var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
		var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
		var ImsUserInfo v_userInfoA := f_getOIRUser(PX_EUT_A);
		var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B);
		var CF_ROAM_AS v_config := {v_gmA, v_mw, v_gmB, v_iscA, v_iscB};
		
		// map/connect component ports
		// f_cf_user_up(v_ueB);
		f_cf_user_up(v_ueA);
		f_cf_user_up(v_ueB);
		f_cf_roam_as_up(v_config);
		
		// preamble
		f_mtc_userTriggerRegistration(v_ueA, v_userInfoA); 
		f_mtc_userTriggerRegistration(v_ueB, v_userInfoB); 
		
		// test body
		f_mtc_userTriggerInitiateCall (v_ueB, v_userInfoA);//Test Sequence Step 1

		//checks 1,2,5 - INVITE
        f_mtc_check_TP_IMS_5046_01_gm(v_gmB, true);// Check1
        f_mtc_check_TP_IMS_5067_01_gm(v_gmB, false);// Check5
        f_mtc_check_TP_IMS_5046_01_mw(v_mw, true);// Check1
        f_mtc_check_TP_IMS_5067_01_mw(v_mw, true);// Check5
        f_mtc_check_TP_IMS_5097_09_mw(v_mw, false);// Check2
        f_mtc_check_TP_IMS_5097_09_isc(v_iscB, false);// Check2

		//check 3 -180 Ringing
		f_mtc_check_TP_IMS_5308_01_gm(v_gmA, false);// Check3
		f_mtc_check_TP_IMS_5308_01_isc(v_iscA, false);// Check3
		
   		f_mtc_userCheckRinging(v_ueB); //possible Test Sequence Step
		f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
		f_mtc_userTriggerAnswerCall(v_ueA);//Test Sequence Step 3
		
		//check 4 -200 OK
		f_mtc_check_TP_IMS_5308_02_gm(v_gmA, false);// Check4
		f_mtc_check_TP_IMS_5308_02_isc(v_iscA, false);// Check4
		
		f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 4
		f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5

		f_mtc_triggerEndCall(v_ueB);//Test Sequence Step 6
		f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 7
		f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
		
		// 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_roam_as_down(v_config);
	} //end testcase TC_IMS_SS_0010
	
	
	
}
 No newline at end of file