diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn index 005b1d7b5..58947c5c7 100644 --- a/bts/BTS_Tests.ttcn +++ b/bts/BTS_Tests.ttcn @@ -472,7 +472,7 @@ private function f_init_trxc(TRXC_CODEC_PT pt, charstring id, trxc_conn_id := res.connId; } -/* global init function */ +/* global init function (without PCUIF connection) */ friend function f_init(uint8_t trx_nr := 0) runs on test_CT { @@ -555,9 +555,6 @@ runs on test_CT f_rsl_bcch_fill(RSL_SYSTEM_INFO_2, ts_SI2_default); f_rsl_bcch_fill(RSL_SYSTEM_INFO_4, ts_SI4_default); - map(self:PCU, system:PCU); - f_init_pcu(PCU, id, g_pcu_conn_id, g_pcu_last_info); - if (mp_bts_trxc_port != -1) { var TrxcMessage ret; @@ -4283,7 +4280,9 @@ testcase TC_si_sched_2quater() runs on test_CT { } testcase TC_si_sched_13() runs on test_CT { - f_init(); + /* NOTE: PCUIF connection is not used in this test case, but + * without it the IUT would not broadcast SI13 (see OS#3075). */ + f_init_with_pcuif(); si_cfg.si13_present := true; f_rsl_bcch_fill_raw(RSL_SYSTEM_INFO_13, '0106009000185a6fc9e08410ab2b2b2b2b2b2b2b2b2b2b'O); f_TC_si_sched(); @@ -4291,7 +4290,9 @@ testcase TC_si_sched_13() runs on test_CT { } testcase TC_si_sched_13_2bis_2ter_2quater() runs on test_CT { - f_init(); + /* NOTE: PCUIF connection is not used in this test case, but + * without it the IUT would not broadcast SI13 (see OS#3075). */ + f_init_with_pcuif(); si_cfg.si2bis_present := true; f_rsl_bcch_fill_raw(RSL_SYSTEM_INFO_2bis, '550602bfe809b3ff00000000000000000000007900002b'O); si_cfg.si2ter_present := true; @@ -4626,6 +4627,8 @@ runs on test_CT { friend function f_init_with_pcuif() runs on test_CT { f_init(); + map(self:PCU, system:PCU); + f_init_pcu(PCU, testcasename(), g_pcu_conn_id, g_pcu_last_info); PCU.send(t_SD_PCUIF(g_pcu_conn_id, ts_PCUIF_TXT_IND(0, PCU_VERSION, testcasename()))); } @@ -5453,7 +5456,7 @@ testcase TC_pcu_rr_suspend() runs on test_CT { var ConnHdlrPars pars; var ConnHdlr vc_conn; - f_init(); + f_init_with_pcuif(); pars := valueof(t_Pars(t_RslChanNr_SDCCH4(0,3), ts_RSL_ChanMode_SIGN)); vc_conn := f_start_handler(refers(f_TC_rr_suspend_req), pars, true); @@ -5465,7 +5468,7 @@ testcase TC_pcu_socket_connect_multi() runs on test_CT { timer T := 5.0; /* this (among other things) establishes the first connection to the PCUIF socket */ - f_init(); + f_init_with_pcuif(); /* try to establish a second connection, expect it to fail */ PCU.send(UD_connect:{mp_pcu_socket, -1}); @@ -5487,7 +5490,7 @@ testcase TC_pcu_socket_connect_multi() runs on test_CT { /* Ensure that PCUIF socket can disconnect + reconnect */ testcase TC_pcu_socket_reconnect() runs on test_CT { /* this (among other things) establishes the first connection to the PCUIF socket */ - f_init(); + f_init_with_pcuif(); f_sleep(1.0); @@ -5548,13 +5551,7 @@ runs on test_CT return boolean { /* Make sure that GPRS Indicator is absent when the PCU is not connected */ private function f_TC_pcu_socket_noconnect(RrMessageType si_type) runs on test_CT { - /* don't call f_init() as this would connect PCU socket */ - f_init_rsl(testcasename()); - - /* Send both System Information Type 3 and 4 (with GPRS Indicator) */ - f_rsl_bcch_fill(RSL_SYSTEM_INFO_3, ts_SI3_default); - f_rsl_bcch_fill(RSL_SYSTEM_INFO_4, ts_SI4_default); - + f_init(); f_init_l1ctl(); f_l1_tune(L1CTL); f_sleep(2.0); @@ -5581,7 +5578,7 @@ testcase TC_pcu_socket_noconnect_nosi4gprs() runs on test_CT { private function f_TC_pcu_socket_connect(RrMessageType si_type) runs on test_CT { /* this (among other things) establishes the first connection to the PCUIF socket */ - f_init(); + f_init_with_pcuif(); f_init_l1ctl(); f_l1_tune(L1CTL); @@ -5609,7 +5606,7 @@ testcase TC_pcu_socket_connect_si4gprs() runs on test_CT { private function f_TC_pcu_socket_disconnect(RrMessageType si_type) runs on test_CT { /* this (among other things) establishes the first connection to the PCUIF socket */ - f_init(); + f_init_with_pcuif(); f_init_l1ctl(); f_l1_tune(L1CTL); @@ -5646,7 +5643,7 @@ testcase TC_pcu_socket_disconnect_nosi4gprs() runs on test_CT { testcase TC_pcu_socket_verify_info_ind() runs on test_CT { var SystemInformation si3 := valueof(ts_SI3_default); - f_init(); + f_init_with_pcuif(); /* actually give the BTS some time to fully come up and to send a PCU INFO IND with the correct * information */ @@ -5681,7 +5678,7 @@ testcase TC_pcu_info_ind_fh_params() runs on test_CT { var PCUIF_info_ind info_ind; var FreqHopPars fhp; - f_init(); + f_init_with_pcuif(); info_ind := g_pcu_last_info.u.info_ind; @@ -5726,7 +5723,7 @@ testcase TC_pcu_socket_nsvc_ipv4() runs on test_CT { f_vty_config2(BSCVTY, {"network", "bts 0"} , "gprs nsvc 0 remote ip 127.127.127.127"); f_vty_transceive(BSCVTY, "drop bts connection 0 oml"); - f_init(); + f_init_with_pcuif(); var PCUIF_RemoteAddr remote_addr := g_pcu_last_info.u.info_ind.remote_addr; var template PCUIF_RemoteAddr tr_remote_addr := { @@ -5746,7 +5743,7 @@ testcase TC_pcu_socket_nsvc_ipv6() runs on test_CT { f_init_vty_bsc(); f_vty_config2(BSCVTY, {"network", "bts 0"} , "gprs nsvc 0 remote ip fd00::ca:ff:ee"); - f_init(); + f_init_with_pcuif(); var PCUIF_RemoteAddr remote_addr := g_pcu_last_info.u.info_ind.remote_addr; var template PCUIF_RemoteAddr tr_remote_addr := { diff --git a/bts/BTS_Tests_SMSCB.ttcn b/bts/BTS_Tests_SMSCB.ttcn index 102e2ac03..dda78fd36 100644 --- a/bts/BTS_Tests_SMSCB.ttcn +++ b/bts/BTS_Tests_SMSCB.ttcn @@ -1051,7 +1051,7 @@ testcase TC_etws_p1ro_end() runs on test_CT { testcase TC_etws_pcu() runs on test_CT { timer T := 10.0; - f_init(); + f_init_with_pcuif(); f_init_l1ctl(); f_l1_tune(L1CTL, ccch_mode := CCCH_MODE_COMBINED_CBCH);