Commit f106a957 authored by kretzschmann's avatar kretzschmann
Browse files

add TC_NGAP_GNB_LRP_02

parent fe4d4eb9
Loading
Loading
Loading
Loading
+37 −0
Original line number Diff line number Diff line
@@ -3010,6 +3010,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
+28 −0
Original line number Diff line number Diff line
@@ -1622,6 +1622,34 @@ module NGAP_TestCases {
            } // End of group Location_Reporting_Failure_Indication
            //8.12.3
            group Location_Report{
                
                /**
                 * @desc "Verify that the IUT can send a LOCATION REPORT message that contains mandatory IEs to provide the UE's current location."
                 */
                testcase TC_NGAP_GNB_LRP_02() runs on aMFNGAPComponent system TestAdapter {

                    // Local variables
                    var aMFNGAPComponent v_ngap_amf;

                    // Test control
                    if ((not PICS_NGAP_GNB_IUT) and (not PICS_A3_11_3)){
                        log("*** " & __SCOPE__ & ": ERROR: 'PICS_NGAP_GNB_IUT and PICS_A3_11_3' shall be set to true for executing the TC. ***");
                        stop;
                    }

                    // Test component configuration
                    f_cf_NGAP_aMF_Up(v_ngap_amf);

                    // Start
                    v_ngap_amf.start(f_TC_NGAP_GNB_LRP_02());

                    // synchronize PTC on 1 sychronization points
                    f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone});

                    f_cf_Down/*gNBoraMF*/();

                } // End of testcase TC_NGAP_GNB_LRP_02
                
            } // End of group Location_Report
        } // End of group Location_Reporting_Procedures
        //8.13
+78 −4
Original line number Diff line number Diff line
@@ -6905,6 +6905,41 @@ module LibNGAP_Templates {
                //9.2.11.1
                group LOCATION_REPORTING_CONTROL{
                    group Send {
                        
                        /**
                         * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL
                         */
                        template (value) InitiatingMessage m_n2_LocationReportingControl(
                                                                          in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
                                                                          in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
                                                                          in template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct,
                                                                          																												    cell) //TODO: do we need PX here?
                                                                          ) := {
                            procedureCode := id_LocationReportingControl,
                            criticality   := ignore,
                            value_        := {
                                             	LocationReportingControl := {
                                                		protocolIEs := {
                                                                         {
                                                                              id := id_AMF_UE_NGAP_ID,
                                                                              criticality := reject,
                                                                              value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
                                                                          },
                                                                          {
                                                                              id := id_RAN_UE_NGAP_ID,
                                                                              criticality := reject,
                                                                              value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
                                                                          },
                                                                          {
                                                                              id := id_LocationReportingRequestType,
                                                                              criticality := ignore,
                                                                              value_ := { id_LocationReportingRequestType := p_locationReportingRequestType}
                                                                          }
                                                    }
                                                }
                                            }
                        } // End of template m_n2_LocationReportingControl
                        
                    }
                    group Receive {
                        
@@ -6912,10 +6947,9 @@ module LibNGAP_Templates {
                         * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.1 LOCATION REPORTING CONTROL
                         */
                        template (present) InitiatingMessage mw_n2_LocationReportingControl(
                                                                          template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
                                                                          template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
                                                                          template (value) LocationReportingRequestType p_locationReportingRequestType := m_locationReportingRequestType(direct,
                                                                          																												 cell) //TODO: do we need PX here?
                                                                          template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
                                                                          template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
                                                                          template (present) LocationReportingRequestType p_locationReportingRequestType := ?
                                                                          ) := {
                            procedureCode := id_LocationReportingControl,
                            criticality   := ignore,
@@ -6956,6 +6990,46 @@ module LibNGAP_Templates {
                    group Send {
                    }
                    group Receive {
                        
                        /**
                         * @see ETSI TS 138 413 V16.12.0 (2023-05) Clause 9.2.11.3 LOCATION REPORT
                         */
                        template (present) InitiatingMessage mw_n2_LocationReport(
                                                                          template (present) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID,
                                                                          template (present) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID,
                                                                          template (present) UserLocationInformation p_userLocationInformation := ?,
                                                                          template (present) LocationReportingRequestType p_locationReportingRequestType := ?
                                                                          ) := {
                            procedureCode := id_LocationReport,
                            criticality   := ignore,
                            value_        := {
                                             	LocationReport := {
                                                		protocolIEs := {
                                                                         {
                                                                              id := id_AMF_UE_NGAP_ID,
                                                                              criticality := reject,
                                                                              value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID }
                                                                          },
                                                                          {
                                                                              id := id_RAN_UE_NGAP_ID,
                                                                              criticality := reject,
                                                                              value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
                                                                          },
                                                                          {
                                                                              id := id_UserLocationInformation,
                                                                              criticality := ignore,
                                                                              value_ := { id_LocationReportingRequestType := p_userLocationInformation}
                                                                          },
                                                                          {
                                                                              id := id_LocationReportingRequestType,
                                                                              criticality := ignore,
                                                                              value_ := { id_LocationReportingRequestType := p_locationReportingRequestType}
                                                                          }
                                                    }
                                                }
                                            }
                        } // End of template mw_n2_LocationReport
                        
                    }
                }
            } // End of group Location_Reporting_Messages