Commit d3b1bc6d authored by Steffen Ludtke's avatar Steffen Ludtke
Browse files

merge conflict mw_n2_LocationReportingFailureIndication

parent 1e651757
Loading
Loading
Loading
Loading
+214 −0
Original line number Diff line number Diff line
@@ -4078,18 +4078,232 @@ module NGAP_TCFunctions {
            } // End of group UE_Context_Release_Request_NG_RAN_node_initiated
            //8.3.3
            group UE_Context_Release_AMF_initiated{
              
              /**
               * @desc Testcase function for TP_NGAP_AMF_CMP_02
               */
               function f_TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent {

             	   // Local variables

                   // Preamble
                   f_NGAP_gnb_init();
                   f_NGAP_gnb_UE_Register();
                   //f_NGAP_gnb_UE_PDU_ResourceSetup();
                   
                   // TODO: hasEstablishedInitialContext

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


                   // Body
                   action("Trigger a UE context release command!");
   
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_UEContextReleaseCommand
                     	(
                     		mw_uE_NGAP_IDs_uE_NGAP_ID_pair
                         	(
                         		mw_uE_NGAP_ID_pair
                         		(
                         			PX_AMF_UE_NGAP_ID, 
                                	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_AMF_CMP_02
               
               /**
               * @desc Testcase function for TP_NGAP_AMF_CMP_03
               */
               function f_TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent {

             	   // Local variables

                   // Preamble
                   f_NGAP_gnb_init();
                   f_NGAP_gnb_UE_Register();
                   // f_NGAP_gnb_UE_PDU_ResourceSetup();
                   
                   // TODO: hasEstablishedInitialContext

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


                   // Body
                   action("Trigger a UE context release command!");
   
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_UEContextReleaseCommand
                     	(
                     		mw_uE_NGAP_IDs_aMF_UE_NGAP_ID
                         	(
                         		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_AMF_CMP_03
            } // End of group UE_Context_Release_AMF_initiated
            //8.3.4
            group UE_Context_Modification{
              
              /**
               * @desc Testcase function for TP_NGAP_AMF_CMP_04
               */
               function f_TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent {

             	   // Local variables

                   // Preamble
                   f_NGAP_gnb_init();
                   f_NGAP_gnb_UE_Register();
                   // f_NGAP_gnb_UE_PDU_ResourceSetup();
                   
                   // TODO: hasEstablishedInitialContext

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


                   // Body
                   action("Trigger a PDU UE context modification procedure!");
   
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_UEContextModificationRequest
                     	(
                     		PX_AMF_UE_NGAP_ID, 
                            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_AMF_CMP_04
               
            } // End of group UE_Context_Modification
            //8.3.5
            group RRC_Inactive_Transition_Report{
            } // End of group RRC_Inactive_Transition_Report
            //8.3.6
            group Connection_Establishment_Indication{
              
              /**
               * @desc Testcase function for TP_NGAP_AMF_CMP_05
               */
               function f_TC_NGAP_AMF_CMP_05() 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 a PDU UE context modification procedure!");
   
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_ConnectionEstablishmentIndication
                     	(
                     		PX_AMF_UE_NGAP_ID, 
                            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_AMF_CMP_05
            } // End of group Connection_Establishment_Indication
            //8.3.7
            group AMF_CP_Relocation_Indication{
              
              /**
               * @desc Testcase function for TP_NGAP_AMF_CMP_06
               */
               function f_TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent {

             	   // Local variables

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


                   // Body
                   action("Trigger a AMF CP relocation indication procedure!");
   
                   f_recv_NGAP_PDU(
                     mw_ngap_initMsg(
                     	mw_n2_AMFCPRelocationIndication
                     	(
                     		PX_AMF_UE_NGAP_ID, 
                            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_AMF_CMP_06
            } // End of group AMF_CP_Relocation_Indication
            //8.3.8
            group RAN_CP_Relocation_Indication{
+137 −0
Original line number Diff line number Diff line
@@ -2217,18 +2217,155 @@ module NGAP_TestCases {
            } // End of group UE_Context_Release_Request_NG_RAN_node_initiated
            //8.3.3
            group UE_Context_Release_AMF_initiated{
              
              /**
                 * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND that contains both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE."
                 */
                testcase TC_NGAP_AMF_CMP_02() runs on gNBNGAPComponent system TestAdapter {

                    // Local variables
                    var gNBNGAPComponent v_ngap_gnb;

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

                    // Test component configuration
                    f_cf_NGAP_gNB_Up(v_ngap_gnb);

                    // Start
                    v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_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_AMF_CMP_02
                
                /**
                 * @desc "Verify that the IUT can send a UE CONTEXT RELEASE COMMAND where both the AMF UE NGAP ID IE and the RAN UE NGAP ID IE are not available."
                 */
                testcase TC_NGAP_AMF_CMP_03() runs on gNBNGAPComponent system TestAdapter {

                    // Local variables
                    var gNBNGAPComponent v_ngap_gnb;

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

                    // Test component configuration
                    f_cf_NGAP_gNB_Up(v_ngap_gnb);

                    // Start
                    v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_03());

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

                    f_cf_Down/*gNBoraMF*/();

                } // End of testcase TC_NGAP_AMF_CMP_03
            } // End of group UE_Context_Release_AMF_initiated
            //8.3.4
            group UE_Context_Modification{
              
              /**
                 * @desc "Verify that the IUT can send a UE CONTEXT MODIFICATION REQUEST contains mandatory IEs."
                 */
                testcase TC_NGAP_AMF_CMP_04() runs on gNBNGAPComponent system TestAdapter {

                    // Local variables
                    var gNBNGAPComponent v_ngap_gnb;

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

                    // Test component configuration
                    f_cf_NGAP_gNB_Up(v_ngap_gnb);

                    // Start
                    v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_04());

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

                    f_cf_Down/*gNBoraMF*/();

                } // End of testcase TC_NGAP_AMF_CMP_04
                
            } // End of group UE_Context_Modification
            //8.3.5
            group RRC_Inactive_Transition_Report{
            } // End of group RRC_Inactive_Transition_Report
            //8.3.6
            group Connection_Establishment_Indication{
              
              /**
                 * @desc "Verify that the IUT can send a CONNECTION ESTABLISHMENT INDICATION that contains mandatory IEs."
                 */
                testcase TC_NGAP_AMF_CMP_05() runs on gNBNGAPComponent system TestAdapter {

                    // Local variables
                    var gNBNGAPComponent v_ngap_gnb;

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

                    // Test component configuration
                    f_cf_NGAP_gNB_Up(v_ngap_gnb);

                    // Start
                    v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_05());

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

                    f_cf_Down/*gNBoraMF*/();

                } // End of testcase TC_NGAP_AMF_CMP_05
            } // End of group Connection_Establishment_Indication
            //8.3.7
            group AMF_CP_Relocation_Indication{
              
               /**
                 * @desc "Verify that the IUT can send a AMF CP RELOCATION INDICATION that contains mandatory IEs."
                 */
                testcase TC_NGAP_AMF_CMP_06() runs on gNBNGAPComponent system TestAdapter {

                    // Local variables
                    var gNBNGAPComponent v_ngap_gnb;

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

                    // Test component configuration
                    f_cf_NGAP_gNB_Up(v_ngap_gnb);

                    // Start
                    v_ngap_gnb.start(f_TC_NGAP_AMF_CMP_06());

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

                    f_cf_Down/*gNBoraMF*/();

                } // End of testcase TC_NGAP_AMF_CMP_06
              
            } // End of group AMF_CP_Relocation_Indication
            //8.3.8
            group RAN_CP_Relocation_Indication{
+8 −7
Original line number Diff line number Diff line
@@ -7649,7 +7649,7 @@ module LibNGAP_Templates {
                        template (present) InitiatingMessage mw_n2_LocationReportingFailureIndication(
                                                                          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) Cause p_cause := ?
                                                                          template (present) CauseRadioNetwork p_cause
                                                                          ) := {
                            procedureCode := id_LocationReportingFailureIndication,
                            criticality   := ignore,
@@ -7667,13 +7667,14 @@ module LibNGAP_Templates {
                                                                              value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID }
                                                                          },
                                                                          {
                                                                              id := id_Cause,
                                                                              id := id_CauseRadioNetwork,
                                                                              criticality := ignore,
                                                                              value_ := { Cause := p_cause}
                                                                              value_ := { id_CauseRadioNetwork := p_causeRadioNetwork}
                                                                          }
                                                    }
                                                }
                                            }
>>>>>>> 1e8a41e (new Testcase, function and template for TC_NGAP_AMF_CMP_02, TC_NGAP_AMF_CMP_03, TC_NGAP_AMF_CMP_04, TC_NGAP_AMF_CMP_05, TC_NGAP_AMF_CMP_06)
                        } // End of template mw_n2_LocationReportingFailureIndication
                        
                    }