Change in osmo-ttcn3-hacks[master]: bsc: Introduce test TC_chan_rel_sccp_tiar_timeout

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

laforge gerrit-no-reply at lists.osmocom.org
Sun Jan 12 13:11:40 UTC 2020


laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16798 )

Change subject: bsc: Introduce test TC_chan_rel_sccp_tiar_timeout
......................................................................

bsc: Introduce test TC_chan_rel_sccp_tiar_timeout

Verify SCCP T(iar) timeout triggers release of established channel.

Change-Id: Ic2724f62689b99c33e2e5c3a0c2fd022178a788c
---
M bsc/BSC_Tests.ttcn
M bsc/expected-results.xml
M library/Osmocom_VTY_Functions.ttcn
3 files changed, 41 insertions(+), 0 deletions(-)

Approvals:
  laforge: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 9c8d68d..d020d95 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -97,6 +97,11 @@
 	/* Osmux is enabled through VTY */
 	var boolean g_osmux_enabled := false;
 
+	/*Configure T(tias) over VTY, seconds */
+	var integer g_bsc_sccp_timer_ias :=  7 * 60;
+	/*Configure T(tiar) over VTY, seconds */
+	var integer g_bsc_sccp_timer_iar := 15 * 60;
+
 	/* global test case guard timer */
 	timer T_guard := 30.0;
 
@@ -332,6 +337,8 @@
 	map(self:BSCVTY, system:BSCVTY);
 	f_vty_set_prompts(BSCVTY);
 	f_vty_transceive(BSCVTY, "enable");
+	f_cs7_inst_0_cfg(BSCVTY, {"sccp-timer ias " & int2str(g_bsc_sccp_timer_ias),
+			  "sccp-timer iar " & int2str(g_bsc_sccp_timer_iar)});
 }
 
 /* global initialization function
@@ -1064,6 +1071,23 @@
 	setverdict(pass);
 }
 
+/* Verify T(iar) triggers and releases the channel */
+testcase TC_chan_rel_sccp_tiar_timeout() runs on test_CT {
+	var DchanTuple dt;
+
+	/* Set T(iar) in BSC low enough that it will trigger before other side
+	   has time to keep alive with a T(ias). Keep recommended ratio of
+	   T(iar) >= T(ias)*2 */
+	g_bsc_sccp_timer_ias := 2;
+	g_bsc_sccp_timer_iar := 5;
+
+	f_init(1);
+
+	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	f_expect_chan_rel(0, dt.rsl_chan_nr, expect_rll_rel_req := false);
+	setverdict(pass);
+}
+
 /* Test behavior if RSL EST IND for non-active channel */
 testcase TC_rll_est_ind_inact_lchan() runs on test_CT {
 	timer T := 2.0;
@@ -3632,6 +3656,15 @@
 	f_vty_transceive(BSCVTY, "end");
 }
 
+private function f_cs7_inst_0_cfg(TELNETasp_PT pt, Commands cmds := {})
+{
+	f_vty_enter_cfg_cs7_inst(pt, 0);
+	for (var integer i := 0; i < sizeof(cmds); i := i+1) {
+		f_vty_transceive(pt, cmds[i]);
+	}
+	f_vty_transceive(pt, "end");
+}
+
 private function f_probe_for_handover(charstring log_label,
 				      charstring log_descr,
 				      charstring handover_vty_cmd,
@@ -4419,6 +4452,7 @@
 	execute( TC_chan_rel_hard_rlsd() );
 	execute( TC_chan_rel_hard_rlsd_ms_dead() );
 	execute( TC_chan_rel_a_reset() );
+	execute( TC_chan_rel_sccp_tiar_timeout() );
 
 	execute( TC_outbound_connect() );
 
diff --git a/bsc/expected-results.xml b/bsc/expected-results.xml
index eb932ef..e266660 100644
--- a/bsc/expected-results.xml
+++ b/bsc/expected-results.xml
@@ -19,6 +19,7 @@
   <testcase classname='BSC_Tests' name='TC_chan_rel_hard_rlsd' time='MASKED'/>
   <testcase classname='BSC_Tests' name='TC_chan_rel_hard_rlsd_ms_dead' time='MASKED'/>
   <testcase classname='BSC_Tests' name='TC_chan_rel_a_reset' time='MASKED'/>
+  <testcase classname='BSC_Tests' name='TC_chan_rel_sccp_tiar_timeout' time='MASKED'/>
   <testcase classname='BSC_Tests' name='TC_outbound_connect' time='MASKED'/>
   <testcase classname='BSC_Tests' name='TC_assignment_cic_only' time='MASKED'/>
   <testcase classname='BSC_Tests' name='TC_assignment_csd' time='MASKED'/>
diff --git a/library/Osmocom_VTY_Functions.ttcn b/library/Osmocom_VTY_Functions.ttcn
index a1724e9..823d79f 100644
--- a/library/Osmocom_VTY_Functions.ttcn
+++ b/library/Osmocom_VTY_Functions.ttcn
@@ -102,6 +102,7 @@
 	type integer BtsTrxNr (0..255);
 	type integer BtsTimeslotNr (0..7);
 	type integer MscNr (0..255);
+	type integer Cs7Nr (0..255);
 
 	type charstring BtsGprsMode ("none", "gprs", "egrps");
 
@@ -135,6 +136,11 @@
 		f_vty_transceive(pt, "msc " & int2str(msc));
 	}
 
+	function f_vty_enter_cfg_cs7_inst(TELNETasp_PT pt, Cs7Nr cs7_inst := 0) {
+		f_vty_enter_config(pt);
+		f_vty_transceive(pt, "cs7 instance " & int2str(cs7_inst));
+	}
+
 type record of charstring rof_charstring;
 function f_vty_config2(TELNETasp_PT pt, rof_charstring config_nodes, charstring cmd)
 {

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16798
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ic2724f62689b99c33e2e5c3a0c2fd022178a788c
Gerrit-Change-Number: 16798
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200112/88594f63/attachment.htm>


More information about the gerrit-log mailing list