bsc: SI2quater EARFCNs: span entire value range of EARFCNs

Change-Id: I992771826d57669d06887c776303f85ef22f6c71
This commit is contained in:
Neels Hofmeyr 2020-07-09 00:50:49 +02:00 committed by neels
parent ad132f286e
commit 56f2478e9c
1 changed files with 31 additions and 9 deletions

View File

@ -1711,19 +1711,44 @@ testcase TC_si_default() runs on test_CT {
f_init_bts_and_check_sysinfo(0, expect_si := SystemInformationConfig_default);
}
/* We're testing SI2quater with lists of EARFCNs. Instead of just incrementing EARFCNs, also pick some from the edges of
* the entire value range. This function provides the same EARFCN numbers for the same earfcn_index */
private function f_test_si2quater_earfcn_by_idx(integer earfcn_index) return uint16_t
{
select (earfcn_index) {
case (0) {
/* E-ARFCN 111 is already added in the osmo-bsc.cfg */
return 111;
}
case (1) {
return 1;
}
case (2) {
return 0;
}
case (3) {
return 65535;
}
case else {
return 23 * (earfcn_index - 3);
}
}
}
function f_test_si2quater(integer total_earfcns, template SystemInformationConfig expect_si) runs on test_CT {
f_init(0);
/* E-ARFCN 111 is already added in the osmo-bsc.cfg, so only add more arfcns if total_earfcns > 1 */
for (var integer i := 1; i < total_earfcns; i := i + 1) {
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list add earfcn " & int2str(22 + i) & " thresh-hi 20 thresh-lo 10 prio 3 qrxlv 22 meas 3"});
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list add earfcn " & int2str(f_test_si2quater_earfcn_by_idx(i))
& " thresh-hi 20 thresh-lo 10 prio 3 qrxlv 22 meas 3"});
}
f_init_bts_and_check_sysinfo(0, expect_si := expect_si);
for (var integer i := 1; i < total_earfcns; i := i + 1) {
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list del earfcn " & int2str(22 + i)});
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list del earfcn " & int2str(f_test_si2quater_earfcn_by_idx(i))});
}
}
@ -1733,11 +1758,7 @@ private function f_tr_si2quater_earfcns(integer count) return template SI2quater
var integer si2quater_count := (count + 2) / 3;
for (var integer i := 0; i < count; i := i + 1) {
var integer earfcn := 22 + i;
/* First earfcn is 111 from osmo-bsc.cfg */
if (i == 0) {
earfcn := 111;
}
var integer earfcn := f_test_si2quater_earfcn_by_idx(i);
var integer index := i / 3;
var integer earfcn_index := i mod 3;
if (index >= lengthof(si2quater)) {
@ -1808,7 +1829,8 @@ testcase TC_si2quater_49_earfcns() runs on test_CT {
f_init(0);
for (var integer i := 1; i < 48; i := i + 1) {
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list add earfcn " & int2str(22 + i) & " thresh-hi 20 thresh-lo 10 prio 3 qrxlv 22 meas 3"});
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list add earfcn " & int2str(f_test_si2quater_earfcn_by_idx(i))
& " thresh-hi 20 thresh-lo 10 prio 3 qrxlv 22 meas 3"});
}
/* The 49th EARFCN no longer fits, expect VTY error */
@ -1828,7 +1850,7 @@ testcase TC_si2quater_49_earfcns() runs on test_CT {
f_init_bts_and_check_sysinfo(0, expect_si := sic);
for (var integer i := 1; i < 48; i := i + 1) {
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list del earfcn " & int2str(22 + i)});
f_bts_0_cfg(BSCVTY, {"si2quater neighbor-list del earfcn " & int2str(f_test_si2quater_earfcn_by_idx(i))});
}
}