Commit 282fc4a6 authored by juvancic's avatar juvancic
Browse files

Merge branch 'devel' of https://forge.etsi.org/rep/int/5g-core/ngap into devel

parents fea193d0 915826ef
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -128,6 +128,7 @@ module NGAP_Pics {
        modulepar boolean PICS_A4_10_2	:= false;  //AMF - Trace procedure - TRACE FAILURE INDICATION messages
        modulepar boolean PICS_A4_10_3	:= false;  //AMF - Trace procedure - DEACTIVATE TRACE messages
        modulepar boolean PICS_A4_10_4	:= false;  //AMF - Trace procedure - CELL TRAFFIC TRACE messages
        modulepar boolean PICS_A4_11_1	:= false;  //AMF - Location Reporting Procedures - LOCATION REPORTING CONTROL
        modulepar boolean PICS_A4_11_2	:= false;  //AMF - Location Reporting Procedures - LOCATION REPORTING FAILURE INDICATION
        modulepar boolean PICS_A4_11_3	:= false;  //AMF - Location Reporting Procedures - LOCATION REPORT
        modulepar boolean PICS_A4_12_1	:= false;  //AMF - TNLA procedure - UE TNLA BINDING RELEASE REQUEST messages
+7 −0
Original line number Diff line number Diff line
@@ -252,6 +252,13 @@ module NGAP_Steps {
        //FIXME: Implementation of UE registration
        } // End of function f_NGAP_gnb_UE_Register

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

        /**
         * @desc
         */
+329 −15
Original line number Diff line number Diff line
@@ -1384,7 +1384,7 @@ module NGAP_TCFunctions {
                     			-,
                     			-, 
                     			-, 
                     			m_uESecurityCapabilities	
                     			-	
                     		)));
                   
                   		
