diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2021-07-28 18:05:43 +0200 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2021-08-06 14:03:28 +0000 |
commit | e1a1b6354929e64d64fd29b21c55fbc4058df616 (patch) | |
tree | f931b2a74d5713f4f25cb84a6e1200481af09491 | |
parent | f797d298a588f31a2f3f095c6fa56961e88f676c (diff) |
msc: split f_start_handler_with_pars()
To allow running connect() on the COORD ports of test components before
starting the test component but after creating it, split
f_start_handler_with_pars() into f_start_handler_create() and _run().
Will be used by MSC_Tests.TC_call_re_establishment in
Ifdff5573eeb3b3d41e8599b9b0228411d2576864
Related: SYS#5130
Change-Id: Ic7e9dbb8c9db5948fe35fc3051bb988d65622782
-rw-r--r-- | msc/MSC_Tests.ttcn | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn index d991cc98..f0421c76 100644 --- a/msc/MSC_Tests.ttcn +++ b/msc/MSC_Tests.ttcn @@ -412,7 +412,7 @@ runs on MTC_CT return BSC_ConnHdlrPars { return pars; } -function f_start_handler_with_pars(void_fn fn, BSC_ConnHdlrPars pars) runs on MTC_CT return BSC_ConnHdlr { +function f_start_handler_create(BSC_ConnHdlrPars pars) runs on MTC_CT return BSC_ConnHdlr { var BSC_ConnHdlr vc_conn; var charstring id := testcasename() & int2str(pars.ran_idx); @@ -440,10 +440,20 @@ function f_start_handler_with_pars(void_fn fn, BSC_ConnHdlrPars pars) runs on MT connect(vc_conn:SGsAP, vc_SGsAP:SGsAP_CLIENT); connect(vc_conn:SGsAP_PROC, vc_SGsAP:SGsAP_PROC); } + return vc_conn; +} +function f_start_handler_run(BSC_ConnHdlr vc_conn, void_fn fn, BSC_ConnHdlrPars pars) runs on MTC_CT { + var charstring id := testcasename() & int2str(pars.ran_idx); /* We cannot use vc_conn.start(f_init_handler(fn, id, pars)); as we cannot have * a stand-alone 'derefers()' call, see https://www.eclipse.org/forums/index.php/t/1091364/ */ vc_conn.start(derefers(fn)(id, pars)); +} + +function f_start_handler_with_pars(void_fn fn, BSC_ConnHdlrPars pars) runs on MTC_CT return BSC_ConnHdlr { + var BSC_ConnHdlr vc_conn; + vc_conn := f_start_handler_create(pars); + f_start_handler_run(vc_conn, fn, pars); return vc_conn; } |