aboutsummaryrefslogtreecommitdiffstats
path: root/bsc
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2021-06-30 00:58:43 +0200
committerfixeria <vyanitskiy@sysmocom.de>2021-07-02 13:01:28 +0000
commit4b2330474d8cf8cc14d86047dde8fb735c50b5fa (patch)
treeaae852d08cfa5fda2c86705f029a3c6cc35f8ec4 /bsc
parent8e57ac1a3c309a218b8ce49a803987480f6e3a1a (diff)
BSC: add a test case for BCCH carrier power reduction mode
Diffstat (limited to 'bsc')
-rw-r--r--bsc/BSC_Tests.ttcn27
1 files changed, 27 insertions, 0 deletions
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 5f58a9ea..6b079a68 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -6921,6 +6921,32 @@ testcase TC_assignment_verify_ms_power_params_ie() runs on test_CT {
f_shutdown_helper();
}
+/* Verify activation and deactivation of the BCCH carrier power reduction mode */
+testcase TC_c0_power_red_mode() runs on test_CT {
+ f_init(1);
+
+ for (var integer red := 6; red >= 0; red := red - 2) {
+ /* Configure BCCH carrier power reduction mode via the VTY */
+ f_vty_transceive(BSCVTY, "bts 0 c0-power-reduction " & int2str(red));
+
+ /* Expect Osmocom specific BS Power Control message on the RSL */
+ var template RSL_Message tr_rsl_pdu := tr_RSL_BS_PWR_CTRL(
+ chan_nr := t_RslChanNr_BCCH(0),
+ bs_power := tr_RSL_IE_BS_Power(red / 2));
+ tr_rsl_pdu.msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false);
+ var RSL_Message unused := f_exp_ipa_rx(0, tr_rsl_pdu);
+
+ /* Additionally verify the applied value over the CTRL interface */
+ var CtrlValue cred := f_ctrl_get_bts(IPA_CTRL, 0, "c0-power-reduction");
+ if (cred != int2str(red)) {
+ setverdict(fail, "Unexpected BCCH carrier power reduction value ",
+ cred, " (expected ", red, ")");
+ }
+ }
+
+ f_shutdown_helper();
+}
+
/***********************************************************************
* MSC Pooling
***********************************************************************/
@@ -9341,6 +9367,7 @@ control {
/* Power control related */
execute( TC_assignment_verify_ms_power_params_ie() );
+ execute( TC_c0_power_red_mode() );
/* MSC pooling */
/* FIXME: in SCCPlite, indicating how many MSCs should be connected does currently not work. Since