Commit e8086469 authored by wattelet's avatar wattelet
Browse files

RCS-e FILE 5 & 6

parent bc8a3ae8
Loading
Loading
Loading
Loading
+174 −12
Original line number Diff line number Diff line
@@ -1725,7 +1725,6 @@ module AtsImsIot_TestCases_RCS {
	* @desc IMS network supports file transfer service and file between two users 
	* 		in their home network can be performed. User B must explicitly accept 
	* 		the file transfer.
		* @see TS 102 901-2 V0.0.1 clause 4.5.4.1.1
	*/
	testcase TC_IMS_FILE_0001() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
@@ -1794,7 +1793,6 @@ module AtsImsIot_TestCases_RCS {
	* @desc IMS network supports file transfer service and file transfer between 
	* 		two users, one user in its home network and one user roaming can be 
	* 		performed. User B must explicitly accept the file transfer.
		* @see TS 102 901-2 V0.0.1 clause 4.5.4.1.2
	*/
	testcase TC_IMS_FILE_0002() runs on ImsTestCoordinator system IotSystemInterface {
		// create components
@@ -1863,7 +1861,6 @@ module AtsImsIot_TestCases_RCS {
    /**
    * @desc IMS network supports file transfer service and file between two users in 
    * 		their home network can be performed. Immediate response applies.
    * @see TS 102 901-2 V0.0.1 clause 4.5.4.1.3
    */
    testcase TC_IMS_FILE_0003() runs on ImsTestCoordinator system IotSystemInterface {
        // create components
@@ -2124,6 +2121,172 @@ module AtsImsIot_TestCases_RCS {
        f_cf_adapter_down();
    } //end testcase TC_IMS_FILE_0004_Rcs_2

    /**
    * @desc IMS network supports instant File transfer service and messages exchange between
	* two users in their home networks can be performed. User A starts file transfer, but
	* User B terminates it in the middle of the process
    */
    testcase TC_IMS_FILE_0005 () 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_ic := f_cf_create_monitor(c_ic);
        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_getFtUser(PX_EUT_A);
        var ImsUserInfo v_userInfoB := f_getFtUser(PX_EUT_B); 
        var ImsInterfaceMonitor v_mxA := f_cf_create_monitor(c_mx_A);
        var ImsInterfaceMonitor v_mxB := f_cf_create_monitor(c_mx_B);
        var CF_INT_AS v_config := {v_gmA, v_mxA, v_ic, v_mxB, v_gmB, v_iscA, v_iscB};
				
        // map/connect component ports
        f_cf_adapter_up();
        f_cf_user_up(v_ueA);
        f_cf_user_up(v_ueB);
        f_cf_int_as_up(v_config);
		
        // preamble
        f_mtc_userRegistration(v_ueA, v_userInfoA); 
        f_mtc_userRegistration(v_ueB, v_userInfoB); 
				
        // test body
        f_mtc_StartAllTrafficCapture();	
        	
        f_mtc_userInitiateFt ( v_ueA, v_userInfoB );
        // check INVITE
        f_mtc_check_invite_mx ( v_mxA );
        f_mtc_check_invite_mx ( v_gmB );
        f_mtc_check_response_mx ( v_gmB, c_statusLine100 );
        f_mtc_userAcceptsFt ( v_ueB );
        f_mtc_check_response_mx ( v_gmA, c_statusLine180 );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        f_mtc_userCheckPeerFtInfo ( v_ueA );
		// check ACK
        f_mtc_check_ack_mx ( v_gmA );
        f_mtc_check_ack_mx ( v_gmB );
        f_mtc_userCheckFt ( v_ueA );
        f_mtc_EndFt ( v_ueA );
        // check BYE
        f_mtc_check_bye_mx ( v_gmA ); 
        f_mtc_check_bye_mx ( v_gmB ); 
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        // check OPTIONS
        f_mtc_check_options_mx ( v_mxB );
        f_mtc_check_options_mx ( v_gmA );
        f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
        f_mtc_EndFt ( v_ueB );
        // check BYE
        f_mtc_check_bye_mx ( v_gmB ); 
        f_mtc_check_bye_mx ( v_gmA ); 
        f_mtc_userCheckFtEnded ( v_ueA );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        f_mtc_userCheckFtEnded ( v_ueB );
        // check OPTIONS
        f_mtc_check_options_mx ( v_mxA );
        f_mtc_check_options_mx ( v_gmB );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
		
        // 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);
        f_cf_adapter_down();
    } //end testcase TC_IMS_FILE_0005

    /**
    * @desc IMS network supports instant File transfer service and messages exchange between
	* two users, one user in its home network and one user roaming can be performed. User
	* A starts file transfer, but User B terminates it in the middle of the process
    */
    testcase TC_IMS_FILE_0006 () 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_ic := f_cf_create_monitor(c_ic);
        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_getFtUser(PX_EUT_A);
        var ImsUserInfo v_userInfoB := f_getFtUser(PX_EUT_B); 
        var ImsInterfaceMonitor v_mxA := f_cf_create_monitor(c_mx_A);
        var ImsInterfaceMonitor v_mxB := f_cf_create_monitor(c_mx_B);
        var CF_ROAM_AS v_config := {v_gmA, v_mxA, v_ic, v_mxB, v_gmB, v_iscA, v_iscB};
				
        // map/connect component ports
        f_cf_adapter_up();
        f_cf_user_up(v_ueA);
        f_cf_user_up(v_ueB);
        f_cf_roam_as_up(v_config);
		
        // preamble
        f_mtc_userRegistration(v_ueA, v_userInfoA); 
        f_mtc_userRegistration(v_ueB, v_userInfoB); 
				
        // test body
        f_mtc_StartAllTrafficCapture();	
        	
        f_mtc_userInitiateFt ( v_ueA, v_userInfoB );
        // check INVITE
        f_mtc_check_invite_mx ( v_mxA );
        f_mtc_check_invite_mx ( v_gmB );
        f_mtc_check_response_mx ( v_gmB, c_statusLine100 );
        f_mtc_userAcceptsFt ( v_ueB );
        f_mtc_check_response_mx ( v_gmA, c_statusLine180 );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        f_mtc_userCheckPeerFtInfo ( v_ueA );
		// check ACK
        f_mtc_check_ack_mx ( v_gmA );
        f_mtc_check_ack_mx ( v_gmB );
        f_mtc_userCheckFt ( v_ueA );
        f_mtc_EndFt ( v_ueA );
        // check BYE
        f_mtc_check_bye_mx ( v_gmA ); 
        f_mtc_check_bye_mx ( v_gmB ); 
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        // check OPTIONS
        f_mtc_check_options_mx ( v_mxB );
        f_mtc_check_options_mx ( v_gmA );
        f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
        f_mtc_EndFt ( v_ueB );
        // check BYE
        f_mtc_check_bye_mx ( v_gmB ); 
        f_mtc_check_bye_mx ( v_gmA ); 
        f_mtc_userCheckFtEnded ( v_ueA );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );
        f_mtc_userCheckFtEnded ( v_ueB );
        // check OPTIONS
        f_mtc_check_options_mx ( v_mxA );
        f_mtc_check_options_mx ( v_gmB );
        f_mtc_check_response_mx ( v_gmB, c_statusLine200 );
		f_mtc_check_response_mx ( v_gmA, c_statusLine200 );

        // 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);
        f_cf_adapter_down();
    } //end testcase TC_IMS_FILE_0006
	
    /**
    * @desc An established file transfer session is cancelled by the initiator of the session
    * @see TS 102 901-2 V0.0.1 clause 4.5.4.3.1
@@ -3831,7 +3994,6 @@ module AtsImsIot_TestCases_RCS {
    * @see TS 102 901-2 V2.1.3 clause 5.4.1 Chat 1 to 1 procedure via MSRP
    */
    testcase TC_MSRP_CHAT_0001() runs on ImsTestCoordinator system IotSystemInterface {
        
        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);