@@ -1419,23 +1419,35 @@ module NGAP_TCFunctions {
                   
                   
                   // Body
           /*        f_send_NGAP_PDU(
                   f_send_NGAP_PDU(
                   	m_ngap_initMsg(
                   		m_n2_UEContextReleaseCommand 
                   		(	
                   			m_uE_NGAP_IDs_aMF_UE_NGAP_ID
                   		m_n2_UEContextModificationRequest_optional2 
                   		(	 
                   				-
                   			),
                   			-
                   			-, // AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
                   			-, // RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,                           
                            -, // RANPagingPriority p_rANPagingPriority, // RAN_Paging_Priority
                            -, // IndexToRFSP p_indexToRFSP, // Index_to_RAT_Frequency_Selection_Priority,
                            m_uEAggregateMaximumBitRate, // UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate, // UE_Aggregate_Maximum_Bit_Rate containing
                            m_uESecurityCapabilities, // UESecurityCapabilities p_uESecurityCapabilities, //  UE_Security_Capabilities containing
                            m_emergencyFallbackIndicator(emergency_fallback_requested), // EmergencyFallbackIndicator p_emergencyFallbackIndicator, // Emergency_Fallback_Indicator,
                            m_gUAMI, // GUAMI p_gUAMI, // New_GUAMI containing
                            m_iAB_Authorized, // IAB_Authorized p_iAB_Authorized, // IAB_Authorized,
                            m_pC5QoSParameters(
                            	{ m_pC5QoSFlowItem }
                            ),// PC5QoSParameters p_pC5QoSParameters, // PC5_QoS_Parameters containing                        		
                            -, // UERadioCapabilityID p_uERadioCapabilityID := PX_U_E_RADIO_CAPABILITY_ID, // UE_Radio_Capability_ID,  
                            - // RGLevelWirelineAccessCharacteristics p_rGLevelWirelineAccessCharacteristics // RG_Level_Wireline_Access_Characteristics
                   		))); 
                		
                   		
                   f_recv_NGAP_PDU(
                     mw_ngap_succMsg(
                     	mw_n2_UEContextReleaseComplete
                     	(
                     		PX_AMF_UE_NGAP_ID,
                     		PX_RAN_UE_NGAP_ID
                     	) 
                     ));
                    */
                    
                   f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
                   log("*** " & __SCOPE__ & ": INFO: Testbody done. ***");

@@ -1450,6 +1462,46 @@ module NGAP_TCFunctions {
            } // End of group UE_Context_Modification
            //8.3.5
            group RRC_Inactive_Transition_Report{
              
              /**
               * @desc Testcase function for f_TC_NGAP_GNB_CMP_14
               */
               function f_TC_NGAP_GNB_CMP_14() runs on aMFNGAPComponent {
                 
                   // Preamble
                   f_NGAP_amf_init();
                   f_NGAP_amf_UE_Register();
                   
                   // TODO: isTransitioningTo the RRC_INACTIVE
                   
                   f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
                   log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
                   
                   
                   // Body
          		   action("Trigger a RRC inactive transition report");
                		
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_RRCInactiveTransitionReport
                     	(
                     		PX_AMF_UE_NGAP_ID,
                     		PX_RAN_UE_NGAP_ID,
                     		m_rRCState,
                     		?
                     	) 
                     ));
                    
                   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_CMP_14
              
            } // End of group RRC_Inactive_Transition_Report
            //8.3.6
            group Connection_Establishment_Indication{
@@ -1459,6 +1511,47 @@ module NGAP_TCFunctions {
            } // End of group AMF_CP_Relocation_Indication
            //8.3.8
            group RAN_CP_Relocation_Indication{
              
              /**
               * @desc Testcase function for f_TC_NGAP_GNB_CMP_15
               */
               function f_TC_NGAP_GNB_CMP_15() runs on aMFNGAPComponent {
                 
                   // Preamble
                   f_NGAP_amf_init();
                   f_NGAP_amf_UE_Register();
                   
                   // TODO: hasEstablishedInitialContext
                   
                   f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
                   log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
                   
                   
                   // Body
          		   action("Trigger a RAN CP relocation indication procedure");
                		
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_RANCPRelocationIndication
                     	(
                     		PX_RAN_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_CMP_15
              
            } // End of group RAN_CP_Relocation_Indication
            //8.3.9
            group Retrieve_UE_Information{
@@ -3170,6 +3263,43 @@ module NGAP_TCFunctions {
            } // End of group Location_Reporting_Failure_Indication
            //8.12.3
            group Location_Report{
                
                /**
                * @desc Testcase function for TC_NGAP_GNB_TRP_03
                */
                function f_TC_NGAP_GNB_LRP_02() runs on aMFNGAPComponent {
                   // Local variables

                   // Preamble
                   f_NGAP_amf_init();
                   f_NGAP_amf_UE_Register();

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

                   // Body
                   f_send_NGAP_PDU(
                     m_ngap_initMsg(
                       m_n2_LocationReportingControl(-,-,-)
                     )
                   );

                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                       mw_n2_LocationReport(-,-,-,-)
                     )
                   );

                   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_LRP_03
                
            } // End of group Location_Report
        } // End of group Location_Reporting_Procedures
        //8.13
@@ -3744,6 +3874,118 @@ module NGAP_TCFunctions {
        group UE_Mobility_Management_Procedures{
            //8.4.1
            group Handover_Preparation{

              /**
               * @desc Testcase function for TC_NGAP_aMF_MMP_01
               */
              function f_TC_NGAP_AMF_MMP_01() runs on gNBNGAPComponent {
                // Local variables

                // Preamble
                f_NGAP_gnb_init();
                f_NGAP_gnb_UE_Register();

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

                // Body
                f_send_NGAP_PDU(
                                m_ngap_initMsg(
                                               m_n2_HandoverRequired(
                                                                     -, -, -, -,
                                                                     m_targetID_targetRANNodeID(
                                                                                                m_targetRANNodeID(
                                                                                                                  m_globalRANNodeID_globalGNB_ID(
                                                                                                                                                 m_ie_globalGnbId(
                                                                                                                                                                  -, 
                                                                                                                                                                  PX_GNB_ID
                                                                                                                  )), 
                                                                                                                  m_tAI
                                                                                                )),
                                                                     {
                                                                       m_pDUSessionResourceItemHORqd(
                                                                                                     -,
                                                                                                     ''O // FIXME FSCOM Shall be bit2oct(encvalue(???))
                                                                                                     )
                                                                      },
                                                                      ''O // FIXME FSCOM Shall be bit2oct(encvalue(???))
                                )));

                f_recv_NGAP_PDU(
                                mw_ngap_succMsg(
                                                mw_n2_HandoverCommand(
                                                                      PX_AMF_UE_NGAP_ID,
                                                                      PX_RAN_UE_NGAP_ID,
                                                                      -,
                                                                      ?/* FIXME FSCOM {
                                                                        m_pDUSessionResourceHandoverItem(
                                                                                                         bit2oct(encvalue(m_handoverCommandTransfer(???))))
                                                                      }*/
                                )));

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

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

              } // End of function f_TC_NGAP_AMF_MMP_01

              /**
               * @desc Testcase function for TC_NGAP_aMF_MMP_02
               */
              function f_TC_NGAP_AMF_MMP_02() runs on gNBNGAPComponent {
                // Local variables

                // Preamble
                f_NGAP_gnb_init();
                f_NGAP_gnb_UE_Register();

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

                // Body
                f_NGAP_gnb_UE_Not_Available();
                f_send_NGAP_PDU(
                                m_ngap_initMsg(
                                               m_n2_HandoverRequired(
                                                                     -, -, -, -,
                                                                     m_targetID_targetRANNodeID(
                                                                                                m_targetRANNodeID(
                                                                                                                  m_globalRANNodeID_globalGNB_ID(
                                                                                                                                                 m_ie_globalGnbId(
                                                                                                                                                                  -, 
                                                                                                                                                                  PX_GNB_ID
                                                                                                                  )), 
                                                                                                                  m_tAI
                                                                                                )),
                                                                     {
                                                                       m_pDUSessionResourceItemHORqd(
                                                                                                     -,
                                                                                                     ''O // FIXME FSCOM Shall be bit2oct(encvalue(???))
                                                                                                     )
                                                                      },
                                                                      ''O // FIXME FSCOM Shall be bit2oct(encvalue(???))
                                )));

                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_AMF();
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
                log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");

              } // End of function f_TC_NGAP_AMF_MMP_02

            } // End of group Handover_Preparation
            //8.4.2
            group Handover_Resource_Allocation{
@@ -3777,6 +4019,45 @@ module NGAP_TCFunctions {
        group Paging_Procedures{
            //8.5.1
            group Paging{
                
                /**
            	 * @desc Testcase function for TC_NGAP_AMF_PAG_01
            	 */
            	 function f_TC_NGAP_AMF_PAG_01() runs on gNBNGAPComponent {
            	 	// Local variables
            	 	
            	 	// Preamble
                    f_NGAP_gnb_init();
                    f_NGAP_gnb_UE_Register();
                   
                    f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
                    log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
                    
                    // Body
                    action("Trigger Paging!");
                    
                    f_recv_NGAP_PDU(
                    	mw_ngap_initMsg(
                    		mw_n2_Paging(
                    			mw_uEPagingIdentity_fiveG_S_TMSI(
                    				mw_fiveG_S_TMSI(-,-,-,-)	                    				
                    			),{
                    			mw_tAIListForPagingItem(
                    				mw_tAI(-,-,-)
                    			)}
                    		)
                    	)
                    );
                    
                    f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
                    log("*** " & __SCOPE__ & ": INFO: Testbody done. ***");

                    // Postamble
                    f_postamble_NGAP_AMF();
                    f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
                    log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
            	 }
                
            } // End of group Paging
        } // End of group Paging_Procedures
        //8.6
@@ -4747,6 +5028,39 @@ module NGAP_TCFunctions {
        group Location_Reporting_Procedures{
            //8.12.1
            group Location_Reporting_Control{
                
              /**
               * @desc Testcase function for TC_NGAP_AMF_LRP_01
               */
               function f_TC_NGAP_AMF_LRP_01() runs on gNBNGAPComponent {
                   // Local variables

                   // Preamble
                   f_NGAP_gnb_init();
                   f_NGAP_gnb_UE_Register();
                   
                   f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
                   log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");

                   // Body
                   action("Trigger Location Reporting Control procedure!");

                   f_recv_NGAP_PDU(
                       mw_ngap_initMsg(
                           mw_n2_LocationReportingControl(-,-,-)
                       )
                   );

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

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

                } // End of function f_TC_NGAP_AMF_LRP_01
                
            } // End of group Location_Reporting_Control
            //8.12.2
            group Location_Reporting_Failure_Indication{
+138 −73

File changed.

Preview size limit exceeded, changes collapsed.

+2 −0
Original line number Diff line number Diff line
@@ -430,6 +430,8 @@ module LibNGAP_Pixits {

    modulepar FiveQI PX_FIVE_QI;

    modulepar bitstring PX_GNB_ID;

    /** 
     * @desc eNB Identity.
     * @see ETSI TS 136 413 Clause 9.2.1.37 Global eNB ID
Loading