neels has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/26991 )
Change subject: bsc: fixup for conn cleanup, fixing three failing tests ......................................................................
bsc: fixup for conn cleanup, fixing three failing tests
Three tests fail after recent patch "bsc: properly clean up conn after each test" I9396efcabc085d2850244c6468b83c5f3a3ff3a2
In TC_assignment_emerg_setup_deny_bts(), do not expect an RR Rel.
In TC_assignment_emerg_setup_deny_msc() and TC_cm_reestablishment(), drop the additional f_expect_dlcx_conns().
Related: OS#5337 Change-Id: I1d1d27f0927e640a430b24c6dc3d5d851a5c4cb9 --- M bsc/BSC_Tests.ttcn 1 file changed, 26 insertions(+), 3 deletions(-)
Approvals: Jenkins Builder: Verified fixeria: Looks good to me, but someone else must approve neels: Looks good to me, approved
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 634e629..1510af8 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -7932,6 +7932,31 @@ deactivate(ack_rel_req); }
+friend function f_perform_clear_no_rr_rel(RSL_DCHAN_PT rsl_pt := RSL, RSLEM_PROC_PT rsl_proc_pt := RSL_PROC) +runs on MSC_ConnHdlr { + var default ack_dlcx := activate(as_mgcp_ack_all_dlcx()); + var default ack_rel_req := activate(as_rsl_ack_all_rel_req()); + f_logp(BSCVTY, "MSC instructs BSC to clear channel"); + BSSAP.send(ts_BSSMAP_ClearCommand(0)); + interleave { + [] rsl_pt.receive(tr_RSL_DEACT_SACCH(g_chan_nr)) { + f_logp(BSCVTY, "Got RSL Deact SACCH"); + } + [] BSSAP.receive(tr_BSSMAP_ClearComplete) { + f_logp(BSCVTY, "Got BSSMAP Clear Complete"); + /* Also drop the SCCP connection */ + BSSAP.send(RAN_Conn_Prim:MSC_CONN_PRIM_DISC_REQ); + } + [] rsl_pt.receive(tr_RSL_RF_CHAN_REL(g_chan_nr)) { + f_logp(BSCVTY, "Got RSL RF Chan Rel, sending Rel Ack"); + rsl_pt.send(ts_RSL_RF_CHAN_REL_ACK(g_chan_nr)); + f_rslem_unregister(0, g_chan_nr, PT := rsl_proc_pt); + } + } + deactivate(ack_dlcx); + deactivate(ack_rel_req); +} + private function f_perform_clear_test_ct(DchanTuple dt) runs on test_CT { @@ -8707,7 +8732,7 @@ } } BSSAP.receive(tr_BSSMAP_ClearRequest); - f_perform_clear(); + f_perform_clear_no_rr_rel(); }
/* EMERGENCY CALL situation #1, allowed globally and by BTS */ @@ -10198,7 +10223,6 @@ } } f_perform_clear() - f_expect_dlcx_conns(); f_create_mgcp_delete_ep(g_media.mgcp_ep); COORD.send(REEST_CLEAR_DONE); } @@ -10259,7 +10283,6 @@
f_logp(BSCVTY, "f_tc_cm_reestablishment_2 clearing"); f_perform_clear(RSL1, RSL1_PROC); - f_expect_dlcx_conns(); }
testcase TC_cm_reestablishment() runs on test_CT {