Commit ee51c62c authored by Yann Garcia's avatar Yann Garcia
Browse files

Updating Gm interface

parent 776e3b8c
Loading
Loading
Loading
Loading
+3541 −3616
Original line number Original line Diff line number Diff line
@@ -5,79 +5,45 @@
 */
 */
module AtsImsIot_Behavior {
module AtsImsIot_Behavior {
    
    
	import from AtsImsIot_TestSystem { type ImsInterfaceMonitor, ImsTestCoordinator; }
    // LibSip
	import from LibIot_PIXITS {modulepar PX_MAX_MSG_WAIT;}
	import from AtsImsIot_Templates {template all;}
	import from AtsImsIot_TypesAndValues { type SipMessage, SipMessageList, NAPTRmessage, EnumResponse, EnumQuery, SkipType; }
	import from LibIot_TestInterface { type EquipmentUser, IotEquipmentUser };
	import from LibIms_UpperTester {type ImsUserInfo;}
	import from LibIot_TypesAndValues {type SetFilterReq, SetFilterRsp;}
	import from LibIot_Functions { function f_setConformanceVerdict, f_setIotVerdictFAIL; }
    import from LibSip_SIPTypesAndValues all;
    import from LibSip_SIPTypesAndValues all;
    import from LibSip_Templates all;
    import from LibSip_Templates all;
	
    import from LibSip_Common all;
	import from LibSip_Common {
    import from LibSip_SDPTypes all;
		type 
    // LibIot
			GenericParam,
    import from LibIot_PIXITS  all;
			SemicolonParam_List
    import from LibIot_TestInterface  all;
	}	
    import from LibIms_UpperTester  all;
	
    import from LibIot_TypesAndValues  all;
	import from AtsImsIot_Functions all;
    import from LibIot_Functions  all;
	import from LibIot_PIXITS {modulepar PX_EUT_A, PX_EUT_B;}
    import from LibIot_PIXITS all;
	// LibSip
	import from LibSip_SDPTypes { type SDP_media_desc_list };
    // LibMsrp
    // LibMsrp
	import from LibMsrp_TypesAndValues { type MsrpURI };
    import from LibMsrp_TypesAndValues all;
	import from LibMsrp_Functions { function f_str2msrpUri };
    import from LibMsrp_Functions all;
    import from LibMsrp_Templates { 
    import from LibMsrp_Templates all;
        template 
    // LibDiameter
            m_msrpSend_Dummy, mw_msrpSEND_toPath_fromPath_contentType, 
            m_msrpReport_Dummy, mw_msrpREPORT_success, 
            m_msrpResponse_Dummy, mw_msrpResponse_toPath_fromPath, 
            mw_toPath,  mw_fromPath, mw_msrpResponse_toPath_fromPath_with_transferReports,
            m_msrpURIs_ToPath_Dummy, m_msrpURIs_FromPath_Dummy, 
            mw_contentType 
    };
    import from DiameterS6a_Templates all;
    import from DiameterS6a_Templates all;
    import from DiameterS6a_PIXITS all;
    import from DiameterS6a_PIXITS all;
    import from DiameterGx_Templates all;
    import from DiameterGx_Templates all;
	// LibDiameter
    import from LibDiameter_Templates all;
    import from LibDiameter_Templates all;
//    import from DiameterRx_Templates all;
//    import from DiameterRx_Templates all;
    // AtsImsIot
    import from AtsImsIot_TypesAndValues all;
    import from AtsImsIot_Templates  all;
    import from AtsImsIot_TP_behavior_GM all;
    import from AtsImsIot_Functions all;
    import from AtsImsIot_TestSystem  all;
    
    
    group checks {
    group checks {


        group checksTC_IMS_MESS_0001{
        group checksTC_IMS_MESS_0001{
        
        
		 /**
          * @desc
          *     TP_IMS_4002_01 in CFW step 3 (MESSAGE)<br> ensure that {<br>
          *     when { UE_A sends a MESSAGE to UE_B containing a Message_Body
          *     greater than 1300 bytes }<br> then { IMS_B receives the MESSAGE
          *     containing the Message_Body greater than 1300 bytes }<br> }
          */
	    function f_mtc_check_TP_IMS_4002_01_gm(ImsInterfaceMonitor p_monitorCompRef) 
		runs on ImsTestCoordinator {
		   	    		
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mdw_TP_IMS_4002_01(?))},//? CallId can be checked
                {mw_SipRequest(mw_MESSAGE_Request_Base)},
                {0,omit},
                "TP_IMS_4002_01_gm",
                false,
                false
            )
           );
           p_monitorCompRef.done;
	    }

