summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2021-01-29 21:17:26 +0100
committerPhilipp Maier <pmaier@sysmocom.de>2021-01-29 22:32:35 +0100
commit16da62971b0991d2e9c588cb13370b8b642f642c (patch)
tree6efc0db0462e8adbaea136319d071817fc859ca7
parentff03479eb8bcc16666e2ccc1022df5a3b4158200 (diff)
BTS_Tests: test forwarding of SI1, SI3 and SI13 via PCUIFpmaier/rim2
Whenever the BSC is updating SI1, SI3 or SI13 via RSL, the PCU should be informed about the change via PCUIF as well. For SI13 this is already the case and a testcase exists. The version 11 of the PCUIF protocol is now capable to update SI1 and SI3 as well. - Update BTS_Tests.TC_pcu_ver_si13 so that it works with the current protocol version - Add BTS_Tests.TC_pcu_ver_si3 and BTS_Tests.TC_pcu_ver_si1 that test SI1 and SI3 as well. Depends: osmo-bts Ib7aeb41e634ad6fcab3766a4667b0267c749436a Change-Id: I5138ab183793e7eee4dc494318d984e9f1f56932 Related: SYS#5103
-rw-r--r--bts/BTS_Tests.ttcn29
1 files changed, 24 insertions, 5 deletions
diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index c843032..68a3142 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -4676,19 +4676,18 @@ testcase TC_pcu_deact_req_wrong_ts() runs on test_CT {
}
/* Test the PCU->BTS Version and BTS->PCU SI13 handshake */
-testcase TC_pcu_ver_si13() runs on test_CT {
- const octetstring si13 := '00010203040506070909'O;
+function f_TC_pcu_ver_siXX(octetstring si, RSL_IE_SysinfoType rsl_si_type, octetstring osmo_si_type) runs on test_CT {
var PCUIF_send_data sd;
timer T:= 3.0;
f_init_pcu_test();
/* Set SI13 via RSL */
- f_rsl_bcch_fill_raw(RSL_SYSTEM_INFO_13, si13);
+ f_rsl_bcch_fill_raw(rsl_si_type, si);
T.start;
alt {
[] PCU.receive(t_SD_PCUIF(g_pcu_conn_id, tr_PCUIF_DATA_IND(0, 0, 0, ?, PCU_IF_SAPI_BCCH))) -> value sd {
- if (substr(sd.data.u.data_ind.data, 0, lengthof(si13)) == si13) {
+ if (substr(sd.data.u.data_ind.data, 0, lengthof(si) + 1) == osmo_si_type & si) {
setverdict(pass);
} else {
repeat;
@@ -4696,11 +4695,29 @@ testcase TC_pcu_ver_si13() runs on test_CT {
}
[] PCU.receive { repeat; }
[] T.timeout {
- Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Timeout waiting for SI13");
+ Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Timeout waiting for SI");
}
}
}
+/* Test the PCU->BTS Version and BTS->PCU SI1 handshake */
+testcase TC_pcu_ver_si1() runs on test_CT {
+ const octetstring si1 := '010111132A252B27CC29AA11BB33CC'O;
+ f_TC_pcu_ver_siXX(si1, RSL_SYSTEM_INFO_1, '01'O);
+}
+
+/* Test the PCU->BTS Version and BTS->PCU SI3 handshake */
+testcase TC_pcu_ver_si3() runs on test_CT {
+ const octetstring si3 := '00012223242526272929AABBCC'O;
+ f_TC_pcu_ver_siXX(si3, RSL_SYSTEM_INFO_3, '03'O);
+}
+
+/* Test the PCU->BTS Version and BTS->PCU SI13 handshake */
+testcase TC_pcu_ver_si13() runs on test_CT {
+ const octetstring si13 := '00010203040506070909'O;
+ f_TC_pcu_ver_siXX(si13, RSL_SYSTEM_INFO_13, '0b'O);
+}
+
private const octetstring c_PCU_DATA := '000102030405060708090a0b0c0d0e0f10111213141516'O;
/* helper function to send a PCU DATA.req */
@@ -7305,6 +7322,8 @@ control {
execute( TC_pcu_act_req_wrong_trx() );
execute( TC_pcu_deact_req() );
execute( TC_pcu_deact_req_wrong_ts() );
+ execute( TC_pcu_ver_si1() );
+ execute( TC_pcu_ver_si3() );
execute( TC_pcu_ver_si13() );
if (mp_l1_supports_gprs) {
execute( TC_pcu_data_req_pdtch() );