diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index fcccad086..b1f3a310f 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -2182,6 +2182,7 @@ private function f_tc_ho_int(charstring id) runs on MSC_ConnHdlr { /* Check the amount of MGCP transactions is still consistant with the * test expectation */ f_check_mgcp_expectations() + f_sleep(0.5); } testcase TC_ho_int() runs on test_CT { @@ -2447,6 +2448,9 @@ private function f_tc_ho_out_fail_no_ho_detect(charstring id) runs on MSC_ConnHd var MgcpCommand mgcp; var octetstring l3_rr_chan_rel := '060D00'O; interleave { + [] RSL.receive(tr_RSL_DEACT_SACCH(g_chan_nr)) { + log("Got Deact SACCH"); + } [] RSL.receive(tr_RSL_DATA_REQ(g_chan_nr, ?, l3_rr_chan_rel)) { log("Got RR Release"); } diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn index 003813a20..07eafc7de 100644 --- a/bsc/MSC_ConnectionHandler.ttcn +++ b/bsc/MSC_ConnectionHandler.ttcn @@ -682,6 +682,9 @@ altstep as_assignment(inout AssignmentState st) runs on MSC_ConnHdlr { Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, log2str("Unexpected L3 received", l3)); } } + [st.rr_ass_cmpl_seen] RSL.receive(tr_RSL_DEACT_SACCH(st.old_chan_nr)) { + repeat; + } [st.rr_ass_cmpl_seen] RSL.receive(tr_RSL_REL_REQ(st.old_chan_nr, tr_RslLinkID_DCCH(0))) { RSL.send(ts_RSL_REL_CONF(st.old_chan_nr, valueof(ts_RslLinkID_DCCH(0)))); repeat; @@ -1043,6 +1046,9 @@ altstep as_handover(inout HandoverState st) runs on MSC_ConnHdlr { } [st.rr_ho_cmpl_seen] as_Media_ipacc(); [st.rr_ho_cmpl_seen] as_Media_mgw(true); + [st.rr_ho_cmpl_seen] RSL.receive(tr_RSL_DEACT_SACCH(st.old_chan_nr)) { + repeat; + } [st.rr_ho_cmpl_seen] RSL.receive(tr_RSL_REL_REQ(st.old_chan_nr, tr_RslLinkID_DCCH(0))) { RSL.send(ts_RSL_REL_CONF(st.old_chan_nr, valueof(ts_RslLinkID_DCCH(0)))); repeat;