Commit 5b6d52e0 authored by Yann Garcia's avatar Yann Garcia
Browse files

Add IC/ISC interfaces

parent 31abab45
Loading
Loading
Loading
Loading
+1568 −0

File added.

Preview size limit exceeded, changes collapsed.

+232 −0
Original line number Diff line number Diff line
/*
 *  @author     STF 574, TTF006
 *  @version    $Id$
 *  @desc       This module provides the TP behaviour functions at IC interface
 */

module AtsIms5gIot_TP_behavior_ISC
{

    import from AtsImsIot_TestSystem all;
    import from LibIot_PIXITS all;
    import from AtsImsIot_Templates all;
    import from AtsImsIot_TypesAndValues all;
    import from LibIot_TestInterface all;
    import from LibIms_UpperTester all;
    import from LibIot_TypesAndValues all;
    import from LibIot_Functions all;
    import from LibSip_SIPTypesAndValues all;
    import from LibSip_Templates all;
    
    import from LibSip_Common all;
    
    import from AtsImsIot_Functions all;
    import from AtsImsIot_Templates_ISC all;
    import from LibIot_PIXITS all;
    // LibSip
    import from LibSip_SDPTypes all;
    // LibAtsImsIot
    import from AtsImsIot_TestSystem all;
    import from AtsImsIot_TypesAndValues all;
    import from AtsImsIot_TP_behavior_IC all;
    import from AtsImsIot_TP_behavior_ISC all;
    // AtsIms5gIot
    import from AtsIms5gIot_TypesAndValues all;
    import from AtsIms5gIot_TestSystem all;

