osmo-ttcn3-hacks/stp/STP_Tests_Common.ttcn

65 lines
1.3 KiB
Plaintext

module STP_Tests_Common {
/* Osmocom STP test suite in in TTCN-3
* (C) 2019 Harald Welte <laforge@gnumonks.org>
* All rights reserved.
*
* Released under the terms of GNU General Public License, Version 2 or
* (at your option) any later version.
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
friend module STP_Tests;
friend module STP_Tests_M3UA;
friend module STP_Tests_IPA;
import from TELNETasp_PortType all;
import from Osmocom_VTY_Functions all;
import from IPL4asp_Types all;
modulepar {
charstring mp_stp_ip := "127.0.0.1";
charstring mp_local_ip := "127.0.0.1";
}
friend template (value) SctpTuple ts_SCTP(template (omit) integer ppid := 3,
template (omit) integer stream := 0) := {
sinfo_stream := stream,
sinfo_ppid := ppid,
remSocks := omit,
assocId := omit
}
type component Test_CT {
port TELNETasp_PT VTY;
timer g_Tguard := 30.0;
var boolean g_test_initialized := false;
}
private altstep as_gTguard() runs on Test_CT {
[] g_Tguard.timeout {
setverdict(fail, "Global guard timer timed out");
mtc.stop;
}
}
friend function f_init_common() runs on Test_CT {
if (g_test_initialized) {
return;
}
g_test_initialized := true;
map(self:VTY, system:VTY);
f_vty_set_prompts(VTY);
f_vty_transceive(VTY, "enable");
activate(as_gTguard());
g_Tguard.start;
}
}