summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Couzens <lynxis@fe80.eu>2019-09-12 03:43:18 +0200
committerlaforge <laforge@osmocom.org>2019-09-28 12:47:34 +0000
commitfc02f24713b16a952710a717f706c408d0615eb6 (patch)
tree416b5736011e546ce0067c71ae196da0911c9f41
parent0eb26621d8e0e66fb4effb03b99d3ba7d0f28c6a (diff)
msc: add f_tc_lu_and_mt_sms_paging_repeated
The testcase will ensure paging is repeated by the MSC. Repeating will improve the reachability of MS when a Paging is lost or not received because the MS is moving between states. Change-Id: Ib5bf0b62e0639436cdcba03acbaedf1458e18873
-rw-r--r--msc/MSC_Tests.ttcn43
-rw-r--r--msc/MSC_Tests_Iu.ttcn10
2 files changed, 53 insertions, 0 deletions
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 063105c..0d54405 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -2060,6 +2060,48 @@ testcase TC_lu_and_mt_sms_paging_and_nothing() runs on MTC_CT {
vc_conn.done;
}
+/* LU followed by MT SMS with repeated paging */
+friend function f_tc_lu_and_mt_sms_paging_repeated(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
+ var SmsParameters spars := valueof(t_SmsPars);
+ var OCT4 tmsi;
+
+ f_init_handler(pars);
+
+ /* Perform location update and call */
+ f_perform_lu();
+
+ /* register an 'expect' for given IMSI (+TMSI) */
+ if (isvalue(g_pars.tmsi)) {
+ tmsi := g_pars.tmsi;
+ } else {
+ tmsi := 'FFFFFFFF'O;
+ }
+ f_ran_register_imsi(g_pars.imsi, tmsi);
+
+ f_vty_sms_send(hex2str(pars.imsi), "2342", "Hello SMS");
+
+ /* MSC->BSC: expect PAGING from MSC */
+ f_expect_paging();
+
+ /* MSC->BSC: expect PAGING from MSC */
+ f_expect_paging();
+
+ /* Establish DTAP / BSSAP / SCCP connection */
+ f_establish_fully(EST_TYPE_PAG_RESP);
+
+ spars.tp.ud := 'C8329BFD064D9B53'O;
+ f_mt_sms(spars);
+
+ f_expect_clear();
+}
+testcase TC_lu_and_mt_sms_paging_repeated() runs on MTC_CT {
+ var BSC_ConnHdlrPars pars;
+ var BSC_ConnHdlr vc_conn;
+ f_init();
+ pars := f_init_pars(1844);
+ vc_conn := f_start_handler_with_pars(refers(f_tc_lu_and_mt_sms_paging_repeated), pars);
+ vc_conn.done;
+}
/* mobile originated SMS from MS/BTS/BSC side to SMPP */
friend function f_tc_smpp_mo_sms(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
@@ -5845,6 +5887,7 @@ control {
execute( TC_lu_and_mo_sms() );
execute( TC_lu_and_mt_sms() );
execute( TC_lu_and_mt_sms_paging_and_nothing() );
+ execute( TC_lu_and_mt_sms_paging_repeated() );
execute( TC_smpp_mo_sms() );
execute( TC_smpp_mt_sms() );
diff --git a/msc/MSC_Tests_Iu.ttcn b/msc/MSC_Tests_Iu.ttcn
index 6491e27..628fbcd 100644
--- a/msc/MSC_Tests_Iu.ttcn
+++ b/msc/MSC_Tests_Iu.ttcn
@@ -274,6 +274,15 @@ testcase TC_iu_lu_and_mt_sms_paging_and_nothing() runs on MTC_CT {
vc_conn.done;
}
+testcase TC_iu_lu_and_mt_sms_paging_repeated() runs on MTC_CT {
+ var BSC_ConnHdlrPars pars;
+ var BSC_ConnHdlr vc_conn;
+ f_init(3);
+ pars := f_init_pars(101844);
+ vc_conn := f_start_handler_with_pars(refers(f_tc_lu_and_mt_sms_paging_repeated), pars);
+ vc_conn.done;
+}
+
testcase TC_iu_smpp_mo_sms() runs on MTC_CT {
var BSC_ConnHdlr vc_conn;
f_init(3);
@@ -432,6 +441,7 @@ control {
execute( TC_iu_lu_and_mo_sms() );
execute( TC_iu_lu_and_mt_sms() );
execute( TC_iu_lu_and_mt_sms_paging_and_nothing() );
+ execute( TC_iu_lu_and_mt_sms_paging_repeated() );
execute( TC_iu_smpp_mo_sms() );
execute( TC_iu_gsup_mo_sms() );