summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2021-02-01 17:36:05 +0100
committerPhilipp Maier <pmaier@sysmocom.de>2021-02-01 17:36:05 +0100
commitf1dc8af21459dffd1125693deae6a5c3125a5e38 (patch)
treed921d3ac4fddefb1d0c408d37f1e153c19e3472d
parent8b4121704bd0118ef6711473599a49c5ac70430e (diff)
BTS_Tests: test forwarding of SI1, SI3 and SI13 via PCUIFpmaier/rim3
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.default2
-rw-r--r--bts/BTS_Tests.ttcn29
2 files changed, 25 insertions, 6 deletions
diff --git a/bts/BTS_Tests.default b/bts/BTS_Tests.default
index 0657b65..7c5230b 100644
--- a/bts/BTS_Tests.default
+++ b/bts/BTS_Tests.default
@@ -29,7 +29,7 @@ mtc.FileMask := LOG_ALL | TTCN_DEBUG | TTCN_MATCHING | DEBUG_ENCDEC;
[MODULE_PARAMETERS]
Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoBTS";
-PCUIF_Types.mp_pcuif_version := 10;
+PCUIF_Types.mp_pcuif_version := 11;
# Configuration for each individual transceiver
BTS_Tests.mp_trx_pars := {
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() );