bsc: make ho_config_tests more robust against timing
In f_probe_for_handover disable the RSL emulation before the vty handover
command. Otherwise, osmo-bsc may be too fast to issue the handoverCommand, so
that RSLem still handles it and says: "RSL for unknown Dchan".
(f_probe_for_handover() receives the handoverCommand directly, just to detect
whether a handover would be initiated, and then quickly aborts the handover
procedure.)
Related: OS#4264
Change-Id: I7f73ef8cbdf46e31a46c9e1b7ad0fa2bd41c0a12
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 353ab16..38a961b 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -3668,6 +3668,11 @@
boolean is_inter_bsc_handover := false)
runs on MSC_ConnHdlr
{
+ /* We're going to thwart any and all handover attempts, just be ready to handle (and ignore) handover target
+ * lchans to be established on bts 1 or bts 2. */
+ f_rslem_suspend(RSL1_PROC);
+ f_rslem_suspend(RSL2_PROC);
+
var RSL_Message rsl;
var charstring log_msg := " (expecting handover)"
@@ -3677,11 +3682,6 @@
log("f_probe_for_handover starting: " & log_label & ": " & log_descr & log_msg);
f_vty_transceive(BSCVTY, handover_vty_cmd);
- /* We're going to thwart any and all handover attempts, just be ready to handle (and ignore) handover target
- * lchans to be established on bts 1 or bts 2. */
- f_rslem_suspend(RSL1_PROC);
- f_rslem_suspend(RSL2_PROC);
-
timer T := 2.0;
T.start;