pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/41063?usp=email )
Change subject: mme: Move g_Tguard to MTC_CT ......................................................................
mme: Move g_Tguard to MTC_CT
There's no need to have Tguard per ConnHdlr, one in the MTC_CT is enough and simpler to handle.
Furthermore, it allows to early arm it, in case something fails during f_init().
Change-Id: I8b766ad83030ac5c92fe64b7ea2df35468b23fc0 --- M mme/MME_Tests.ttcn 1 file changed, 11 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/63/41063/1
diff --git a/mme/MME_Tests.ttcn b/mme/MME_Tests.ttcn index 5c26f64..cf464b5 100644 --- a/mme/MME_Tests.ttcn +++ b/mme/MME_Tests.ttcn @@ -99,6 +99,8 @@ }
type component MTC_CT { + timer g_Tguard := 45.0; + /* S1 intreface of emulated ENBs */ var EnbParams g_enb_pars[NUM_ENB]; var S1AP_Emulation_CT vc_S1AP[NUM_ENB]; @@ -156,7 +158,6 @@
type component ConnHdlr extends S1AP_ConnHdlr, SGsAP_ConnHdlr, DIAMETER_ConnHdlr, GTP_ConnHdlr, GTP2_ConnHdlr { var ConnHdlrPars g_pars; - timer g_Tguard := 30.0;
var Gtp1cPeer g_gn_iface_peer := { connId := 1, remName := mp_gn_remote_ip, remPort := mp_gn_remote_port }; } @@ -382,9 +383,14 @@ boolean init_diameter := false, boolean init_gtpv2c_s11 := false, boolean init_gtpv1c_gn := false, - boolean init_sgsap := false) runs on MTC_CT { + boolean init_sgsap := false, + float t_guard := 45.0) runs on MTC_CT { var charstring id := testcasename();
+ /* start guard timer and activate it as default */ + g_Tguard.start(t_guard); + activate(as_Tguard()); + if (init_diameter) { f_init_diameter(id); f_sleep(10.0); @@ -467,19 +473,15 @@ }
/* altstep for the global guard timer */ -private altstep as_Tguard()runs on ConnHdlr { +private altstep as_Tguard()runs on MTC_CT { [] g_Tguard.timeout { - setverdict(fail, "Tguard timeout"); - mtc.stop; + Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Tguard timeout"); } }
-friend function f_init_handler(ConnHdlrPars pars, float t_guard := 30.0) runs on ConnHdlr { +friend function f_init_handler(ConnHdlrPars pars) runs on ConnHdlr { /* make parameters available via component variable */ g_pars := pars; - /* start guard timre and activate it as default */ - g_Tguard.start(t_guard); - activate(as_Tguard()); if (DIAMETER_PROC.checkstate("Connected")) { f_diameter_expect_imsi(g_pars.ue_pars.imsi); }