bsc: TC_ho_in_fail_mgw_mdcx_timeout: new test
Verify that OsmoBSC runs into a timeout and aborts the handover if the
MDCX is not answered by the MGW. This test ensures it still works after
removing a redundant timer, as discussed here:
https://gerrit.osmocom.org/c/osmo-bsc/+/30307/1#message-9e02be4de78c03ed25b8422d6eee4ba9c6dda9ff
Related: OS#5787
Change-Id: I30e1811f97406cff6ba794fcd6882e2bb0205087
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index 13fe723..ed9c13b 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -476,7 +476,7 @@
}
}
- [g_pars.aoip] MGCP.receive(tr_MDCX) -> value mgcp_cmd {
+ [g_pars.aoip and not g_pars.ignore_mgw_mdcx] MGCP.receive(tr_MDCX) -> value mgcp_cmd {
mgcp_resp := f_rx_mdcx(mgcp_cmd);
MGCP.send(mgcp_resp);
if(norepeat == false) {
@@ -484,7 +484,8 @@
}
}
- [not g_pars.aoip] MGCP_MULTI.receive(tr_MGCP_RecvFrom_any(msg_mdcx)) -> value mrf {
+ [not g_pars.aoip and not g_pars.ignore_mgw_mdcx]
+ MGCP_MULTI.receive(tr_MGCP_RecvFrom_any(msg_mdcx)) -> value mrf {
mgcp_resp := f_rx_mdcx(mrf.msg.command);
msg_resp := {
response := mgcp_resp
@@ -756,7 +757,9 @@
uint3_t expect_tsc optional,
BSSMAP_IE_CellIdentifier cell_id_source,
boolean expect_ho_fail,
- boolean inter_bsc_ho_in__ho_req_in_initial_sccp_cr
+ boolean expect_ho_fail_lchan_est,
+ boolean inter_bsc_ho_in__ho_req_in_initial_sccp_cr,
+ boolean ignore_mgw_mdcx
};
/* Note: Do not use valueof() to get a value of this template, use
@@ -801,7 +804,9 @@
expect_tsc := omit,
cell_id_source := valueof(ts_CellID_LAC_CI(1, 1)),
expect_ho_fail := false,
- inter_bsc_ho_in__ho_req_in_initial_sccp_cr := true
+ expect_ho_fail_lchan_est := false,
+ inter_bsc_ho_in__ho_req_in_initial_sccp_cr := true,
+ ignore_mgw_mdcx := false
}
function f_create_chan_and_exp(template (present) PDU_BSSAP exp_l3_compl := ?)