This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/22628 ) Change subject: pcu: Introduce test TC_nacc_outbound_success_no_ctrl_ack ...................................................................... pcu: Introduce test TC_nacc_outbound_success_no_ctrl_ack Related: OS#4909 Change-Id: I371033604db8ae845e7c3fb03aef1821520064d9 --- M pcu/PCU_Tests.ttcn 1 file changed, 59 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/28/22628/1 diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 1d4e129..5f44e57 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -3685,7 +3685,8 @@ /* Start NACC from MS side */ 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 exp_rac_ci_query := true, boolean exp_si_query := true, + boolean skip_final_ctrl_ack := false) runs on RAW_PCU_Test_CT { var template (value) RlcmacUlCtrlMsg cell_chf_notif; var RlcmacDlBlock dl_block; @@ -3745,7 +3746,7 @@ f_shutdown(__BFILE__, __LINE__); } /* PKT CELL CHG CONTINUE ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */ - if (dl_block.ctrl.mac_hdr.rrbp_valid) { + if (not skip_final_ctrl_ack and dl_block.ctrl.mac_hdr.rrbp_valid) { sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); } @@ -3792,6 +3793,61 @@ f_shutdown(__BFILE__, __LINE__, final := true); } +/* Verify Pkt Cell Change Continue is retransmitted if not CTRL ACKed */ +testcase TC_nacc_outbound_success_no_ctrl_ack() runs on RAW_PCU_Test_CT { + var PollFnCtx pollctx; + var GprsMS ms; + var RlcmacDlBlock dl_block; + var uint32_t sched_fn; + var PCUIF_info_ind info_ind := valueof(ts_PCUIF_INFO_default); + var MultislotCap_GPRS mscap_gprs := { + gprsmultislotclass := '00011'B, + gprsextendeddynalloccap := '0'B + }; + var MSRadioAccessCapabilityV ms_racap := { valueof(ts_RaCapRec('0001'B /* E-GSM */, mscap_gprs, omit)) }; + + /* Initialize osmo-bsc emulation neighbor resolution CTRL port */ + f_ipa_ctrl_start_server(mp_ctrl_neigh_ip, mp_ctrl_neigh_port); + + /* Initialize NS/BSSGP side */ + f_init_bssgp(); + /* Initialize GPRS MS side */ + f_init_gprs_ms(); + ms := g_ms[0]; /* We only use first MS in this test */ + + /* Initialize the PCU interface abstraction */ + f_init_raw(testcasename(), info_ind); + + /* Make sure we are not affected by full cache from previous tests */ + f_pcuvty_flush_neigh_caches(); + + /* Establish BSSGP connection to the PCU */ + f_bssgp_establish(); + f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli); + + /* Send PACKET RESOURCE REQUEST */ + pollctx := f_ms_establish_ul_tbf_2phase_access(ms, ts_RlcMacUlCtrl_PKT_RES_REQ(ms.tlli, ms_racap)); + /* Pkt Uplink Assignment above sets poll+rrbp requesting PACKET CONTROL ACK */ + f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), pollctx.fn, nr := pollctx.tstrxbts); + + /* Start NACC from MS side, avoid sending final CTRL ACK */ + f_outbound_nacc_success(ms, info_ind, skip_final_ctrl_ack := true); + + /* Wait until we receive something non-dummy */ + dl_block := f_skip_dummy(0, sched_fn); + /* Make sure it is a Pkt Cell Chg Continue (retransmitted)*/ + if (not match(dl_block, tr_RLCMAC_DL_CTRL(?, tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE))) { + setverdict(fail, "Rx unexpected DL block: ", dl_block); + } + /* PKT CELL CHG CONTINUE ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */ + if (dl_block.ctrl.mac_hdr.rrbp_valid) { + sched_fn := f_rrbp_ack_fn(sched_fn, dl_block.ctrl.mac_hdr.rrbp); + f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn); + } + + f_shutdown(__BFILE__, __LINE__, final := true); +} + /* Verify PCU handles outbound Network Assisted Cell Change Cell Change (NACC, TS 44.060 sec 8.8) twice, the second time using the caches */ testcase TC_nacc_outbound_success_twice() runs on RAW_PCU_Test_CT { var PollFnCtx pollctx; @@ -4249,6 +4305,7 @@ execute( TC_pcuif_info_ind_subsequent() ); execute( TC_nacc_outbound_success() ); + execute( TC_nacc_outbound_success_no_ctrl_ack() ); execute( TC_nacc_outbound_success_twice() ); execute( TC_nacc_outbound_success_twice_nocache() ); execute( TC_nacc_outbound_rac_ci_resolve_conn_refused() ); -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/22628 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I371033604db8ae845e7c3fb03aef1821520064d9 Gerrit-Change-Number: 22628 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210202/70e131d5/attachment.htm>