From 3466cc53d89189a90bf305d23f03f59369906fbd Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Mon, 5 Nov 2018 12:41:05 +0100 Subject: bsc: Introduce test TC_paging_resp_unsol With this test we want to verify that channels are released if BSC fails to complete an L3 request, for instance because no pending Paging CMD is found for a received Paging Response. Related: OS#3680 Change-Id: Iabe8a51aa13d2fcfec4500cf7aab47d60cc138ce --- bsc/BSC_Tests.ttcn | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'bsc/BSC_Tests.ttcn') diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 9b445f5c..a155fefc 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -1466,6 +1466,30 @@ testcase TC_paging_imsi_a_reset() runs on test_CT { f_shutdown_helper(); } +/* Verify how we handle unsolicited Paging Response, for instance because we + * receive a Paging Response after T3113 expired (and subscriber information was + * dropped). See OS#3680. + */ +testcase TC_paging_resp_unsol() runs on test_CT { + + f_init(1); + + var BSSAP_N_CONNECT_ind rx_c_ind; + var DchanTuple dt; + var PDU_ML3_MS_NW l3 := valueof(ts_PAG_RESP(valueof(ts_MI_IMSI_LV('001010008880018'H)))); + + /* Send CHAN RQD and wait for allocation; acknowledge it */ + dt.rsl_chan_nr := f_chreq_act_ack(); + + /* Send unsolicited Paging response (no matching Paging CMD stored in BSC) */ + f_ipa_tx(0, ts_RSL_EST_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0)), enc_PDU_ML3_MS_NW(l3))); + + /* expect BSC to disable the channel */ + f_expect_chan_rel(0, dt.rsl_chan_nr); + setverdict(pass); + +} + /* Test RSL link drop causes counter increment */ testcase TC_rsl_drop_counter() runs on test_CT { var integer rsl_fail; @@ -3407,6 +3431,7 @@ control { execute( TC_paging_imsi_a_reset() ); execute( TC_paging_imsi_load() ); execute( TC_paging_counter() ); + execute( TC_paging_resp_unsol() ); execute( TC_rsl_drop_counter() ); execute( TC_rsl_unknown_unit_id() ); -- cgit v1.2.3