/** * @author ETSI / STF519 * @version $URL$ * $Id$ * @desc This module provides test cases for S1AP tests. * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * @see ETSI TS 136 413 / 3GPP TS 36.413 version 13.4.0 Release 13 */ module S1AP_TestCases { // LibCommon import from LibCommon_Sync all ; // S1AP_Ats import from S1AP_TestConfiguration all; import from S1AP_TestSystem all; import from S1AP_TCFunctions all; import from S1AP_Pics all; import from S1AP_TestSystem all; group eNB_Role { /** * @desc E-RAB management group * @see ETSI TS 103 497-2 Clause 5.2.2.1.2 E-RAB management group */ group ERAB_management_group { /** * @desc Verify that the IUT can successfully process all mandatory IEs in an E-RAB_SETUP_REQUEST received * due to E-RAB management procedure and send E-RAB_SETUP_RESPONSE with successfully established E-RABs * included in the E-RAB_Setup_List IE. *
* Pics Selection: PICS A.3/1.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an E-RAB_SETUP_REQUEST * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing QCI * indicating value 5 * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * sends an E-RAB_SETUP_RESPONSE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-RAB_Setup_List * containing an E-RAB_Setup Item 1 * containing an E-RAB_ID * containing a Transport_Layer_Address * containing a GTP-TEID. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_RAB_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.2.1.2(1st dashed line in 5th dashed list) and 9.1.3.1 and 9.1.3.2 */ testcase TC_S1AP_eNB_RAB_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_RAB_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_RAB_01 /** * @desc Verify that the IUT after receiving an E-RAB_SETUP_REQUEST with failed E-RAB sends an E-RAB_SETUP_RESPONSE * with E-RAB_Failed_to_Setup_List. *
* Pics Selection: PICS A.3/1.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an E-RAB_SETUP_REQUEST * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * indicating value A * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing an E-RAB_to_be_Setup Item 2(not acceptable data for eNB) * containing an E-RAB_ID * indicating value B(different to value A) * containing an E-RAB_Level_QoS_Parameters * containing QCI * indicating not supported QCI value(255) * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * sends an E-RAB_SETUP_RESPONSE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-RAB_Setup_List * containing an E-RAB_Setup Item 1 * containing an E-RAB_ID * indicating value A * containing a Transport_Layer_Address * containing a GTP-TEID * containing an E-RAB_Failed_to_Setup_List * containing an E-RAB_List Item 1 * containing an E-RAB_ID * indicating value B * containing a Cause * indicating ‘not-supported-QCI-value’. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_RAB_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.2.1.2(2nd dashed line in 5th dashed list) and 9.1.3.1 and 9.1.3.2 */ testcase TC_S1AP_eNB_RAB_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_RAB_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_RAB_02 } // End of group E-RAB_management_group group Context_Management_group { testcase TC_S1AP_eNB_CMP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_01 testcase TC_S1AP_eNB_CMP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_02 testcase TC_S1AP_eNB_CMP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_03 testcase TC_S1AP_eNB_CMP_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_04 testcase TC_S1AP_eNB_CMP_05() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_05()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_05 testcase TC_S1AP_eNB_CMP_06() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_06()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_06 testcase TC_S1AP_eNB_CMP_07() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_07()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_07 testcase TC_S1AP_eNB_CMP_08() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_08()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_08 testcase TC_S1AP_eNB_CMP_09() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_09()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_09 testcase TC_S1AP_eNB_CMP_10() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_10()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_10 testcase TC_S1AP_eNB_CMP_11() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_11()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_11 testcase TC_S1AP_eNB_CMP_12() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_12()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_12 testcase TC_S1AP_eNB_CMP_13() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_13()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_13 testcase TC_S1AP_eNB_CMP_14() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_14()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_14 testcase TC_S1AP_eNB_CMP_15() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_15()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_15 testcase TC_S1AP_eNB_CMP_16() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_16()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_16 testcase TC_S1AP_eNB_CMP_17() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_17()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_17 testcase TC_S1AP_eNB_CMP_18() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_18()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_18 testcase TC_S1AP_eNB_CMP_19() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_CMP_19()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_CMP_19 } // End of group Context_Management_group /** * @desc NAS transport group * @see ETSI TS 103 497-2 Clause 5.2.2.1.6 NAS transport group */ group NAS_transport_group { /** * @desc Verify that the IUT can send an INITIAL_UE_MESSAGE to indicate the initiation of a NAS Transport procedure. *
* Pics Selection: PICS A.3/5.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate the initiation of a NAS Transport procedure * sends an INITIAL_UE_MESSAGE * containing an eNB_UE_S1AP_ID * containing a NAS-PDU * containg a TAI * containing a PLMN_Identity * containing a TAC * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a RRC_Establishment_Cause. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_NAS_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.6.2.1¶1 and 9.1.7.1 */ testcase TC_S1AP_eNB_NAS_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_NAS_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_NAS_01 /** * @desc Verify that the IUT can send an UPLINK_NAS_TRANSPORT to indicate an ongoing NAS Transport procedure. *
* Pics Selection: PICS A.3/5.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an ongoing NAS Transport procedure * sends an UPLINK_NAS_TRANSPORT * containing an MME UE S1AP ID * containing an eNB_UE_S1AP_ID * containing a NAS-PDU * containg a TAI * containing a PLMN_Identity * containing a TAC * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a RRC_Establishment_Cause. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_NAS_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.6.2.3¶1 and 9.1.7.3 */ testcase TC_S1AP_eNB_NAS_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_NAS_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_NAS_02 /** * @desc Verify that the IUT can send a NAS_NON_DELIVERY_INDICATION to indicate the eNB was unable to ensure that the message has been received by the UE. *
* Pics Selection: PICS A.3/5.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a UE has not received a INITIAL_UE_MESSAGE * sends a NAS_NON_DELIVERY_INDICATION * containing an MME UE S1AP ID * containing an eNB_UE_S1AP_ID * containing a NAS-PDU * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_NAS_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.6.2.4 and 9.1.7.4 */ testcase TC_S1AP_eNB_NAS_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_NAS_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_NAS_03 } // End of group group NAS_transport_group /** * @desc Management group * @see ETSI TS 103 497-2 Clause 5.2.2.1.7 Management group */ group Management_group { /** * @desc Verify that the IUT can successfully process all mandatory IEs in a RESET and sends a RESET_ACKNOWLEDGE due to a Reset procedure initiated from the MME. *
* Pics Selection: PICS A.3/6.1.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing a S1_Interface * indicating a value ‘Reset_all’ * sends a RESET_ACKNOWLEDGE * containing a UE-associated_logical_S1-connection_list. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.1¶2 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_eNB_MNP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_01 /** * @desc Verify that the IUT can send an RESET due to a Reset procedure initiated from the E-UTRAN. *
* Pics Selection: PICS A.3/6.1.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Reset procedure initiated from the E-UTRAN * sends a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing a S1_Interface * indicating a value ‘Reset_all’. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.2¶1 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_eNB_MNP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_02 /** * @desc Verify that the IUT can successfully manage Reset procedure in case of Abnormal Condition at the E-UTRAN. *
* Pics Selection: PICS A.3/6.1.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing a Part_of_S1_interface * indicating one empty ‘UE-associated_logical_S1-connection’ * sends a RESET_ACKNOWLEDGE * containing a UE-associated_logical_S1-connection_list. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.2¶1 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_eNB_MNP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_03 /** * @desc Verify that the IUT can send an ERROR_INDICATION due to an Error Indication procedure. *
* Pics Selection: PICS A.3/6.2.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an Error Indication procedure * sends an ERROR_INDICATION * (containing a Cause * or containing a Criticality_Diagnostics). ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_04 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.2.2 and 9.1.8.3 */ testcase TC_S1AP_eNB_MNP_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_04 /** * @desc Verify that the IUT can send a S1_SETUP_REQUEST to indicate a S1 Setup procedure. *
* Pics Selection: PICS A.3/6.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a S1 Setup procedure * sends a S1_SETUP_REQUEST * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC * containing a Default_Paging_DRX. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_05 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.3.2¶1 and 9.1.8.4 and 9.1.8.5 */ testcase TC_S1AP_eNB_MNP_05() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_05()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_05 /** * @desc Verify that the IUT can send an ENB_CONFIGURATION_UPDATE to indicate an eNB Configuration Update procedure. *
* Pics Selection: PICS A.3/6.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an eNB Configuration Update procedure * sends an ENB_CONFIGURATION_UPDATE * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_06 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.4.2¶1 and 9.1.8.7 and 9.1.8.8 */ testcase TC_S1AP_eNB_MNP_06() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_06()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_06 /** * @desc Verify that the IUT can successfully process all mandatory IEs in an MME_CONFIGURATION_UPDATE and * sends an MME_CONFIGURATION_UPDATE_ACKNOWLEDGE due to an MME Configuration Update procedure. *
* Pics Selection: PICS A.3/6.5 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an MME_CONFIGURATION_UPDATE * may containing a Served_GUMMEIs * may containing a Served_PLMNs * sends an MME_CONFIGURATION_UPDATE_ACKNOWLEDGE. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_07 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.5.2¶1 and 9.1.8.10 and 9.1.8.11 */ testcase TC_S1AP_eNB_MNP_07() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_07()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_07 /** * @desc Verify that the IUT can successfully process all mandatory IEs in an MME_CONFIGURATION_UPDATE and * sends an MME CONFIGURATION UPDATE_FAILURE due to an invalid MME Configuration Update procedure. *
* Pics Selection: PICS A.3/6.5 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an MME_CONFIGURATION_UPDATE * containing a Broadcast_PLMNs * indicating at least one unknown PLMN identity * sends an MME_CONFIGURATION_UPDATE_FAILURE * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_MNP_08 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.5.3 and 9.1.8.10 and 9.1.8.12 */ testcase TC_S1AP_eNB_MNP_08() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_MNP_08()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_MNP_08 } // End of group Management_group /** * @desc S1 CDMA 2000 tunnelling group * @see ETSI TS 103 497-2 Clause 5.2.2.1.8 S1 CDMA 2000 tunnelling group group */ group S1_CDMA_2000_tunelling_group { /** * @desc Verify that the IUT can send a DOWNLINK_S1_CDMA2000_TUNNELLING. *
* Pics Selection: PICS A.3/7.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a CDMA2000 to be forwarded * sends an UPLINK_S1_CDMA2000_TUNNELLING * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a CDMA2000_RAT_Type * containing a CDMA2000_Sector_ID * containing a CDMA2000_PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_STP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.8.2.2¶1 and 9.1.9.2 and 9.2.1.23 */ testcase TC_S1AP_eNB_STP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_STP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_STP_01 } // End of group S1_CDMA_2000_tunelling_group /** * @desc UE capability info indication group * @see ETSI TS 103 497-2 Clause 5.2.2.1.9 UE capability info indication group */ group UE_capability_info_indication_group { /** * @desc Verify that the IUT can send a UE_CAPABILITY_INFO_INDICATION to indicate capability-related information update. *
* Pics Selection: PICS A.3/8 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a capability-related information update * sends an UE_CAPABILITY_INFO_INDICATION * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a containing a UE_Radio_Capability. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_UEC_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.9.2 and 9.1.10 */ testcase TC_S1AP_eNB_UEC_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_UEC_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_UEC_01 } // End of group UE_capability_info_indication_group /** * @desc Trace Procedures group * @see ETSI TS 103 497-2 Clause 5.2.2.1.10 Trace group */ group Trace_group { /** * @desc Verify that the IUT can successfully send a TRACE_FAILURE_INDICATION on TRACE_START. *
* Pics Selection: PICS A.3/9.1 and A.3/9.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a TRACE_START * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Trace_Activation * containing an E-UTRAN_Trace_ID * containing a Interfaces_To_Trace * indicating value ‘S1-MME’ * containing a Trace_depth * indicating value ‘maximum’ * containing a Trace_Collection_Entity_IP_Address * not containing an MDT_Configuration * sends TRACE_FAILURE_INDICATION * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_Trace_ID * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_TRP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.10.1.2-8 and 8.10.2.2 and 9.1.11.1 and 9.1.11.2 */ testcase TC_S1AP_eNB_TRP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_TRP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_TRP_01 /** * @desc Verify that the IUT can successfully send a TRACE_FAILURE_INDICATION on DEACTIVATE_TRACE. *
* Pics Selection: PICS A.3/9.1 and A.3/9.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a DEACTIVATE_TRACE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Trace_Activation * containing an E-UTRAN_Trace_ID * sends TRACE_FAILURE_INDICATION * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_Trace_ID * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_TRP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.10.3.2-3 and 8.10.2.2 and 9.1.11.3 and 9.1.11.2 */ testcase TC_S1AP_eNB_TRP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_TRP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_TRP_02 /** * @desc Verify that the IUT can send a CELL_TRAFFIC_TRACE when the conditions required for tracing are met. *
* Pics Selection: PICS A.3/9.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate the conditions required for tracing are met * sends CELL_TRAFFIC_TRACE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_Trace_ID * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a Trace_Collection_Entity_IP_Address. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_TRP_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.10.4.2 and 9.1.18 */ testcase TC_S1AP_eNB_TRP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_TRP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_TRP_03 } // End of group Trace_group /** * @desc Location Reporting Procedures group * @see ETSI TS 103 497-2 Clause 5.2.2.1.11 Location reporting group */ group Location_reporting_group { /** * @desc Verify that the IUT can process all mandatory IEs in a LOCATION_REPORTING_CONTROL containing Event Type IE indicating Directly and sends a LOCATION_REPORT. *
* Pics Selection: PICS A.3/10.1 and A.3/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing an Event_Type * indicating Directly * containing a Report_Area * indicating ECGI * sends LOCATION_REPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a TAI * containing a PLMN_Identity * containing a TAC * containing a Request_Type * containing a Event_Type * containing a Report_Area. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LRP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.1.2-2(1st dashed line) and 9.1.12.1 and 9.1.12.3 and 9.2.1.16,34,38 */ testcase TC_S1AP_eNB_LRP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LRP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LRP_01 /** * @desc Verify that the IUT can process all mandatory IEs in a LOCATION_REPORTING_CONTROL containing Event Type IE indicating Change of service cell and sends a LOCATION_REPORT. *
* Pics Selection: PICS A.3/10.1 and A.3/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing an Event_Type * indicating change_of_service_cell * containing a Report_Area * indicating ECGI * when UE changes to new cell * sends LOCATION_REPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a TAI * containing a PLMN_Identity * containing a TAC * containing a Request_Type * containing a Event_Type * containing a Report_Area. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LRP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.1.2-2(1st dashed line) and 9.1.12.1 and 9.1.12.3 and 9.2.1.16,34,38 */ testcase TC_S1AP_eNB_LRP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LRP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LRP_02 /** * @desc Verify that the IUT can process all mandatory IEs in a LOCATION_REPORTING_CONTROL containing Event Type IE indicating Stop change of service cell and sends a LOCATION_REPORT. *
* Pics Selection: PICS A.3/10.1 and A.3/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing an Event_Type * indicating stop_change_of_service_cell * containing a Report_Area * indicating ECGI * when UE changes to new cell * sends LOCATION_REPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_CGI * containing a PLMN_Identity * containing a Cell_Identity * containing a TAI * containing a PLMN_Identity * containing a TAC * containing a Request_Type * containing a Event_Type * containing a Report_Area. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LRP_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.1.2-2(1st dashed line) and 9.1.12.1 and 9.1.12.3 and 9.2.1.16,34,38 */ testcase TC_S1AP_eNB_LRP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LRP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LRP_03 /** * @desc Verify that the IUT can send a LOCATION REPORT_FAILURE_INDICATION. *
* Pics Selection: PICS A.3/10.1 and A.3/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing an Event_Type * containing a Report_Area * sends LOCATION REPORT_FAILURE_INDICATION * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LRP_04 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.2.2-1 and 9.1.12.2 */ testcase TC_S1AP_eNB_LRP_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LRP_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LRP_04 } // End of group Location_reporting_group /** * @desc Warning message transmission group * @see ETSI TS 103 497-2 Clause 5.2.2.1.12 Warning message transmission group */ group Warning_message_transmission_group { /** * @desc Verify that the IUT can successfully process all mandatory IEs in a WRITE-REPLACE_WARNING_REQUEST received and sends a WRITE-REPLACE_WARNING_RESPONSE. *
* Pics Selection: PICS A.3/11.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an WRITE-REPLACE_WARNING_REQUEST * containing a Message_Identifier * containing a Serial_Number * containing a Repetition Period * containing an Number_of_Broadcasts_Requested * sends an WRITE-REPLACE_WARNING_RESPONSE * containing a Serial_Number. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_WTP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.1.2-1 and 9.1.13.1 and 9.1.13.2 */ testcase TC_S1AP_eNB_WTP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_WTP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_WTP_01 /** * @desc Verify that the IUT can successfully process all mandatory IEs in an KILL_REQUEST received and sends a KILL_RESPONSE. *
* Pics Selection: PICS A.3/11.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a KILL_REQUEST * containing a Message_Identifier * containing a Serial_Number * sends sends a KILL_RESPONSE * containing a Message_Identifier * containing a Serial_Number. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_WTP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.2.2-1,3 and 9.1.13.3 and 9.1.13.4 */ testcase TC_S1AP_eNB_WTP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_WTP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_WTP_02 /** * @desc Verify that the IUT can send a PWS_RESTART_INDICATION to indicate a PWS Restart Indication procedure. *
* Pics Selection: PICS A.3/11.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a PWS Restart Indication procedure * sends a PWS_RESTART_INDICATION * containing an E-CGI_List_for_Restart * indicating a valid list of E-CGI * containing a Global_ENB_ID * containing a TAI_List_for_Restart * indicating a valid list of eNB identifier * containing an Emergency_Area_ID_List_for_Restart * indicating an empty list. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_WTP_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.3.2 and 9.1.13.5 */ testcase TC_S1AP_eNB_WTP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_WTP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_WTP_03 /** * @desc Verify that the IUT can send a PWS_FAILURE_INDICATION to indicate PWS Failure Indication procedure. *
* Pics Selection: PICS A.3/11.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a PWS Failure Indication procedure * sends a PWS_FAILURE_INDICATION * containing an PWS failed E-CGI List * indicating a valid list of E-CGI * containing a Global_ENB_ID. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_WTP_04 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.4.2 and 9.1.13.6 */ testcase TC_S1AP_eNB_WTP_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_WTP_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_WTP_04 } // End of group Warning_message_transmission_group /** * @desc eNB direct information transfer group * @see ETSI TS 103 497-2 Clause 5.2.2.1.13 eNB direct information transfer group */ group ENB_direct_information_transfer_group { /** * @desc Verify that the IUT can send an eNB_DIRECT_INFORMATION_TRANSFER to indicate an eNB Direct Information Transfer procedure. *
* Pics Selection: PICS A.4/12 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an eNB direct information Transfer procedure, * sends an eNB_DIRECT_INFORMATION_TRANSFER * containing an Inter-system_Information_Transfer_Type * containing a RIM * containing a RIM_Transfer * containing a RIM_Information * containing a RIM_Routing_Address. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_EIT_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.13.2.1 and 9.1.14 and 9.2.3.23 */ testcase TC_S1AP_eNB_EIT_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_EIT_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_EIT_01 } // End of group ENB_direct_information_transfer_group /** * @desc eNB configuration transfer group * @see ETSI TS 103 497-2 Clause 5.2.2.1.15 eNB configuration transfer group */ group ENB_configuration_transfer_group { /** * @desc Verify that the IUT can send an eNB_CONFIGURATION_TRANSFER to indicate an eNB Configuration Transfer procedure. *
* Pics Selection: PICS A.4/14 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an eNB Configuration Transfer procedure, * sends an eNB_CONFIGURATION_TRANSFER * containing a SON_Configuration_Transfer * containing a Target_eNB-ID * containing a Source_eNB-ID * containing a SON_Information. * containing a SON_Information_Request * indicating X2TNL_Configuration_Info * containing an X2_TNL_Configuration_Info. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_ECT_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.15.2.1 and 9.1.16 */ testcase TC_S1AP_eNB_ECT_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_ECT_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_ECT_01 } // End of group ENB_configuration_transfer_group /** * @desc LPPa transport group * @see ETSI TS 103 497-2 Clause 5.2.2.1.17 LPPa transport group */ group LPPa_transport_group { /** * @desc Verify that the IUT can send a UPLINK_UE_ASSOCIATED_LPPA_TRANSPORT to indicate a LPPa Transport procedure * using a UE associated signalling. *
* Pics Selection: PICS A.3/16.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a LPPa Transport procedure using a UE associated signalling, * sends a UPLINK_UE_ASSOCIATED_LPPA_TRANSPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Routing_ID * indicating a valid routing identifier value * containing an LPPa-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LPP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.17.2.2 and 9.1.19.2 */ testcase TC_S1AP_eNB_LPP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LPP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LPP_01 /** * @desc Verify that the IUT can send a UPLINK_UE_ASSOCIATED_LPPA_TRANSPORT to indicate a LPPa Transport procedure * using a Non-UE associated signalling. *
* Pics Selection: PICS A.3/16.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a LPPa Transport procedure using a UE associated signalling, * sends a UPLINK_UE_ASSOCIATED_LPPA_TRANSPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Routing_ID * indicating a valid routing identifier value * containing an LPPa-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_LPP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.17.2.4 and 9.1.19.4 */ testcase TC_S1AP_eNB_LPP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_eNB_LPP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_eNB_LPP_02 } // End of group LPPa_transport_group /** * @desc Unknown, Unforseen and Erroneous Protocol Data * @see ETSI TS 103 497-2 Clause 5.2.2.2.18 Unknown, Unforseen and Erroneous Protocol Data */ group Unknown_unforseen_errorneous_group { /** * @desc Verify that the IUT rejects the procedure using Error Indication Procedure if message contains different types of received * criticality information of the Procedure Code IE and include Procedure Code IE, Triggering Message IE and * Procedure Criticality IE in the Criticality Diagnostics IE within ERROR_INDICATION. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an INITIAL_CONTEXT_SETUP_REQUEST, * with Criticality set to value from the Table 4 * containing an MME UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing a UE_Security_Capabilities * containing an Encription_Algorithms * indicating not supported algoithm * containing an Integrity_Protection_Algorithms * containing a Security_Key * sends an ERROR_INDICATION * containing a Criticality_Diagnostics * containing a Procedure_Code * containing a Triggering_Message * containing a Procedure_Criticality. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_01 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.4.1¶8 */ testcase TC_S1AP_ENB_ERR_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_01 /** * @desc Verify that the IUT rejects the procedure using Error Indication Procedure if message contains different types of received * criticality information of the Procedure Code IE and include Procedure Code IE, Triggering Message IE and * Procedure Criticality IE in the Criticality Diagnostics IE within ERROR_INDICATION. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an INITIAL_CONTEXT_SETUP_REQUEST, * with Criticality set to value from the Table 4 * containing an MME UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an Unknown_ID * containing Criticality * indicating Reject or Ignore and Notify Sender * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing a UE_Security_Capabilities * containing an Encription_Algorithms * indicating not supported algoithm * containing an Integrity_Protection_Algorithms * containing a Security_Key * sends an an INITIAL_CONTEXT_SETUP_FAILURE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Cause * indicating appropriate Protocol Cause * containing a Criticality_Diagnostics * containing an Information Element Criticality_Diagnostics * containing an IE_Criticality * containing an IE_ID * containing an IE_Type_of_Error. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_02 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.4.2¶3(1st dashed line) and 13 */ testcase TC_S1AP_ENB_ERR_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_02 /** * @desc Verify that the IUT rejects the procedure using Error Indication Procedure if message contains different types of received * criticality information of the Procedure Code IE and include Procedure Code IE, Triggering Message IE and * Procedure Criticality IE in the Criticality Diagnostics IE within ERROR_INDICATION. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an INITIAL_CONTEXT_SETUP_REQUEST, * with Criticality set to value from the Table 4 * containing an MME UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an Unknown_ID * containing Criticality * indicating Reject or Ignore and Notify Sender * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing a UE_Security_Capabilities * containing an Encription_Algorithms * indicating not supported algoithm * containing an Integrity_Protection_Algorithms * containing a Security_Key * sends an ERROR_INDICATION * containing a Criticality_Diagnostics * containing a Procedure_Code * containing a Triggering_Message * containing a Procedure_Criticality * containing an Information Element Criticality_Diagnostics * containing an IE_Criticality * containing an IE_ID * containing an IE_Type_of_Error. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_03 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.4.2¶4(2nd dashed line) and 14 */ testcase TC_S1AP_ENB_ERR_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_03 /** * @desc Verify that the IUT rejects the procedure if message not contains mandatory IEs/IE groups and * include Information Element Criticality Diagnostics IE in the Criticality Diagnostics IE for each * reported IEs/IE groups within response message for this procedure. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an INITIAL_CONTEXT_SETUP_REQUEST, * with Criticality set to value from the Table 4 * containing an MME UE_S1AP_ID * not containing an eNB_UE_S1AP_ID * containing an Unknown_ID * containing Criticality * indicating Reject or Ignore and Notify Sender * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing a UE_Security_Capabilities * containing an Encription_Algorithms * indicating not supported algoithm * containing an Integrity_Protection_Algorithms * containing a Security_Key * sends an ERROR_INDICATION * containing a Criticality_Diagnostics * containing a Procedure_Code * containing a Triggering_Message * containing a Procedure_Criticality * containing an Information Element Criticality_Diagnostics * containing an IE_Criticality * containing an IE_ID * containing an IE_Type_of_Error. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_04 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.5¶3(1st dashed line) and 13 */ testcase TC_S1AP_ENB_ERR_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_04 /** * @desc Verify that the IUT rejects the procedure using Error Indication Procedure if message not contains mandatory IEs/IE groups and * include Procedure Code IE, Triggering Message IE and Procedure Criticality IE and Information Element Criticality Diagnostics IE * in the Criticality Diagnostics IE for each reported IEs/IE groups within ERROR_INDICATION. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an E-RAB_SETUP_REQUEST, * containing an MME UE_S1AP_ID * not containing an eNB_UE_S1AP_ID * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing QCI * indicating value 5 * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * sends an ERROR_INDICATION * containing a Criticality_Diagnostics * containing a Procedure_Code * containing a Triggering_Message * containing a Procedure_Criticality * containing an Information Element Criticality_Diagnostics * containing an IE_Criticality * containing an IE_ID * containing an IE_Type_of_Error. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_05 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.5¶4(2nd dashed line) and 14 */ testcase TC_S1AP_ENB_ERR_05() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_05()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_05 /** * @desc Verify that the IUT rejects the procedure if message contains too many occurrances of the same IEs/IE groups with * response message for this procedure and report the cause value ‘Abstract Syntax Error(Falsely Constructed Message)’. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an INITIAL_CONTEXT_SETUP_REQUEST, * containing an MME UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an eNB_UE_S1AP_ID(same IE as already present) * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * containing a UE_Security_Capabilities * containing an Encription_Algorithms * indicating not supported algoithm * containing an Integrity_Protection_Algorithms * containing a Security_Key * sends an ERROR_INDICATION * containing a Criticality_Diagnostics * containing a Procedure_Code * containing a Triggering_Message * containing a Procedure_Criticality * containing an Information Element Criticality_Diagnostics * containing an IE_Criticality * containing an IE_ID * containing an IE_Type_of_Error. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_06 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.6¶2(1st dashed line) */ testcase TC_S1AP_ENB_ERR_06() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_06()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_06 /** * @desc Verify that the IUT terminate the procedure that does not have message to report unsuccessful outcome and message contains * too many occurrances of the same IEs/IE groups and initiate Error Indication Procedure with cause value * ‘Abstract Syntax Error(Falsely Constructed Message)’. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an E-RAB_SETUP_REQUEST, * containing an MME UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an eNB_UE_S1AP_ID(same IE as already present) * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing QCI * indicating value 5 * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * sends an ERROR_INDICATION * containing a Cause * indicating ‘Abstract Syntax Error(Falsely Constructed Message)’. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_07 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.5¶3(2nd dashed line) */ testcase TC_S1AP_ENB_ERR_07() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_07()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_07 /** * @desc Verify that the IUT initiate an Error Indication procedure with inclusion of only the previousy received AP ID from the peer node * and appropriate cause value in case if AP ID has been stored previously for another UE-associated logical connection for same * peer node. *
* Pics Selection: PICS A.3/2.1 and A.3/6.2.2 and A.3/17.2 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an E-RAB_SETUP_REQUEST, * containing an MME UE_S1AP_ID * indicating already used AP ID * containing an eNB_UE_S1AP_ID * indicating already used AP ID * containing a UE_Aggregate_Maximum_Bit_Rate * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing QCI * indicating value 5 * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU * sends an ERROR_INDICATION * containing an eNB_UE_S1AP_ID * containing a Cause * indicating ‘Unknown or already allocated eNB UE S1AP ID’. ** * @see ETSI TS 103 497-2 TP_S1AP_ENB_ERR_08 * @reference ETSI TS 136 413 V13.4.0 Clause 10.3.5¶3(2nd dashed line) */ testcase TC_S1AP_ENB_ERR_08() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_enb; // Test control if (not (PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE)) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT and PICS_S1AP_eNB_INITIATION_ERROR_IND_ABSTRACT_SYNTAX_PROCEDURE' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_eNB_Up(v_s1ap_enb); // Start v_s1ap_enb.start(f_TC_S1AP_ENB_ERR_08()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_ENB_ERR_08 } // End of group Unknown_unforseen_errorneous_group } // End of group eNB_Role group MME_Role { // TODO Review all preamble action: E-RAB Setup is exchanged for MME role, shall not be f_rABSetupRequest /** * @desc E-RAB management group * @see ETSI TS 103 497-2 Clause 5.2.2.2.2 E-RAB management group */ group ERAB_management_group { /** * @desc Verify that the IUT can send an E-RAB_SETUP_REQUEST with at least one E-RAB IE to indicate an E-RAB Setup procedure. *
* Pics Selection: PICS A.4/1.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an E-RAB Setup procedure, * sends an E-RAB_SETUP_REQUEST * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-RAB_to_be_Setup_List * containing an E-RAB_to_be_Setup Item 1 * containing an E-RAB_ID * containing an E-RAB_Level_QoS_Parameters * containing a Transport_Layer_Address * containing a GTP-TEID * containing a NAS-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_eNB_RAB_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.2.1.2 and 9.1.3.1 */ testcase TC_S1AP_MME_RAB_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_RAB_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_RAB_01 } // End of group ERAB_management_group group Context_Management_group { testcase TC_S1AP_MME_CMP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_mME_CMP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_CMP_01 testcase TC_S1AP_MME_CMP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_mME_CMP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_CMP_02 } // End of group Context_Management_group /** * @desc Paging group * @see ETSI TS 103 497-2 Clause 5.2.2.2.5 Paging group */ group Pagin_group { /** * @desc Verify that the IUT can send a PAGING to indicate a Paging procedure. *
* Pics Selection: A.4/4.4 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Paging procedure * sends a PAGING * containing a UE_Identity_Index_value * containing a UE_Paging_Identity * containing a S-TMSI * containing an IMSI * containing a CN_Domain. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_PAG_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.5.2¶1 and 9.1.6 */ testcase TC_S1AP_MME_PAG_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_PAG_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_PAG_01 } // End of group Pagin_group /** * @desc NAS_transport_group * @see ETSI TS 103 497-2 Clause 5.2.2.1.6 NAS transport group */ group NAS_transport_group { /** * @desc Verify that the IUT can send a DOWNLINK_NAS_TRANSPORT to indicate an ongoing NAS Transport procedure. *
* Pics Selection: A.4/5.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an ongoing NAS Transport procedure * sends a DOWNLINK_NAS_TRANSPORT * containing an MME UE S1AP ID * containing an eNB_UE_S1AP_ID * containing a NAS-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_NAS_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.6.2.2¶1 and 9.1.7.2 */ testcase TC_S1AP_MME_NAS_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_NAS_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_NAS_01 /** * @desc Verify that the IUT can send a REROUTE_NAS_REQUEST to indicate a Reroute NAS Request procedure. *
* Pics Selection: A.4/5.5 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Reroute NAS Request procedure * sends a REROUTE_NAS_REQUEST * containing an MME UE S1AP ID * containing a S1_Message * containing an MME_Group_ID. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_NAS_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.6.2.2¶1 and 9.1.7.2 */ testcase TC_S1AP_MME_NAS_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_NAS_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_NAS_02 } // End of group NAS_transport_group /** * @desc Management group * @see ETSI TS 103 497-2 Clause 5.2.2.2.7 Management group */ group Management_group { /** * @desc Verify that the IUT can send a RESET to indicate a Reset procedure initiated from the MME. *
* Pics Selection: A.4/6.1.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Reset procedure initiated from the MME * sends a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing a S1_Interface * indicating a value ‘Reset_all’. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.1¶2 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_MME_MNP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_01 /** * @desc Verify that the IUT can send process successfully all mandatory IEs in a RESET and sends a RESET_ACKNOWLEDGE * due to a Reset procedure initiated from the E-UTRAN. *
* Pics Selection: A.4/6.1.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing an S1_Interface * indicating value ‘Reset_all’ * sends a RESET_ACKNOWLEDGE * containing a UE-associated_logical_S1-connection_list. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.1¶2 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_MME_MNP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_02 /** * @desc Verify that the IUT can successfully all mandatory IEs in a RESET and sends a RESET_ACKNOWLEDGE * due to a Reset procedure in case of Abnormal Condition at the EPC. *
* Pics Selection: A.4/6.1.1 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a RESET * containing a Cause * indicating an appropriate cause value * containing a Reset_Type * containing a Part_of_S1_interface * indicating an empty ‘UE-associated_logical_S1-connection’ * sends a RESET_ACKNOWLEDGE * containing a UE-associated_logical_S1-connection_list * indicating an empty ‘UE-associated_logical_S1-connection’. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_03 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.3.2¶1 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_MME_MNP_03() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_03()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_03 /** * @desc Verify that the IUT can send a RESET to indicate a Reset procedure initiated from the eNB. *
* Pics Selection: A.4/6.2.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an Error Indication procedure * sends an ERROR_INDICATION * (containing a Cause * or containing a Criticality_Diagnostics). ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_04 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.1.2.1¶2 and 9.1.8.1 and 9.1.8.2 */ testcase TC_S1AP_MME_MNP_04() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_04()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_04 /** * @desc Verify that the IUT can process all mandatory IEs in a S1_SETUP_REQUEST and * sends a S1_SETUP_RESPONSE to indicate a S1 Setup procedure. *
* Pics Selection: A.4/6.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a S1_SETUP_REQUEST * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC * containing a Default_Paging_DRX * sends a S1_SETUP_RESPONSE. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_05 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.3.2¶1 and 9.1.8.4 and 9.1.8.5 */ testcase TC_S1AP_MME_MNP_05() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_05()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_05 /** * @desc Verify that the IUT can process all mandatory IEs in a S1_SETUP_REQUEST and * sends a S1_SETUP_FAILURE to indicate an invalid S1 Setup procedure due to an unknown PLMN identities. *
* Pics Selection: A.4/6.3 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of a S1_SETUP_REQUEST * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC * containing a Broadcast_PLMNs * indicating at least one unknown PLMN identity * sends a S1_SETUP_FAILURE * containing a Cause * indicating the cause value 'Unknown PLMN'. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_06 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.3.2¶1 and 9.1.8.4 and 9.1.8.6 */ testcase TC_S1AP_MME_MNP_06() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_06()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_06 /** * @desc Verify that the IUT can process all mandatory IEs in an ENB_CONFIGURATION_UPDATE and * sends an ENB_CONFIGURATION_UPDATE_ACKNOWLEDGE to indicate an eNB Configuration Update procedure. *
* Pics Selection: A.4/6.4 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an ENB_CONFIGURATION_UPDATE * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC * sends an MME_CONFIGURATION_UPDATE_ACKNOWLEDGE. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_07 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.4.2¶1 and 9.1.8.7 and 9.1.8.8 */ testcase TC_S1AP_MME_MNP_07() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_07()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_07 /** * @desc Verify that the IUT can process all mandatory IEs in an ENB_CONFIGURATION_UPDATE and * sends an ENB_CONFIGURATION_UPDATE_FAILURE to indicate an invalid eNB Configuration Update procedure due to an invalid Global eNB identifier. *
* Pics Selection: A.4/6.4 * Configuration: CF_S1-MME * Ensure that the IUT * on receipt of an ENB_CONFIGURATION_UPDATE * containing a Global_eNB_ID * indicating invalid value * sends an ENB_CONFIGURATION_UPDATE_FAILURE * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_08 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.3.2¶1 and 9.1.8.7 and 9.1.8.9 */ testcase TC_S1AP_MME_MNP_08() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_08()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_08 /** * @desc Verify that the IUT can send an ENB_CONFIGURATION_UPDATE to indicate an eNB Configuration Update procedure. *
* Pics Selection: A.4/6.5 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an eNB Configuration Update procedure * sends an ENB_CONFIGURATION_UPDATE * containing a Global_eNB_ID * containing a Supported_TAs * containing a TAC. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_09 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.4.2¶1 and 9.1.8.10 */ testcase TC_S1AP_MME_MNP_09() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_09()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_09 /** * @desc Verify that the IUT can send an OVERLOAD_START to indicate an Overload Start procedure. *
* Pics Selection: A.4/6.6 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an Overload Start procedure * sends an OVERLOAD_START * containing an Overload_Response. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_10 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.6.2¶1 and 9.1.8.13 */ testcase TC_S1AP_MME_MNP_10() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_10()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_10 /** * @desc Verify that the IUT can send an OVERLOAD_STOP to indicate an Overload Stop procedure. *
* Pics Selection: A.4/6.7 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an Overload Stop procedure * sends an OVERLOAD_STOP * containing an Overload_Response. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MNP_11 * @reference ETSI TS 136 413 V13.4.0 Clause 8.7.7.2¶1 and 9.1.8.14 */ testcase TC_S1AP_MME_MNP_11() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MNP_11()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MNP_11 } // End of group Management_group /** * @desc S1 CDMA 2000 tunnelling group group * @see ETSI TS 103 497-2 Clause 5.2.2.2.8 S1 CDMA 2000 tunnelling group group */ group S1_CDMA_2000_tunelling_group { /** * @desc Verify that the IUT can send a DOWNLINK_S1_CDMA2000_TUNNELLING. *
* Pics Selection: PICS A.3/7.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a CDMA2000 signalling event * sends a DOWNLINK_S1_CDMA2000_TUNNELLING * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * not containing an E-RABs_Subject_to_Forwarding_Lis * containing a CDMA2000_HO_type * containing a CDMA2000_PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_STP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.8.2.1¶1 and 9.1.9.1 */ testcase TC_S1AP_MME_STP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_eNB_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_eNB_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_STP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_STP_01 } // End of group S1_CDMA_2000_tunelling_group /** * @desc Warning message transmission group * @see ETSI TS 103 497-2 Clause 5.2.2.2.10 Trace group */ group Trace_group { /** * @desc Verify that the IUT can send a TRACE_START message to indicate Trace Start procedure. *
* Pics Selection: A.4/9.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Trace Start procedure * sends a TRACE_START * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Trace_Activation * containing an E-UTRAN_Trace_ID * containing a Interfaces_To_Trace * indicating value ‘S1-MME’ * containing a Trace_depth * indicating value ‘maximum’ * containing a Trace_Collection_Entity_IP_Address. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_TRP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.10.1.2¶1 and 9.1.11.1 and 9.2.1.4 */ testcase TC_S1AP_MME_TRP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_TRP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_TRP_01 /** * @desc Verify that the IUT can successfully process all mandatory IEs in a DEACTIVATE_TRACE. *
* Pics Selection: A.4/9.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Deactivate Trace procedure * sends a DEACTIVATE_TRACE * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing an E-UTRAN_Trace_ID. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_TRP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.10.1.211 and 9.1.11.2 */ testcase TC_S1AP_MME_TRP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_TRP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_TRP_02 } // End of goup Trace_group /** * @desc Warning message transmission group * @see ETSI TS 103 497-2 Clause 5.2.2.2.11 Location reporting group */ group Location_reporting_group { /** * @desc Verify that the IUT can send a LOCATION_REPORTING_CONTROL. *
* Pics Selection: A.4/10.1 and A.4/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Location Reporting Control procedure * sends a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing a Event_Type * containing a Report_Area * indicating ECGI. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_LRP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.1.2-1 and 9.1.12.1 and 9.1.12.3 and 9.2.1.16,34,38 */ testcase TC_S1AP_MME_LRP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_LRP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_LRP_01 /** * @desc Verify that the IUT can send a LOCATION_REPORTING_CONTROL and process all mandatory IEs in a LOCATION REPORT_FAILURE_INDICATION. *
* Pics Selection: A.4/10.1 and A.4/10.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Location Reporting Control procedure * sends a LOCATION_REPORTING_CONTROL * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Request_Type * containing a Event_Type * containing a Report_Area * indicating ECGI * receives a LOCATION_REPORT_FAILURE_INDICATION * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Cause * indicating an appropriate cause value. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_LRP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.11.1.2-1 and 9.1.12.1 and 9.1.12.3 and 9.2.1.16,34,38 */ testcase TC_S1AP_MME_LRP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_LRP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_LRP_02 } // End of group Location_reporting_group /** * @desc Warning message transmission group * @see ETSI TS 103 497-2 Clause 5.2.2.2.12 Warning message transmission group */ group Warning_message_transmission_group { /** * @desc Verify that the IUT can send a WRITE-REPLACE_WARNING_REQUEST to indicate a Warning Message Transmission procedure. *
* Pics Selection: PICS A.4/11.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a Warning Message Transmission procedure * sends a WRITE-REPLACE_WARNING_REQUEST * containing a Message_Identifier * containing a Serial_Number * containing a Repetition Period * containing an Number_of_Broadcasts_Requested ** * @see ETSI TS 103 497-2 TP_S1AP_MME_WTP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.1.2-1 and 9.1.13.1 and 9.1.13.2 */ testcase TC_S1AP_MME_WTP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_WTP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_WTP_01 /** * @desc Verify that the IUT can send a KILL_REQUEST to cancel an already ongoing broadcast of a Warning Message Transmission procedure. *
* Pics Selection: PICS A.4/11.2 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a cancellation of an ongoing Warning Message Transmission procedure * sends a KILL_REQUEST * containing a Message_Identifier * containing a Serial_Number ** * @see ETSI TS 103 497-2 TP_S1AP_MME_WTP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.12.2.2-1 and 9.1.13.3 and 9.1.13.4 */ testcase TC_S1AP_MME_WTP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component direct information f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_WTP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_WTP_02 } // End of group Warning_message_transmission_group /** * @desc MME direct information transfer group * @see ETSI TS 103 497-2 Clause 5.2.2.2.14 MME direct information transfer group */ group MME_direct_information_transfer_group { /** * @desc Verify that the IUT can send an MME_DIRECT_INFORMATION_TRANSFER to indicate an MME Configuration Transfer procedure. *
* Pics Selection: PICS A.4/13 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an MME Direct Information Transfer procedure, * sends an MME_DIRECT_INFORMATION_TRANSFER * containing an Inter-system_Information_Transfer_Type * containing a RIM * containing a RIM_Transfer * containing a RIM_Information. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MIT_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.14.2.1 and 9.2.3.23 */ testcase TC_S1AP_MME_MIT_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MIT_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MIT_01 } // End of group MME_direct_information_transfer_group /** * @desc MME configuration transfer * @see ETSI TS 103 497-2 Clause 5.2.2.2.16 MME configuration transfer group */ group MME_configuration_transfer_group { /** * @desc Verify that the IUT can send an MME_CONFIGURATION_TRANSFER to indicate an MME Configuration Transfer procedure. *
* Pics Selection: PICS A.4/15 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate an MME Configuration Transfer procedure, * sends an MME_CONFIGURATION_TRANSFER * containing a SON_Configuration_Transfer * containing a Target_eNB-ID * containing a Source_eNB-ID * containing a SON_Information. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_MCT_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.16.2.1 and 9.1.17 */ testcase TC_S1AP_MME_MCT_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_MCT_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_MCT_01 } // End of group MME_configuration_transfer_group /** * @desc LPPa transport group * @see ETSI TS 103 497-2 Clause 5.2.2.2.17 LPPa transport group */ group LPPa_transport_group { /** * @desc Verify that the IUT can send a DOWNLINK_UE_ASSOCIATED_LPPA_TRANSPORT to indicate a LPPa Transport procedure * using a UE associated signalling. *
* Pics Selection: PICS A.4/16.1 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a LPPa Transport procedure using a UE associated signalling, * sends a DOWNLINK_UE_ASSOCIATED_LPPA_TRANSPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Routing_ID * indicating a valid routing identifier value * containing an LPPa-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_LPP_01 * @reference ETSI TS 136 413 V13.4.0 Clause 8.17.2.1 and 9.1.19.1 */ testcase TC_S1AP_MME_LPP_01() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_LPP_01()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_LPP_01 /** * @desc Verify that the IUT can send a DOWNLINK_UE_ASSOCIATED_LPPA_TRANSPORT to indicate a LPPa Transport procedure * using a non-UE associated signalling. *
* Pics Selection: PICS A.3/16.3 * Configuration: CF_S1-MME * Ensure that the IUT * to indicate a LPPa Transport procedure using a UE associated signalling, * sends a DOWNLINK_UE_ASSOCIATED_LPPA_TRANSPORT * containing an MME_UE_S1AP_ID * containing an eNB_UE_S1AP_ID * containing a Routing_ID * indicating a valid routing identifier value * containing an LPPa-PDU. ** * @see ETSI TS 103 497-2 TP_S1AP_MME_LPP_02 * @reference ETSI TS 136 413 V13.4.0 Clause 8.17.2.3 and 9.1.19.3 */ testcase TC_S1AP_MME_LPP_02() runs on S1AP system TestAdapter { // Local variables var S1AP v_s1ap_mme; // Test control if (not PICS_S1AP_MME_IUT) { log("*** " & __SCOPE__ & ": ERROR: 'PICS_S1AP_MME_IUT' shall be set to true for executing the TC. ***"); stop; } // Test component configuration f_cf_S1AP_MME_Up(v_s1ap_mme); // Start v_s1ap_mme.start(f_TC_S1AP_MME_LPP_02()); // synchronize PTC on 1 sychronization points f_serverSyncNClientsAndStop(1, {c_prDone, c_tbDone, c_poDone}); f_cf_Down(); } // End of testcase TC_S1AP_MME_LPP_02 } // End of group LPPa_transport_group /** * @desc Unknown, Unforseen and Erroneous Protocol Data * @see ETSI TS 103 497-2 Clause 5.2.2.2.18 Unknown, Unforseen and Erroneous Protocol Data */ group Unknown_unforseen_errorneous_group { } // End of group Unknown_unforseen_errorneous_group } // End of group MME_Role } // End of module S1AP_TestCases