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
This commit is contained in:
Neels Hofmeyr 2022-01-26 01:22:12 +01:00
parent 9c0f9c8871
commit c3c6ee6c63
1 changed files with 26 additions and 3 deletions

View File

@ -7932,6 +7932,31 @@ runs on MSC_ConnHdlr {
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 @@ private function f_TC_assignment_emerg_setup_deny(charstring id) runs on MSC_Con
}
}
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 @@ private function f_tc_cm_reestablishment_1(charstring id) runs on MSC_ConnHdlr {
}
}
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 @@ private function f_tc_cm_reestablishment_2(charstring id) runs on MSC_ConnHdlr {
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 {