Commit 4f36b84b authored by garciay's avatar garciay
Browse files

Add subset of IMS/EPC TDs

parent a6d4e0ca
Loading
Loading
Loading
Loading
+215 −1
Original line number Diff line number Diff line
@@ -5548,6 +5548,35 @@ group checksTC_IMS_SHARE_0009 {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6009_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6009_02
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         EPC_PCRF receives Session-Termination-Request from IMS_PCSCF containing 
         *             Session-Id_AVP indicating IMS_signalling value_received in Session-Termination-Request 
         *             and Result-Code_AVP indicating DIAMETER_SUCCESS(2001) 
         *     }
         *     then { 
         *         EPC_PCRF sends Session-Termination-Answer to IMS_P-CSCF containing 
         *             Session-Id_AVP indicating IMS_signalling value_received in Session-Termination-Request 
         *             Result-Code_AVP indicating DIAMETER_SUCCESS(2001) 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.1.2
         */
        function f_mtc_check_TP_EPC_6009_02(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6009_02
        
        
        /**
         * Starts monitor component behavior for TP_EPC_6010_01
         * @param p_monitorCompRef Reference to monitor component
@@ -5601,7 +5630,7 @@ group checksTC_IMS_SHARE_0009 {
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.1.2
         * @see TS 103 029 V3.1.1 clause 7.2.2
         */
        function f_mtc_check_TP_EPC_6011_01(
            ImsInterfaceMonitor p_monitorCompRef,
@@ -5673,6 +5702,191 @@ group checksTC_IMS_SHARE_0009 {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6013_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6017_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         UE_A sends REGISTER for de-registration to IMS_P-CSCF 
         *     } 
         *     then { 
         *          UE_A receives 2xx_Response from IMS_P-CSCF 
         *          and IMS_P-CSCF sends Session-Termination-Request to EPC_PCRF containing 
         *              Session Session-Id_AVP indicating session for IMS_signalling session 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.2.2
         */
        function f_mtc_check_TP_EPC_6017_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6017_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6018_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         UE_A sends REGISTER to IMS_P-CSCF 
         *     } 
         *     then { 
         *          IMS_P-CSCF receives REGISTER delivered over default bearer containing 
         *              no Contact_header 
         *          and IMS_P-CSCF sends Response to UE_A 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.2.2
         */
        function f_mtc_check_TP_EPC_6018_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_60178_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6019_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         IMS_P-CSCF sends Response on REGISTER to UE_A 
         *     } 
         *     then { 
         *          UE_A receives Response on REGISTER from IMS_P-CSCF delivered over default bearer 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.2.2
         */
        function f_mtc_check_TP_EPC_6019_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6019_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6027_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         IMS_P-CSCF receives 2xx_response on INVITE from IMS_P-CSCF 
         *     } 
         *     then { 
         *          IMS_P-CSCF sends AA-Request to EPC_PCRF containing 
         *              Framed-IP-Address_AVP indicating IPv4_address of UE_A 
         *              or Framed-IPv6-Address_AVP indicating IPv6_address of UE_A 
         *              and one or more Media-Component-Description_AVP containing 
         *                  Media-Component-Number_AVP indicating values_derived from SDP 
         *                  and one or more Media-Subcomponent-Description_AVP indicating values_derived from SDP 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.3.1.1.1
         */
        function f_mtc_check_TP_EPC_6027_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6027_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6028_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         EPC_PCRF receives AA-Request from IMS_P-CSCF 
         *     } 
         *     then { 
         *          EPC_PCRF sends AA-Answer to IMS_P-CSCF containing 
         *          Result-Code_AVP indicating DIAMETER_SUCCESS(2001) 
         *          and Acceptable-Service-Info_AVP containing 
         *              one or more Media-Component-Description_AVP indicating values_derived from AA-Request 
         *          and IP-CAN_AVP indicating Current_IP_CAN_Type of UE_A 
         *          and RAT-Type_AVP indicating Current_RAT_Type of UE_A 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.3.1.1.1
         */
        function f_mtc_check_TP_EPC_6028_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6028_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6029_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         IMS_P-CSCF receives AA-Answer from EPC_PCRF 
         *     } 
         *     then { 
         *          IMS_P-CSCF sends 2xx_Response on INVITE to UE_A 
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.3.1.1.1
         */
        function f_mtc_check_TP_EPC_6029_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6029_01
        
        /**
         * Starts monitor component behavior for TP_EPC_6030_01
         * @param p_monitorCompRef Reference to monitor component
         * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). 
         * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue.
         * <pre>
         * ensure that {
         *     when { 
         *         UE_A sends media to UE_B 
         *     } 
         *     then { 
         *          EPC uses_correct_bearers for the service_data_flows 
         *          and UE_B receives media 
         *          and EPC uses_correct_bearers for the service_data_flows 
         *          and UE_A receives media
         *     } 
         * } 
         * </pre>
         * @see TS 103 029 V3.1.1 clause 7.3.1.1.1
         */
        function f_mtc_check_TP_EPC_6030_01(
            ImsInterfaceMonitor p_monitorCompRef,
            boolean p_checkMessage
        ) runs on ImsTestCoordinator {
            // TODO 
        } // End of function f_mtc_check_TP_EPC_6030_01
        
    } // End of group epcChecks
    
} // end group
+91 −4
Original line number Diff line number Diff line
@@ -151,9 +151,39 @@ module AtsImsIot_TestCases_EPC {
        } // End of TC TC_IMSEPC_Registration_Initial_Successful_0001
        
        /**
        * @desc	.
         * @desc	IMS De-registration.
         * On UE_A de-registration, P-CSCF signals to PCRF the termination of the IMS signalling session.
         * EPC removes the IMS signalling bearer.
         * Initial registration are still possible, but traffic will be categorized in the Default Bearer
         * @see TS 103 029 V3.1.1 clause 7.2.2
         */
        testcase TC_IMSEPC_DeRegistration_UE_0003 ( ) 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);
            var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
            var ImsInterfaceMonitor v_rx := f_cf_create_monitor(c_rx);
            var ImsUserInfo v_userInfoA := f_getImUser(PX_EUT_A);
            var ImsUserInfo v_userInfoB := f_getImUser(PX_EUT_B); 
            var CF_EPC_CALL v_config := { v_gmA, v_rx, v_gmB };
            
            // map/connect component ports
            f_cf_adapter_up ( );
            f_cf_user_up ( v_ueA );
            f_cf_user_up ( v_ueB );
            f_cf_epc_call_up ( v_config );
            
            // preamble
            
            // test body
            
            // postamble
            
            //unmap/disconnet component ports
            f_cf_user_down(v_ueA);
            f_cf_user_down(v_ueB);
            f_cf_epc_call_down(v_config);
            f_cf_adapter_down();
        } // End of TC TC_IMSEPC_DeRegistration_UE_0003
        
    } // End of group imsRegistrationAndAFSignallingBearer
