Fix the BTS_Tests_LAPDm.TC_t200_n200 test
The test failed, because testing retransmit timeout on DCCH would take
longer than guard timer. Instead of changing that timer, I decided to
use ACCH instead. Additional changes were required to make ACCH test
work properly.
https://osmocom.org/issues/5972
Change-Id: I2c328219b1a37d0f4623c5728143cd91976000a0
diff --git a/bts/BTS_Tests_LAPDm.ttcn b/bts/BTS_Tests_LAPDm.ttcn
index edd974b..b4c2c33 100644
--- a/bts/BTS_Tests_LAPDm.ttcn
+++ b/bts/BTS_Tests_LAPDm.ttcn
@@ -1106,7 +1106,7 @@
/* Test if there are exactly N200+1 transmissions of I frames; inspired by 25.2.4.1 */
private function f_TC_t200_n200(charstring id) runs on ConnHdlr {
- var RslLinkId link_id := valueof(ts_RslLinkID_DCCH(0));
+ var RslLinkId link_id := valueof(ts_RslLinkID_SACCH(0));
var integer sapi := link_id.sapi;
var boolean is_sacch := false;
if (link_id.c == SACCH) {
@@ -1120,13 +1120,13 @@
fp_common_init();
/* some common altstep for meas res and other background noise */
- d := activate(as_ignore_background(true));
+ d := activate(as_ignore_background(not is_sacch));
RSL.clear;
LAPDM.clear;
f_establish_mo(link_id);
- var octetstring l3_mt := f_rnd_octstring(20);
+ var octetstring l3_mt := f_rnd_octstring(18);
RSL.send(ts_RSL_DATA_REQ(g_chan_nr, link_id, l3_mt));
/* first transmission, P = 0 */
LAPDM.receive(t_PH_DATA(0, is_sacch, tr_LAPDm_I(sapi, c_r:=cr_MT_CMD, p:=false,
@@ -1147,7 +1147,7 @@
/* break */
}
}
- [] LAPDM.receive(t_PH_DATA(0, false, tr_LAPDm_I(sapi, ?, ?, ?, ?, ?))) {
+ [] LAPDM.receive(t_PH_DATA(0, is_sacch, tr_LAPDm_I(sapi, ?, ?, ?, ?, ?))) {
setverdict(fail, "Received unexpected I frame");
}
[not is_sacch] as_lapdm_acch();