summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2018-03-09 15:39:31 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2018-03-11 03:45:26 +0100
commit032f5837022dc740fefb4b119c672a93b74ddb37 (patch)
treec92e226b34abc482e8b1a9c02158d61557174188
parent328d166dbbbe5b64668c3e05b45905f48000d5b9 (diff)
bsc: add test for OS#3041
-rw-r--r--bsc/BSC_Tests.ttcn29
1 files changed, 29 insertions, 0 deletions
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index dc266ab..f47d1f7 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -233,6 +233,12 @@ altstep as_Tguard() runs on test_CT {
}
}
+altstep no_bssmap_reset() runs on test_CT {
+ [] BSSAP.receive(tr_BSSAP_UNITDATA_ind(?, ?, tr_BSSMAP_Reset)) {
+ setverdict(fail, "unexpected BSSMAP Reset");
+ }
+}
+
function f_init_mgcp(charstring id) runs on test_CT {
id := id & "-MGCP";
@@ -1694,6 +1700,27 @@ testcase TC_ho_int() runs on test_CT {
vc_conn.done;
}
+/* OS#3041: Page N times so that BSSMAP Clear events take place, and expect no
+ * BSSMAP Reset just because of that. */
+testcase TC_bssmap_clear_does_not_cause_bssmap_reset() runs on test_CT {
+ var default d;
+ var integer i;
+ var DchanTuple dt;
+
+ f_init();
+
+ d := activate(no_bssmap_reset());
+
+ for (i := 0; i < 10; i := i+1) {
+ /* Setup a connection and clear it. */
+ dt := f_est_dchan('23'O, 23, '00010203040506'O);
+ BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0));
+ }
+
+ deactivate(d);
+ f_shutdown_helper();
+}
+
control {
/* CTRL interface testing */
@@ -1768,6 +1795,8 @@ control {
execute( TC_err_82_short_msg() );
execute( TC_err_84_unknown_msg() );
execute( TC_ho_int() );
+
+ execute( TC_bssmap_clear_does_not_cause_bssmap_reset() );
}
}