Commit 197f8dd8 authored by Yann Garcia's avatar Yann Garcia
Browse files

Implement TC_NGAP_GNB_MMP_03

parent 1986ad6a
Loading
Loading
Loading
Loading
+21 −15
Original line number Diff line number Diff line
@@ -171,38 +171,44 @@ module NGAP_Steps {
         */
        function f_NGAP_amf_UE_PDU_ResourceSetup() runs on NGAPComponent {
        //FIXME: Implementation of PDU session resource setup                
        } // End of function f_NGAP_amf_UE_PDU_ResourceSetup();


        /******************************************************************/
        } // End of function f_NGAP_amf_UE_PDU_ResourceSetup()

        /**
         * @desc 
         */
        function f_NGAP_gnb_UE_Register() runs on NGAPComponent {
        //FIXME: Implementation of UE registration                
        } // End of function f_NGAP_gnb_UE_Register()

        /**
         * @desc 
         */
        function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent {
        function f_NGAP_amf_UE_NoLongerAvailable() runs on NGAPComponent {
        //FIXME: Implementation of PDU session resource setup                
        } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup();
        } // End of function f_NGAP_amf_UE_NoLongerAvailable()

        /**
         * @desc The IUT entity indicate the initiation "of a Handover Required procedure"
         */
        function f_NGAP_amf_UE_MMP_Initiate_Handover() runs on NGAPComponent {
        //FIXME: Implementation of Handover init                
        } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover();
        } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover()

        /**
         * @desc 
         */
        function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed() runs on NGAPComponent {
        //FIXME: Implementation of Handover init                
        } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed();
        } // End of function f_NGAP_amf_UE_MMP_Initiate_Handover_Completed()

        /******************************************************************/

        /**
         * @desc 
         */
        function f_NGAP_gnb_UE_Register() runs on NGAPComponent {
        //FIXME: Implementation of UE registration                
        } // End of function f_NGAP_gnb_UE_Register()

        /**
         * @desc 
         */
        function f_NGAP_gnb_UE_PDU_ResourceSetup() runs on NGAPComponent {
        //FIXME: Implementation of PDU session resource setup                
        } // End of function f_NGAP_gnb_UE_PDU_ResourceSetup()

    }//end group BehaviorFunctions

+74 −2
Original line number Diff line number Diff line
@@ -945,6 +945,78 @@ module NGAP_TCFunctions {
              } // End of function f_TC_NGAP_GNB_MMP_02

              function f_TC_NGAP_GNB_MMP_03() runs on aMFNGAPComponent {
                // Local variables

                // Preamble
                f_NGAP_amf_init();
                f_NGAP_amf_UE_Register();
                f_NGAP_amf_UE_MMP_Initiate_Handover_Completed();
                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
                log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");

                // Body
                f_NGAP_amf_UE_NoLongerAvailable();
                f_send_NGAP_PDU(
                                m_ngap_initMsg(
                                               m_n2_HandoverRequest(
                                                                    -, -, -,
                                                                    m_uEAggregateMaximumBitRate,
                                                                    m_uESecurityCapabilities,
                                                                    m_securityContext,
                                                                    {
                                                                      m_pDUSessionResourceSetupItemHOReq(
                                                                                                         -,
                                                                                                         m_s_NSSAI('00'O, '000000'O),
                                                                                                         bit2oct(
                                                                                                                 encvalue(
                                                                                                                   m_pDUSessionResourceSetupRequestTransfer(
                                                                                                                     m_pDUSessionResourceSetupRequestTransfer_mandatories(
                                                                                                                       m_pDUSessionType(ipv4),
                                                                                                                       {
                                                                                                                         m_qosFlowSetupRequestItem(
                                                                                                                           PX_QOS_FLOW_IDENTIFIER,
                                                                                                                           m_qosFlowLevelQosParameters(
                                                                                                                             m_qosCharacteristics_dynamic5QI(
                                                                                                                               m_dynamic5QIDescriptor(
                                                                                                                                 1,//in template (value) PriorityLevelQos p_priorityLevelQos,
                                                                                                                                 0,//in template (value) PacketDelayBudget p_packetDelayBudget,
                                                                                                                                 m_PacketErrorRate(
                                                                                                                                   0,//in template (value) PacketErrorRate.pERScalar p_pERScalar,
                                                                                                                                   0//in template (value) PacketErrorRate.pERExponent p_pERExponent
                                                                                                                             ))),
                                                                                                                             m_allocationAndRetentionPriority(
                                                                                                                               1,//in template (value) PriorityLevelARP p_priorityLevelARP,
                                                                                                                               shall_not_trigger_pre_emption,//in template (value) Pre_emptionCapability p_pre_emptionCapability,
                                                                                                                               not_pre_emptable//in template (value) Pre_emptionVulnerability p_pre_emptionVulnerability,
                                                                                                                             )))
                                                                                                                       },
                                                                                                                       m_uPTransportLayerInformation_gTPTunnel(
                                                                                                                         m_gTPTunnel
                                                                                                         ))))))
                                                                    },
                                                                    { 
                                                                      m_allowedNSSAI_Item(
                                                                                          m_s_NSSAI('00'O, '000000'O)
                                                                                          ) 
                                                                    },
                                                                    PX_SOURCE_TO_TARGET_TRANSPARENT_CONTAINER, // FIXME FSCOM Should be a bit2oct(enc(???))
                                                                    m_gUAMI
                                )));

                f_recv_NGAP_PDU(
                                mw_ngap_unsuccMsg(
                                                  mw_n2_HandoverFailure(
                                                                        PX_AMF_UE_NGAP_ID
                                )));


                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
                log("*** " & __SCOPE__ & ": INFO: Testbody done. ***");

                // Postamble
                f_postamble_NGAP_gNB();
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
                log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");

              } // End of function f_TC_NGAP_GNB_MMP_03