pespin has submitted this change. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/22497 )
Change subject: pcu: Introduce test TC_nacc_outbound_success_twice_nocache
......................................................................
pcu: Introduce test TC_nacc_outbound_success_twice_nocache
Change-Id: I64369eb02fa611f9249696ffe249b0d6d917fa70
---
M pcu/PCU_Tests.ttcn
1 file changed, 54 insertions(+), 0 deletions(-)
Approvals:
Jenkins Builder: Verified
laforge: Looks good to me, approved
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 6a78975..e44e204 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -3836,6 +3836,59 @@
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 after caches timed out
+ */
+testcase TC_nacc_outbound_success_twice_nocache() runs on RAW_PCU_Test_CT {
+ var PollFnCtx pollctx;
+ var GprsMS ms;
+ 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)) };
+ var template (value) RlcmacUlCtrlMsg cell_chf_notif;
+
+ /* 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();
+ /* Set timeout values for caches so that entries will be erased before
the second try */
+ f_pcuvty_set_neigh_caches(1, 1);
+
+ /* 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 */
+ f_outbound_nacc_success(ms, info_ind);
+
+ /* CTRL client should have disconnected from us */
+ f_ipa_ctrl_wait_link_down();
+ /* wait for cache entries to time out */
+ f_sleep(2.0);
+ /* First NACC procedure is done, let's try to start a new one now that
previous queries have timed out: */
+ f_outbound_nacc_success(ms, info_ind);
+
+ f_shutdown(__BFILE__, __LINE__, final := true);
+}
+
/* Verify PCU transmits Pkt Cell Change Continue if RAC+CI resolution fails
during outbound NACC procedure */
testcase TC_nacc_outbound_rac_ci_resolve_conn_refused() runs on
RAW_PCU_Test_CT {
var RlcmacDlBlock dl_block;
@@ -4174,6 +4227,7 @@
execute( TC_pcuif_info_ind_subsequent() );
execute( TC_nacc_outbound_success() );
execute( TC_nacc_outbound_success_twice() );
+ execute( TC_nacc_outbound_success_twice_nocache() );
execute( TC_nacc_outbound_rac_ci_resolve_conn_refused() );
execute( TC_nacc_outbound_rac_ci_resolve_timeout() );
execute( TC_nacc_outbound_rac_ci_resolve_fail_parse_response() );
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/22497
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: I64369eb02fa611f9249696ffe249b0d6d917fa70
Gerrit-Change-Number: 22497
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>
Gerrit-MessageType: merged