Commit ecdfc641 authored by poglitsch's avatar poglitsch
Browse files

MESS_002 Testcase added

parent 9511cd3f
Loading
Loading
Loading
Loading
+179 −1
Original line number Diff line number Diff line
@@ -1570,6 +1570,184 @@ group checksTC_IMS_SS_0007 {

} // group

	group messagingChecks {
		/**
		 * @desc Starts monitor component behavior for TP_IMS_5097_05
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5097_05_gm(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mw_MESSAGE_Request_Base(*))},
                {},
                {0, omit},
                "TP_IMS_5097_05",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    /**
		 * @desc Starts monitor component behavior for TP_IMS_5097_05
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5097_05_mw(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
		   var charstring v_EUT_A_Addr := f_GetEUTScscfAddress(PX_EUT_A);
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mdw_TP_IMS_5097_05_mw(*, mw_SipUrl_Host(v_EUT_A_Addr)))},
                {mw_SipRequest(mw_MESSAGE_Request_Base(*))},
                {0, omit},
                "TP_IMS_5097_05",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    /**
	     * @desc Starts monitor component behavior for TP_IMS_5097_05
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5097_07_gm(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mw_MESSAGE_Request_Base(*))},
                {},
                {0, omit},
                "TP_IMS_5097_07",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    
	    /**
		 * @desc Starts monitor component behavior for TP_IMS_5097_07
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5097_07_mw(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mdw_TP_IMS_5097_07_mw(*,mw_SIP_URI_Base, mw_TEL_URI_Base))},
                {mw_SipRequest(mw_MESSAGE_Request_Base(*))},
                {0, omit},
                "TP_IMS_5097_07",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    
	    /**
	     * @desc Starts monitor component behavior for TP_IMS_5117_02
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5117_02_gm(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipResponse(mdw_2XX_Base)},
                {},
                {0, omit},
                "TP_IMS_5117_02",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    
	    /**
	     * @desc Starts monitor component behavior for TP_IMS_5117_02
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5117_02_mw(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
           		{mw_SipResponse(mw_TP_IMS_5117_02_mw)},
                {mw_SipResponse(mdw_2XX_Base)},
                {0, omit},
                "TP_IMS_5117_02",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    
	    /**
	     * @desc Starts monitor component behavior for TP_IMS_5118_01
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5118_01_gm(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipResponse(mw_200OK_Base)},
                {},
                {0, omit},
                "TP_IMS_5118_01",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
	    
	    
	    /**
	     * @desc Starts monitor component behavior for TP_IMS_5118_01
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5118_01_mw(
	    	ImsInterfaceMonitor p_monitorCompRef,
	    	boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
           p_monitorCompRef.start(
            f_imsIot_receive(
           		{mw_SipResponse(mw_TP_IMS_5118_01_mw)},
                {mw_SipResponse(mw_200OK_Base)},
                {0, omit},
                "TP_IMS_5118_01",
                false,
                p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }	
		
		
	} 

	
} // end group
}// end module
 No newline at end of file
+18 −16
Original line number Diff line number Diff line
@@ -394,6 +394,7 @@ module AtsImsIot_Templates {
    }
    
    template MESSAGE_Request mdw_TP_IMS_5097_05_mw(
    	template CallId p_callId,
    	template SipUrl p_SCSCF_SIP_URI
    ) modifies mw_MESSAGE_Request_Base := {
        msgHeader := {
@@ -424,17 +425,18 @@ module AtsImsIot_Templates {
    }
    
    template Request mdw_TP_IMS_5097_07_mw(
      template CallId p_callId,
      template SipUrl p_SIP_URI,
    	template SipUrl p_TEL_URI
    ) modifies mw_MESSAGE_Request_Base := {
      template SipUrl p_TEL_URI)
    modifies mw_MESSAGE_Request_Base := {
        msgHeader := {
            pAssertedId := {
            pAssertedID := {
                fieldName := P_ASSERTED_ID_E,
                nameAddrs := {
                pAssertedIDValueList := {
                    *, 
                    mw_NameAddr(p_SIP_URI), 
                    { nameAddr := mw_NameAddr(p_SIP_URI)}, 
                    *, 
                    mw_NameAddr(p_TEL_URI), 
                    {nameAddr := mw_NameAddr(p_TEL_URI)},
                    *
                }
            }
@@ -454,7 +456,7 @@ module AtsImsIot_Templates {
	    }   
    }
    
    template Response mw_TP_IMS_5118_02_mw modifies mw_200OK_Base := {
    template Response mw_TP_IMS_5118_01_mw modifies mw_200OK_Base := {
	    msgHeader := {
	        pChargingVector := {
	           fieldName := P_CHARGING_VECTOR_E,
@@ -671,7 +673,7 @@ module AtsImsIot_Templates {
			addrSpec := p_URI
		}
		
		template SipUrl mw_SIP_URI := {
		template SipUrl mw_SIP_URI_Base := {
	        scheme := "sip",  // meaning "not tel"
	        userInfo := ?,
	        hostPort := ?,
@@ -679,7 +681,7 @@ module AtsImsIot_Templates {
	        headers := *
	    }
		
		template SipUrl mw_TEL_URI := {
		template SipUrl mw_TEL_URI_Base := {
            scheme := "tel",
            userInfo := ?,
            hostPort := *,
+52 −0
Original line number Diff line number Diff line
@@ -72,4 +72,56 @@ module AtsImsIot_TestCases_MESS {
		f_cf_monitor_down(v_mw);
	}
	
	
	 	
	/**
     * @desc
     *     IMS network handles messaging with SIP identity correctly without
     *     topology hiding. (ETSI TS 186 011-2 V2.3.1 cause 4.5.4.1)
     */
	testcase TC_IMS_MESS_0002() 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);
		
		// map/connect component ports
		f_cf_user_up(v_ueA);
		f_cf_user_up(v_ueB);
		f_cf_monitor_up(v_gmA);
		f_cf_monitor_up(v_gmB);
		f_cf_monitor_up(v_mw);
		
		// preamble
		f_PR_user_home_registration(v_ueA, f_getSipUserId(PX_EUT_A));
		f_PR_user_home_registration(v_ueB, f_getAnyValidUser(PX_EUT_B));
		
		// test body
		f_mtc_userSendMessage(v_ueA, "test"); 
		
		f_mtc_check_TP_IMS_5097_05_gm(v_gmA, true); // message not removed from port queue
		f_mtc_check_TP_IMS_5097_07_gm(v_gmA, false); // message removed from port queue
		f_mtc_check_TP_IMS_5097_05_mw(v_mw, true);// message not removed from port queue
		f_mtc_check_TP_IMS_5097_07_mw(v_mw, false);// message removed from port queue
		
		f_mtc_userCheckMessageReceipt(v_ueB);
		
		f_mtc_check_TP_IMS_5117_02_gm(v_gmB, true);// message not removed from port queue
		f_mtc_check_TP_IMS_5118_01_gm(v_gmB, false);// message removed from port queue
		f_mtc_check_TP_IMS_5117_02_mw(v_mw, true);// message not removed from port queue
		f_mtc_check_TP_IMS_5118_01_mw(v_mw, false);// message removed from port queue
		
		// postabmle
		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_monitor_down(v_gmA);
		f_cf_monitor_down(v_gmB);
		f_cf_monitor_down(v_mw);
	}	
}
 No newline at end of file