@@ -161,15 +191,72 @@ module AtsImsIot_TestCases_EPC {
    group sipSessionAndSessionBearer {
        
        /**
        * @desc	.
         * @desc	Originating Leg With SDP Negotiation in INVITE/200 OK.
         * On successful call setup, the P-CSCF should derive from the SDP offer and answer, descriptions of the Service Data Flow. 
         * These are pushed towards EPC as request for creation of adequate bearers. EPC creates based on the EPC's operator policies the bearers for media.
         * When transporting media, the EPC will employ the respective bearer's characteristics. Media transport is possible only after the successful establishment of the session. 
         * Media negotiation happens during INVITE/200 OK (UE A sends SDP-offer, UE B responds with SDP-answer)
         * @see TS 103 029 V3.1.1 clause 7.3.1.1.1
         */
        testcase TC_IMSEPC_Session_Establishment_Originating_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);
            var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
            var ImsInterfaceMonitor v_rx := f_cf_create_monitor(c_rx);
            var ImsUserInfo v_userInfoA := f_getImUser(PX_EUT_A);
            var ImsUserInfo v_userInfoB := f_getImUser(PX_EUT_B); 
            var CF_EPC_CALL v_config := { v_gmA, v_rx, v_gmB };
            
            // map/connect component ports
            f_cf_adapter_up ( );
            f_cf_user_up ( v_ueA );
            f_cf_user_up ( v_ueB );
            f_cf_epc_call_up ( v_config );
            
            // preamble
            
            // test body
            
            // postamble
            
            //unmap/disconnet component ports
            f_cf_user_down(v_ueA);
            f_cf_user_down(v_ueB);
            f_cf_epc_call_down(v_config);
            f_cf_adapter_down();
        } // End of TC TC_IMSEPC_Session_Establishment_Originating_0001
        
        /**
        * @desc	.
        */
        testcase TC_IMSEPC_Session_Establishment_Originating_0003 ( ) 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);
            var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
            var ImsInterfaceMonitor v_rx := f_cf_create_monitor(c_rx);
            var ImsUserInfo v_userInfoA := f_getImUser(PX_EUT_A);
            var ImsUserInfo v_userInfoB := f_getImUser(PX_EUT_B); 
            var CF_EPC_CALL v_config := { v_gmA, v_rx, v_gmB };
            
            // map/connect component ports
            f_cf_adapter_up ( );
            f_cf_user_up ( v_ueA );
            f_cf_user_up ( v_ueB );
            f_cf_epc_call_up ( v_config );
            
            // preamble
            
            // test body
            
            // postamble
            
            //unmap/disconnet component ports
            f_cf_user_down(v_ueA);
            f_cf_user_down(v_ueB);
            f_cf_epc_call_down(v_config);
            f_cf_adapter_down();
        } // End of TC TC_IMSEPC_Registration_Initial_Successful_0001
        
    } // End of group sipSessionAndSessionBearer