BSC: add a test case for BCCH carrier power reduction mode
Change-Id: I084f7736cd7d09b68ed49f8ba52a14de928d4c01
Depends: I765d5e38cb0746e0458773abf3717ee9bf1cb7d1
Related: SYS#4919
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 5f58a9e..6b079a6 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -6921,6 +6921,32 @@
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 @@
/* 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