bsc: split f_start_handler() in two, ..._create() and ..._run()

This is used by upcoming BSC_Tests.TC_cm_reestablishment().

Related: SYS#5130
Change-Id: I96954a6895a65718d943aa5e73b783a75a9f7256
This commit is contained in:
Neels Hofmeyr 2021-07-20 22:09:06 +02:00 committed by laforge
parent d36a82fd8a
commit da4367875a
1 changed files with 13 additions and 2 deletions

View File

@ -3290,7 +3290,7 @@ private function f_connect_handler(inout MSC_ConnHdlr vc_conn, integer bssap_idx
connect(vc_conn:STATSD_PROC, vc_STATSD:STATSD_PROC);
}
function f_start_handler(void_fn fn, template (omit) TestHdlrParams pars := omit)
function f_start_handler_create(template (omit) TestHdlrParams pars := omit)
runs on test_CT return MSC_ConnHdlr {
var charstring id := testcasename();
var MSC_ConnHdlr vc_conn;
@ -3300,12 +3300,23 @@ runs on test_CT return MSC_ConnHdlr {
}
vc_conn := MSC_ConnHdlr.create(id);
f_connect_handler(vc_conn, bssap_idx);
return vc_conn;
}
function f_start_handler_run(MSC_ConnHdlr vc_conn, void_fn fn, template (omit) TestHdlrParams pars := omit)
runs on test_CT return MSC_ConnHdlr {
var charstring id := testcasename();
/* Emit a marker to appear in the SUT's own logging output */
f_logp(BSCVTY, testcasename() & "() start");
f_logp(BSCVTY, id & "() start");
vc_conn.start(f_handler_init(fn, id, pars));
return vc_conn;
}
function f_start_handler(void_fn fn, template (omit) TestHdlrParams pars := omit)
runs on test_CT return MSC_ConnHdlr {
return f_start_handler_run(f_start_handler_create(pars), fn, pars);
}
/* first function inside ConnHdlr component; sets g_pars + starts function */
private function f_handler_init(void_fn fn, charstring id, template (omit) TestHdlrParams pars := omit)
runs on MSC_ConnHdlr {