dexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33539 )
Change subject: PCU_Tests: verify that PacketCellChangeContine contains an ARFCN and BSIC ......................................................................
PCU_Tests: verify that PacketCellChangeContine contains an ARFCN and BSIC
The testcase TC_nacc_outbound_success tests the NACC procedure. The cell that is proposed in the PacketCellChangeNotification is a GERAN cell. This means that the PCU should conclude the procedure with a PacketCellChangeNotification that contains the ARFCN and BSIC of the proposed cell. Let's make sure that this actually is the case.
Related: OS#6044 Change-Id: I4b8f3312088e3d2bc4b90702485e7c6a8d39f954 --- M pcu/PCU_Tests.ttcn 1 file changed, 26 insertions(+), 3 deletions(-)
Approvals: laforge: Looks good to me, approved pespin: Looks good to me, but someone else must approve Jenkins Builder: Verified
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index a1da67b..440d133 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -5332,13 +5332,14 @@ } }
-/* Start NACC from MS side */ +/* Start NACC from MS side, propose a GERAN cell */ private function f_outbound_nacc_success(inout GprsMS ms, PCUIF_info_ind info_ind, boolean exp_rac_ci_query := true, boolean exp_si_query := true, boolean skip_final_ctrl_ack := false, boolean use_old_ctrl_iface := false) runs on RAW_PCU_Test_CT { var template (value) RlcmacUlCtrlMsg cell_chg_notif; + var template RlcmacDlCtrlMsg cell_chg_cont; var RlcmacDlBlock dl_block; var uint32_t sched_fn; var GsmArfcn req_arfcn := 862; @@ -5361,9 +5362,15 @@ /* Announce SI back to MS, continue NACC procedure */ f_ms_handle_pkt_neighbor_cell_data(ms, si_default);
- /* Obtain a Downlink block and make sure it is a Pkt Cell Chg Continue */ + /* Obtain a Downlink block and make sure it is a PacketCellChangeContinue, also verify that + * the PacketCellChangeContinue message contains the ARFCN and BSIC which was proposed in + * the PacketCellChangeNotification before. */ f_rx_rlcmac_dl_block(dl_block, sched_fn); - if (not match(dl_block, tr_RLCMAC_DL_CTRL(?, tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE))) { + cell_chg_cont := tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE + cell_chg_cont.u.cell_chg_continue.arfcn_bsic_presence := '1'B + cell_chg_cont.u.cell_chg_continue.arfcn := req_arfcn; + cell_chg_cont.u.cell_chg_continue.bsic := req_bsic; + if (not match(dl_block, tr_RLCMAC_DL_CTRL(?, cell_chg_cont))) { setverdict(fail, "Rx unexpected DL block: ", dl_block); f_shutdown(__BFILE__, __LINE__); }