aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2023-09-22 12:59:10 +0200
committerPhilipp Maier <pmaier@sysmocom.de>2023-09-22 15:49:15 +0200
commit1ec31b331144efaeda18f0d4c83d7d62e3766216 (patch)
tree1da969d6656d869fcd951dc307561faed813f1f5
parent02c086f403ce35a8888333eb3fde6ffc5fe03544 (diff)
PCU_Tests: add an IMSI when sending data via BSSGP
In many of our tests we trigger a paging by the PCU by sending some data through BSSGP. However, we often do this without putting an IMSI into the ts_BSSGP_DL_UD template. The PCU then send the paging through the AGCH because without IMSI no paging group can be calculated. The tests still expect the paging to appear on the PCH and fail. Let's fix this by adding an IMSI to the BSSGP request so that the PCU knows the and the paging is sent through the PCU. Change-Id: I7a70cc2a8af9d088071841861a8120afb9af86f9
-rw-r--r--pcu/PCU_Tests.ttcn46
1 files changed, 23 insertions, 23 deletions
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 9829edb1..a6d3559a 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -446,7 +446,7 @@ testcase TC_pcuif_suspend_active_tbf() runs on RAW_PCU_Test_CT {
BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id));
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1059,7 +1059,7 @@ testcase TC_cs_initial_dl() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1102,7 +1102,7 @@ function f_dl_data_exp_cs(template (present) CodingScheme exp_final_cs := ?, tem
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
@@ -1332,7 +1332,7 @@ testcase TC_mcs_initial_dl() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_egprs_def));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_egprs_def, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1726,7 +1726,7 @@ testcase TC_x2031_t3191() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1827,7 +1827,7 @@ testcase TC_zero_x2031_t3191() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1906,7 +1906,7 @@ testcase TC_t3193() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -1980,7 +1980,7 @@ testcase TC_n3105_max_t3195() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2053,7 +2053,7 @@ testcase TC_n3105_max_t3195() runs on RAW_PCU_Test_CT {
}
/* after T_3195 timeout, TBF is released */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data2));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data2, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2118,7 +2118,7 @@ function f_TC_t3172(integer t3172_ms, BIT1 wait_ind_size) runs on RAW_PCU_Test_C
}
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2434,7 +2434,7 @@ private function f_TC_mo_ping_pong_1phase_access(template (present) CodingScheme
BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id));
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2624,7 +2624,7 @@ runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2779,7 +2779,7 @@ testcase TC_imm_ass_dl_block_retrans() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -2830,7 +2830,7 @@ testcase TC_dl_flow_more_blocks() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
@@ -3027,7 +3027,7 @@ testcase TC_dl_no_ack_retrans_imm_ass() runs on RAW_PCU_Test_CT {
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -3126,7 +3126,7 @@ testcase TC_dl_llc_sapi_priority() runs on RAW_PCU_Test_CT {
/* SGSN sends some low prio DL data, PCU will page on CCCH (PCH) */
for (var integer i := 0; i < 10; i := i + 1) {
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi_other));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi_other, imsi := ts_BSSGP_IMSI(ms.imsi)));
}
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi2));
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi7));
@@ -3644,7 +3644,7 @@ function f_TC_ul_tbf_reestablish_with_pkt_dl_ack_nack(boolean use_egprs) runs on
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, racap_tmpl));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, racap_tmpl, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
@@ -4150,7 +4150,7 @@ private function f_tc_dl_data_no_llc_ui_dummy(template (omit) MSRadioAccessCapab
f_bssgp_client_llgmm_assign(TLLI_UNUSED, ms.tlli);
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap, imsi := ts_BSSGP_IMSI(ms.imsi)));
f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
@@ -4242,7 +4242,7 @@ testcase TC_ul_tbf_finished_pkt_dl_ass_pch() runs on RAW_PCU_Test_CT {
/* 1 UL block should be received in SGSN */
BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id));
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
@@ -4309,7 +4309,7 @@ testcase TC_ul_tbf_1phase_while_dl_ass_pch() runs on RAW_PCU_Test_CT {
/* 1 UL block should be received in SGSN */
BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id));
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
@@ -4389,7 +4389,7 @@ testcase TC_ul_tbf_2phase_while_dl_ass_pch() runs on RAW_PCU_Test_CT {
/* 1 UL block should be received in SGSN */
BSSGP[0].receive(tr_BSSGP_UL_UD(ms.tlli, mp_gb_cfg.bvc[0].cell_id));
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
@@ -7354,9 +7354,9 @@ function f_tc_stat_pdch_avail_occ_ms_not_known(boolean egprs) runs on RAW_PCU_Te
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
var octetstring data := f_rnd_octstring(1400);
if (egprs) {
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_egprs));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_egprs, imsi := ts_BSSGP_IMSI(ms.imsi)));
} else {
- BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_gprs));
+ BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_gprs, imsi := ts_BSSGP_IMSI(ms.imsi)));
}
f_ms_exp_dl_tbf_ass_ccch(ms);