        function f_mtc_check_TP_IMS_4002_01_ic(ImsInterfaceMonitor p_monitorCompRef) 
        function f_mtc_check_TP_IMS_4002_01_ic(ImsInterfaceMonitor p_monitorCompRef) 
        runs on ImsTestCoordinator {
        runs on ImsTestCoordinator {
                           
                           
           p_monitorCompRef.start(
           p_monitorCompRef.start(
            f_imsIot_receive(
            f_imsIot_receive(
                {mw_SipRequest(mdw_TP_IMS_4002_01(?))},//? CallId can be checked
                {mw_SipRequest(mdw_MESSAGE_1500c)}, // FIXME CallId and more can be checked
                {mw_SipRequest(mw_MESSAGE_Request_Base)},
                {mw_SipRequest(mw_MESSAGE_Request_Base)},
                {0, omit},
                {0, omit},
                "TP_IMS_4002_01_ic",
                "TP_IMS_4002_01_ic",
@@ -592,26 +558,6 @@ group checksTC_IMS_MESS_0001{
    } // group
    } // group


group checksTC_IMS_REG_0002{        
group checksTC_IMS_REG_0002{        
	    /**
		 * @desc Starts monitor component behavior 
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5203_01_gm(
	    	ImsInterfaceMonitor p_monitorCompRef
	    ) runs on ImsTestCoordinator {
		   // Check that the UE sends any register	    		
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mw_REGISTER_Request_Base)},
                {},
                {0, omit},
                "TP_IMS_5203_01",
                false,
                false
            )
           );
           p_monitorCompRef.done;
	    }


        /**
        /**
         * @desc Starts monitor component behavior
         * @desc Starts monitor component behavior
@@ -825,27 +771,6 @@ group checksTC_IMS_REG_0002{
    } // end group
    } // end group


group checksTC_IMS_CALL_0001 {        
group checksTC_IMS_CALL_0001 {        
	    /**
		 * @desc Starts monitor component behavior 
		 * @param p_monitorCompRef Reference to monitor component
		 */
	    function f_mtc_check_TP_IMS_5097_01_gm(
	    	ImsInterfaceMonitor p_monitorCompRef,
			boolean p_checkMessage
	    ) runs on ImsTestCoordinator {
		   	    		
           p_monitorCompRef.start(
            f_imsIot_receive(
                {mw_SipRequest(mw_INVITE_Request_Base)},
                {},
                {0, omit},
                "TP_IMS_5097_01",
                false,
				p_checkMessage
            )
           );
           p_monitorCompRef.done;
	    }
        
        
        /**
        /**
         * @desc Starts monitor component behavior
         * @desc Starts monitor component behavior
@@ -1365,7 +1290,7 @@ group checksTC_IMS_CALL_0001 {
group checksTC_IMS_CALL_0001F {
group checksTC_IMS_CALL_0001F {


/*functions already used in test TC_IMS_CALL_0001
/*functions already used in test TC_IMS_CALL_0001
 * f_mtc_check_TP_IMS_5097_01_gm 
 * f_mtc_check_TP_GM_PCSCF_INVITE_01 
 * f_mtc_check_TP_IMS_5097_01_ic
 * f_mtc_check_TP_IMS_5097_01_ic
 * f_mtc_check_TP_IMS_5107_01_gm 
 * f_mtc_check_TP_IMS_5107_01_gm 
 * f_mtc_check_TP_IMS_5107_01_ic
 * f_mtc_check_TP_IMS_5107_01_ic
@@ -1386,7 +1311,7 @@ group checksTC_IMS_CALL_0001F {
group checksTC_IMS_CALL_0002 {
group checksTC_IMS_CALL_0002 {


/*functions already used in test TC_IMS_CALL_0001
/*functions already used in test TC_IMS_CALL_0001
 * f_mtc_check_TP_IMS_5097_01_gm 
 * f_mtc_check_TP_GM_PCSCF_INVITE_01 
 * f_mtc_check_TP_IMS_5097_01_ic
 * f_mtc_check_TP_IMS_5097_01_ic
 * f_mtc_check_TP_IMS_5097_02_gm 
 * f_mtc_check_TP_IMS_5097_02_gm 
 * f_mtc_check_TP_IMS_5097_02_ic
 * f_mtc_check_TP_IMS_5097_02_ic
@@ -3363,7 +3288,7 @@ group checksTC_IMS_SS_0006 {


group checksTC_IMS_SS_0007 {
group checksTC_IMS_SS_0007 {
    
    
	// f_mtc_check_TP_IMS_5097_01_gm already used in test TC_IMS_CALL_0001	    
    // f_mtc_check_TP_GM_PCSCF_INVITE_01 already used in test TC_IMS_CALL_0001        
    // f_mtc_check_TP_IMS_5097_01_ic already used in test TC_IMS_CALL_0001    
    // f_mtc_check_TP_IMS_5097_01_ic already used in test TC_IMS_CALL_0001    
    // f_mtc_check_TP_IMS_5108_03_ic already used in test TC_IMS_SS_0003        
    // f_mtc_check_TP_IMS_5108_03_ic already used in test TC_IMS_SS_0003        
    // f_mtc_check_TP_IMS_5108_03_isc already used in test TC_IMS_SS_0003    
    // f_mtc_check_TP_IMS_5108_03_isc already used in test TC_IMS_SS_0003    
+367 −13

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Original line Diff line number Diff line
@@ -194,7 +194,7 @@ module AtsImsIot_Templates {
		* 
		* 
		* @desc Message Request containing a message body greater than 1500 bytes.
		* @desc Message Request containing a message body greater than 1500 bytes.
		*/
		*/
		template MESSAGE_Request mdw_TP_IMS_4002_01(template CallId p_callId) modifies mw_MESSAGE_Request_Base := {
		template MESSAGE_Request mdw_MESSAGE_1500c(template CallId p_callId := ?) modifies mw_MESSAGE_Request_Base := {
			msgHeader := {
			msgHeader := {
				contact := *
				contact := *
			},
			},
+1858 −1791
Original line number Original line Diff line number Diff line
@@ -4,36 +4,105 @@
 *    @desc        This module provides ATS specific test case definitions.
 *    @desc        This module provides ATS specific test case definitions.
 */
 */
module AtsImsIot_TestCases_CALL {
module AtsImsIot_TestCases_CALL {
	import from AtsImsIot_Behavior {
        function all;
    }
    
    
	import from AtsImsIot_Functions {
    // LibSip
        function all;
    import from LibSip_SIPTypesAndValues all;
    }
    import from LibIms_UpperTester all;
    
    
	import from LibIot_PIXITS {modulepar PX_EUT_A, PX_EUT_B;}
    // LibIot
    import from LibIot_PIXITS all;
    import from LibIot_TestConfiguration all;
    import from LibIot_TestInterface all;
    
    
	import from LibIms_UpperTester {type ImsUserInfo;}
    // AtsImsIot
    import from AtsImsIot_TP_behavior_GM all;
    import from AtsImsIot_Behavior all; // TODO To be removed
    import from AtsImsIot_Functions all;
    import from AtsImsIot_TestSystem all;
    import from AtsImsIot_TestConfiguration all;
    
    
    import from LibSip_SIPTypesAndValues {const c_statusLine100, c_statusLine180, c_statusLine200;}
    group imsSipSessionEstablishment {
        
        
	import from LibIot_TestConfiguration {
        group originatingLeg {
        function f_cf_create_IotEquipmentUser;
    }
            
            
	import from AtsImsIot_TestConfiguration {
            /**
        const all;
             * @desc To demonstrate the establishment of dedicated bearers at the originating EPC due to SIP session establishment
        function all;
             */
    }
            testcase TC_VxLTE_INT_INI_01() 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 ImsUserInfo v_userInfoA := f_getSipUserId(PX_EUT_A);
                var ImsUserInfo v_userInfoB := f_getSipUserId(PX_EUT_B);
                var ImsUserInfo v_userTelInfoB := f_getTelUserId(PX_EUT_B);
                var CF_INT_CALL v_config := {v_gmA, omit, omit, omit, v_gmB, omit};
                        
                // map/connect component ports
                f_cf_adapter_up();
                f_cf_user_up(v_ueA);
                f_cf_user_up(v_ueB);
                f_cf_int_call_up(v_config);
                
                
	import from LibIot_TestInterface {type IotEquipmentUser;}
                // preamble
                f_mtc_userRegistration(v_ueA, v_userInfoA); 
                f_mtc_userRegistration(v_ueB, v_userInfoB); 
                
                
	import from AtsImsIot_TestSystem {
                // test body
        type ImsInterfaceMonitor, ImsTestCoordinator, IotSystemInterface;
                f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
    }
                
                f_mtc_check_TP_GM_PCSCF_INVITE_01(v_gmA, true, true); // Event 1
                
                f_mtc_check_TP_GM_PCSCF_180RINGING_01(v_gmA, true); // Event 6
                
                
                
                f_mtc_check_TP_IMS_5097_02_gm(v_gmA, true); // Check2
                f_mtc_check_TP_IMS_5097_04_gm(v_gmA, false); // Check3
        
                // checks 6, 10 (180 Ringing)
                f_mtc_check_TP_IMS_5115_01_gm(v_gmB, true); // Check 6
                f_mtc_check_TP_IMS_5115_03_gm(v_gmB, true); // Check 7
                f_mtc_check_TP_IMS_5131_01_gm(v_gmB, false); // Check 10
                        
                f_mtc_userCheckRinging(v_ueB); //Test Sequence Step 2
                f_mtc_userCheckPeerIsRinging(v_ueA); //Test Sequence Step 3
                f_mtc_userAnswerCall(v_ueB); //Test Sequence Step 4
        
                // checks 8, 11 (2xx)
                f_mtc_check_TP_IMS_5115_02_gm(v_gmB, true); // Check 8 
                f_mtc_check_TP_IMS_5115_04_gm(v_gmB, true); // Check 9
                f_mtc_check_TP_IMS_5131_02_gm(v_gmB, false); // Check 11
        
                f_mtc_userCheckCallEstablished(v_ueA); //Test Sequence Step 5
                f_mtc_userCheckCallEstablished(v_ueB); //Test Sequence Step 6
        
                //check 4 (ACK)
                f_mtc_check_TP_IMS_5107_02_gm(v_gmA, false); // Check2 
        
                f_mtc_EndCall(v_ueA); //Test Sequence Step 7
        
        
	import from AtsImsIot_TestSystem {type CF_INT_CALL;}
                // check 5 (BYE)
                f_mtc_check_TP_IMS_5107_01_gm(v_gmA, false); // Check3
        
                f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 8
                f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 9
                
                // postamble
                f_PO_user_home_deregistration(v_ueA);
                f_PO_user_home_deregistration(v_ueB);
                f_cf_int_call_down(v_config);
                
                //unmap/disconnet component ports
                f_cf_user_down(v_ueA);
                f_cf_user_down(v_ueB);
                f_cf_adapter_down();
            } //End of testcase TC_VxLTE_INT_INI_01
            
        } // End of group originatingLeg
        
    } // End of imsSipSessionEstablishment
    
    
    
    
    /**
    /**
@@ -68,8 +137,7 @@ module AtsImsIot_TestCases_CALL {
        f_mtc_userInitiateCall (v_ueA, v_userTelInfoB); //Test Sequence Step 1
        f_mtc_userInitiateCall (v_ueA, v_userTelInfoB); //Test Sequence Step 1
        
        
        // check 1 (INVITE)
        // check 1 (INVITE)
		f_mtc_check_TP_IMS_5097_01_gm(v_gmA, true); // Check1
        f_mtc_check_TP_GM_PCSCF_INVITE_01(v_gmA, true, true); // Check1
		f_mtc_check_TP_IMS_5097_02_gm(v_gmA, true); // Check2
        f_mtc_check_TP_IMS_5097_04_gm(v_gmA, false); // Check3
        f_mtc_check_TP_IMS_5097_04_gm(v_gmA, false); // Check3
        f_mtc_check_invite_mx(v_mxA);
        f_mtc_check_invite_mx(v_mxA);
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1    
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1    
@@ -168,7 +236,7 @@ module AtsImsIot_TestCases_CALL {
        f_mtc_userInitiateCall (v_ueA, v_userInfoB); //Test Sequence Step 1
        f_mtc_userInitiateCall (v_ueA, v_userInfoB); //Test Sequence Step 1
        
        
        // check 1 (INVITE)
        // check 1 (INVITE)
		f_mtc_check_TP_IMS_5097_01_gm(v_gmA, false); // Check1
        f_mtc_check_TP_GM_PCSCF_INVITE_01(v_gmA, false); // Check1
        f_mtc_check_invite_mx(v_mxA);        
        f_mtc_check_invite_mx(v_mxA);        
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, false); // Check1 
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, false); // Check1 
        f_mtc_check_invite_mx(v_mxB);
        f_mtc_check_invite_mx(v_mxB);
@@ -275,8 +343,7 @@ module AtsImsIot_TestCases_CALL {
        f_mtc_userInitiateCall (v_ueA, v_userInfoB); //Test Sequence Step 1
        f_mtc_userInitiateCall (v_ueA, v_userInfoB); //Test Sequence Step 1
        
        
        // check 1 (INVITE)
        // check 1 (INVITE)
		f_mtc_check_TP_IMS_5097_01_gm(v_gmA, true); // Check1
        f_mtc_check_TP_GM_PCSCF_INVITE_01(v_gmA, true); // Check1
		f_mtc_check_TP_IMS_5097_02_gm(v_gmA, false); // Check2
        f_mtc_check_invite_mx(v_mxA);
        f_mtc_check_invite_mx(v_mxA);
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1    
        f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1    
        f_mtc_check_TP_IMS_5097_02_ic(v_ic, false); // Check2    
        f_mtc_check_TP_IMS_5097_02_ic(v_ic, false); // Check2    
+63 −59
Original line number Original line Diff line number Diff line
@@ -5,15 +5,19 @@
 */
 */
module AtsImsIot_TestCases_ENUM {
module AtsImsIot_TestCases_ENUM {


	import from LibIot_PIXITS { modulepar PX_EUT_A, PX_EUT_B; }
    // LibSip
	import from LibIms_UpperTester { type ImsUserInfo; }
    import from LibIms_UpperTester all;
	import from LibSip_SIPTypesAndValues { const c_statusLine100, c_statusLine180, c_statusLine200; }
    import from LibSip_SIPTypesAndValues all;
	import from LibIot_TestConfiguration { function f_cf_create_IotEquipmentUser; }
    // LibIot
	import from LibIot_TestInterface { type IotEquipmentUser; }
    import from LibIot_TestConfiguration all;
	import from AtsImsIot_TestSystem { type CF_INT_CALL, ImsInterfaceMonitor, ImsTestCoordinator, IotSystemInterface; }
    import from LibIot_TestInterface all;
	import from AtsImsIot_TestConfiguration { const all; function all; }
    import from LibIot_PIXITS all;
	import from AtsImsIot_Functions { function all; }
    // AtsImsIot
	import from AtsImsIot_Behavior { function all; }
    import from AtsImsIot_TP_behavior_GM all;
    import from AtsImsIot_Behavior all; // TODO To be removed
    import from AtsImsIot_TestSystem all;
    import from AtsImsIot_TestConfiguration all;
    import from AtsImsIot_Functions all;
    
    
    
    
    /**
    /**
@@ -51,7 +55,7 @@ module AtsImsIot_TestCases_ENUM {
        // check 1 (INVITE + ENUM db exchange)
        // check 1 (INVITE + ENUM db exchange)
        f_mtc_check_TP_IMS_ENUM_01 ( v_config.gmA, v_config.naptr );
        f_mtc_check_TP_IMS_ENUM_01 ( v_config.gmA, v_config.naptr );
        // check 2 (INVITE arrived at gmB)
        // check 2 (INVITE arrived at gmB)
		f_mtc_check_TP_IMS_5097_01_gm ( v_config.gmB, false );
        f_mtc_check_TP_GM_PCSCF_INVITE_01 ( v_config.gmB, false );


        // postamble
        // postamble
        f_PO_user_home_deregistration ( v_ueA );
        f_PO_user_home_deregistration ( v_ueA );
Loading