lynxis lazus has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/37796?usp=email )
Change subject: SGSN: add paging a whole routing area with multiple cells
......................................................................
SGSN: add paging a whole routing area with multiple cells
1. Attach + PDP Request
2. Wait for UE to be in Standby
3. Transmit to GTP Userdata
4. See the Paging on 2 BVCIs within the Routing Area
Change-Id: I88dc95669d57278a96e05ec84f934ebf70b319e5
---
M sgsn/SGSN_Tests.ttcn
1 file changed, 51 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/96/37796/1
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index fe4b086..ecdd778 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -2603,6 +2603,56 @@
f_cleanup();
}
+/*
+ * Wait for T3314 expiration and check that PS PAGING is created on DL PDU
+ * Use a Routing Area with 2 cells and expect paging on both cells.
+ *
+ * MS <-> SGSN: Attach Procedure
+ * MS <-> SGSN: PDP Context Request/Response
+ * MS SGSN: Timeout of T3314, MS location known only on Routing Area precision
+ * GGSN -> SGSN: User Data
+ * MS <-- SGSN: Paging PS all BVCI within the Routing Area
+ */
+private function f_TC_paging_ps_ra_multiple_cells(charstring id) runs on BSSGP_ConnHdlr
{
+ var PdpActPars apars := valueof(t_PdpActPars(mp_ggsn_ip));
+ var default d;
+
+ f_bssgp_client_unregister(g_pars.imsi, BSSGP_PROC[0]);
+ f_bssgp_client_register(g_pars.imsi, g_pars.tlli, BSSGP_PROC[1]);
+ f_bssgp_client_register(g_pars.imsi, g_pars.tlli, BSSGP_PROC[2]);
+
+ /* first perform regular attach */
+ f_gmm_attach(false, false, ran_index := 1);
+ /* then activate PDP context */
+ f_pdp_ctx_act(apars, ran_index := 1);
+
+ /* do a RAU to second BVCI */
+ /* then transceive a downlink PDU */
+ f_gtpu_xceive_mt(apars, f_rnd_octstring(100), ran_index := 1);
+
+ /* now wait for T3314 expiration (test_CT below has reduced it to 3s) */
+ f_sleep(5.0);
+
+ /* now data should be flowing again, but with PS PAGING */
+ f_gtpu_xceive_mt(apars, f_rnd_octstring(100), ran_index := 1);
+ BSSGP_SIG[1].receive(tr_BSSGP_PS_PAGING(?));
+ BSSGP_SIG[2].receive(tr_BSSGP_PS_PAGING(?));
+
+ /* FIXME: simulate paging response */
+ /* FIXME: verify PDU actually arrives only after paging response was successful */
+}
+
+testcase TC_paging_ps_ra_multiple_cells() runs on test_CT {
+ var BSSGP_ConnHdlr vc_conn;
+ f_init();
+ f_vty_config(SGSNVTY, "sgsn", "timer 3314 3");
+ f_sleep(1.0);
+ vc_conn := f_start_handler(refers(f_TC_paging_ps_ra_multiple_cells), testcasename(),
g_gb, 52);
+ vc_conn.done;
+ f_vty_config(SGSNVTY, "sgsn", "timer 3314 default");
+ f_cleanup();
+}
+
/* Run a RIM single report procedure over the sgsn. Since the SGSN will only do a
transparent routing of the
* RIM messages this basically tests if the message is correctly transfered from one GB
interface to the
* other and vice versa. */
@@ -3168,6 +3218,7 @@
execute( TC_suspend_resume() );
execute( TC_suspend_rau() );
execute( TC_paging_ps() );
+ execute( TC_paging_ps_ra_multiple_cells() );
execute( TC_bssgp_rim_single_report() );
execute( TC_rim_eutran_to_geran() );
--
To view, visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/37796?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I88dc95669d57278a96e05ec84f934ebf70b319e5
Gerrit-Change-Number: 37796
Gerrit-PatchSet: 1
Gerrit-Owner: lynxis lazus <lynxis(a)fe80.eu>