    import from AtsImsIot_Templates_ISC all;
    
group g_ISC {

    group imsRegistration {
    /**
        * @desc Starts monitor component behavior for TP_ISC_SCSCF_REGISTER_01
        * @param p_monitorCompRef Reference to monitor component
        * @remark source function f_mtc_check_TP_IC_IBCF_REGISTER_02
        */
        function f_mtc_check_TP_ISC_SCSCF_5G_REGISTER_01(
                                                         SipInterfaceMonitor  p_monitorCompRef, 
                                                         boolean p_checkMessage := false
                                                         ) runs on FiveGNRTestCoordinator {
            f_mtc_check_TP_ISC_SCSCF_REGISTER_01(p_monitorCompRef, p_checkMessage);
        }//end f_mtc_check_TP_ISC_SCSCF_5G_REGISTER_01
    }// end imsRegistration
    
    
    group imsInvite {
    
        /**
         * @desc Verify that the S-CSCF successfully receives an initial emergency INVITE from a registered but not emergency registered UE.
         * Reference 
         *   "ETSI TS 124 229 [1], Clauses 5.7.1.14"
         * Config Id CF_VoLTE_INT_ES
         * PICS Selection NONE
         * Initial conditions with {
         *    the UE_A entity isAttachedTo the EPC_A and
         *    the UE_A entity isRegisteredTo the IMS_A and
         *    the UE_A entity not isEmergencyRegisteredTo the IMS_A
         * }
         * Expected behaviour
         *   ensure that {
         *       when {
         *           the UE_A entity isRequestedToEstablishEmergencyCall
         *       }
         *       then {
         *           the IMS_S_CSCF_A entity receives an INVITE containing
         *               From indicating value PX_UE_A_SIP_URI,
         *               To indicating value PX_SIP_EMERGENCY_SERVICE_URN,
         *               CallId indicating value PX_UE_A_CALLID,
         *               Via indicating value PX_UE_A_VIA,
         *               Route indicating value PX_UE_A_SERVICE_ROUTE,
         *               PPreferredIdentity, // one or two instances
         *               MessageBody;
         *           from the UE_A entity
         *       }
         *   }
         */
        function f_mtc_check_TP_ISC_SCSCF_5G_ECO_INVITE_01( 
                                                           in SipInterfaceMonitor p_monitorCompRef,
                                                           in boolean p_checkMessage := false,
                                                           out SipMessage p_sip
                                                           ) runs on FiveGNRTestCoordinator {
            f_mtc_check_TP_ISC_SCSCF_ECO_INVITE_01(p_monitorCompRef, p_checkMessage, p_sip);
        } // End of function f_mtc_check_TP_ISC_SCSCF_5G_INVITE_01
        
    }

//     group ims183SessionProgress {
        
//         function f_mtc_check_TP_ISC_SCSCF_5G_ECO_183SESSION_PROGRESS_01(
//                                                                    in SipInterfaceMonitor p_monitorCompRef,
//                                                                    in boolean p_checkMessage := false,
//                                                                    in SipMessage p_sip
//                                                                    ) runs on FiveGNRTestCoordinator {
//             if (isvalue(p_monitorCompRef)) {
//                 // Check the 183 SESSION_PROGRESS
//                 p_monitorCompRef.start(
//                                        f_Iot_Sip_receive(
//                                                          { mw_SipResponse(mw_TP_ISC_SCSCF_183SessionProgress_01(
//                                                                                                                p_sip.request.msgHeader.cSeq,
//                                                                                                                p_sip.request.msgHeader.fromField,
//                                                                                                                p_sip.request.msgHeader.toField
//                                                                                                                )) 
//                                                          },
//                                                          { mw_SipResponse(mw_183SessionProgress_Base) },
//                                                          { 0, omit },
//                                                          "TP_ISC_SCSCF_ECO_183SESSION_PROGRESS_01",
//                                                          false,
//                                                          p_checkMessage
//                                                          )
//                                         );
//                 p_monitorCompRef.done;
//             }
//         } // End of function f_mtc_check_TP_ISC_SCSCF_5G_ECO_183SESSION_PROGRESS_01

//     } // End of group ims183SessionProgress

//     group ims180Ringing {
        
//         function f_mtc_check_TP_ISC_SCSCF_5G_ECO_180RINGING_01(
//                                                            in SipInterfaceMonitor p_monitorCompRef,
//                                                            in boolean p_checkMessage := false,
//                                                            in SipMessage p_sip
//                                                            ) runs on FiveGNRTestCoordinator {
//             if (isvalue(p_monitorCompRef)) {
//                 // Check the 180 RINGING
//                 p_monitorCompRef.start(
//                                        f_Iot_Sip_receive(
//                                                          { mw_SipResponse(mw_TP_ISC_SCSCF_180Ringing_01(
//                                                                                                        p_sip.request.msgHeader.cSeq,
//                                                                                                        p_sip.request.msgHeader.fromField,
//                                                                                                        mw_To_NameAddr_TelUrl(
//                                                                                                                              -,
//                                                                                                                              p_sip.request.msgHeader.toField.addressField.addrSpecUnion.components.tel.subscriber
//                                                                           ))) 
//                                                          },
//                                                          { mw_SipResponse(mw_180Ringing_Base) },
//                                                          { 0, omit },
//                                                          "TP_ISC_SCSCF_180RINGING_01",
//                                                          false,
//                                                          p_checkMessage
//                                                          )
//                                         );
//                 p_monitorCompRef.done;
//             }
//         } // End of function f_mtc_check_TP_ISC_SCSCF_5G_ECO_180RINGING_01
        
//     } // End of group ims180Ringing

//     group ims200Ok {
        
//         function f_mtc_check_TP_ISC_SCSCF_5G_ECO_200OK_01(
//                                                       in SipInterfaceMonitor p_monitorCompRef,
//                                                       in boolean p_checkMessage := false,
//                                                       in SipMessage p_sip
//                                                       ) runs on FiveGNRTestCoordinator {
//             if (isvalue(p_monitorCompRef)) {
//                 var ImsUserInfo v_userInfoB := f_getSipUserId(PX_EUT_B);
                
//                 // Check the 200 OK
//                 p_monitorCompRef.start(
//                                        f_Iot_Sip_receive(
//                                                          { mw_SipResponse(mw_200OK(
//                                                                                    p_sip.request.msgHeader.cSeq,
//                                                                                    p_sip.request.msgHeader.callId,
//                                                                                    p_sip.request.msgHeader.fromField,
//                                                                                    (
//                                                                                       mw_To_NameAddr_TelUrl({quotedString:=f_getSipUserId(PX_EUT_B).publicId}),
//                                                                                       mw_To_AddrUnion_TelUrl(f_getTelUserId(PX_EUT_B).publicId),
//                                                                                       p_sip.request.msgHeader.toField
//                                                                                     )
//                                                                                    )) 
//                                                          },
//                                                          { mw_SipResponse(mw_200OK_Base) },
//                                                          { 0, omit },
//                                                          "TP_ISC_SCSCF_ECO_200OK_01",
//                                                          false,
//                                                          p_checkMessage
//                                                          )
//                                         );
//                 p_monitorCompRef.done;
                
//             }
//         } // End of function f_mtc_check_TP_ISC_SCSCF_5G_ECO_200OK_01
        
//     } // End of group ims200Ok
    
//    group imsAck {
        
//         function f_mtc_check_TP_ISC_SCSCF_5G_ECO_ACK_01(
//                                                    in SipInterfaceMonitor p_monitorCompRef,
//                                                    in boolean p_checkMessage := false,
//                                                    in SipMessage p_sip
//                                                    ) runs on FiveGNRTestCoordinator {
//             if (isvalue(p_monitorCompRef)) {
//                 // Check the ACK
//                 p_monitorCompRef.start(
//                                        f_Iot_Sip_receive(
//                                                          { mw_SipRequest(mw_TP_ISC_SCSCF_ACK_01(
//                                                                                                p_sip.request.msgHeader.callId,
//                                                                                                p_sip.request.msgHeader.cSeq,
//                                                                                                -, // FIXME To be set
//                                                                                                p_sip.request.msgHeader.fromField,
//                                                                                                p_sip.request.msgHeader.toField
//                                                                                                )) 
//                                                          },
//                                                          { mw_SipRequest(mw_ACK_Request_Base) },
//                                                          { 0, omit },
//                                                          "TP_ISC_SCSCF_ECO_ACK_01 - Request",
//                                                          false,
//                                                          p_checkMessage
//                                                          )
//                                         );
//                 p_monitorCompRef.done;
//             }
//         } // End of function f_mtc_check_TP_ISC_SCSCF_5G_ECO_ACK_01
        
//     } // End of group imsAck


} // end of g_ISC

} // end module AtsIms5gIot_TP_behavior_ISC
 No newline at end of file
+2 −0
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@ sources := \
            AtsIms5gIot_TP_behavior_MW_SI.ttcn  \
            AtsIms5gIot_TP_behavior_MW_IS.ttcn  \
            AtsIms5gIot_TP_behavior_MI.ttcn     \
            AtsIms5gIot_TP_behavior_IC.ttcn     \
            AtsIms5gIot_TP_behavior_ISC.ttcn    \
            AtsIms5gIot_TD_REG.ttcn             \
            AtsIms5gIot_TD_INI.ttcn             \

+833 −0

File added.

Preview size limit exceeded, changes collapsed.

+816 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading