diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index ad93b5c97..6e858d53c 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -5132,6 +5132,19 @@ runs on RAW_PCU_Test_CT return RlcmacDlBlock { return dl_block; } +private const GsmMcc c_BssgpCellMcc := '023'H; +private const GsmMnc c_BssgpCellMnc := '43'H; +private template (value) BssgpCellId ts_BssgpCellIdDstAddr_default := { + ra_id := { + lai := { + mcc_mnc := f_build_BcdMccMnc(c_BssgpCellMcc, c_BssgpCellMnc), + lac := 423 + }, + rac := 2 + }, + cell_id := 5 +} + private function f_outbound_nacc_rim_tx_resp(PCUIF_info_ind info_ind) runs on RAW_PCU_Test_CT { /* Source Cell Identifier IE is generated by osmo-pcu based on the INFO.ind */ @@ -5139,7 +5152,7 @@ runs on RAW_PCU_Test_CT { var BssgpCellId src := valueof(ts_BssgpCellId(ts_RAI(ts_LAI(src_mcc_mnc, info_ind.lac), info_ind.rac), info_ind.cell_id)); /* Destination Cell Identifier IE is resolved by the testsuite itself (emulating BSC) */ - var BssgpCellId dst := valueof(ts_BssgpCellId(ts_RAI(ts_LAI(f_build_BcdMccMnc('023'H, '43'H), 423), 2), 5)); + var BssgpCellId dst := valueof(ts_BssgpCellIdDstAddr_default); var RIM_Routing_Address src_addr := valueof(t_RIM_Routing_Address_cid(src)); var RIM_Routing_Address dst_addr := valueof(t_RIM_Routing_Address_cid(dst)); var template (value) RAN_Information_RIM_Container res_cont := @@ -5161,7 +5174,7 @@ runs on RAW_PCU_Test_CT { var BssgpCellId src := valueof(ts_BssgpCellId(ts_RAI(ts_LAI(src_mcc_mnc, info_ind.lac), info_ind.rac), info_ind.cell_id)); /* Destination Cell Identifier IE is resolved by the testsuite itself (emulating BSC) */ - var BssgpCellId dst := valueof(ts_BssgpCellId(ts_RAI(ts_LAI(f_build_BcdMccMnc('023'H, '43'H), 423), 2), 5)); + var BssgpCellId dst := valueof(ts_BssgpCellIdDstAddr_default); var RIM_Routing_Address src_addr := valueof(t_RIM_Routing_Address_cid(src)); var RIM_Routing_Address dst_addr := valueof(t_RIM_Routing_Address_cid(dst)); [] RIM.receive(tr_RAN_INFORMATION_REQUEST(tr_RIM_Routing_Information(RIM_ADDR_GERAN_CELL_ID, dst_addr), @@ -5187,7 +5200,12 @@ runs on RAW_PCU_Test_CT { int2str(req_arfcn) & "." & int2str(req_bsic); if (answer) { - f_ctrl_exp_get(IPA_CTRL, ctrl_var, "023-43-423-2-5"); + var BssgpCellId addr := valueof(ts_BssgpCellIdDstAddr_default); + f_ctrl_exp_get(IPA_CTRL, ctrl_var, hex2str(c_BssgpCellMcc) & "-" & + hex2str(c_BssgpCellMnc) & "-" & + int2str(addr.ra_id.lai.lac) & "-" & + int2str(addr.ra_id.rac) & "-" & + int2str(addr.cell_id)); } else { f_ctrl_exp_get(IPA_CTRL, ctrl_var, omit); } @@ -5195,7 +5213,14 @@ runs on RAW_PCU_Test_CT { var PCUIF_Message pcu_msg; BTS.receive(tr_PCUIF_NEIGH_ADDR_REQ(0, info_ind.lac, info_ind.cell_id, req_arfcn, req_bsic)) -> value pcu_msg; if (answer) { - BTS.send(ts_PCUIF_NEIGH_ADDR_CNF(0, pcu_msg.u.container.u.neigh_addr_req, 0, 23, 43, 0, 423, 2, 5)); + var BssgpCellId addr := valueof(ts_BssgpCellIdDstAddr_default); + BTS.send(ts_PCUIF_NEIGH_ADDR_CNF(0, pcu_msg.u.container.u.neigh_addr_req, 0, + str2int(hex2str(c_BssgpCellMcc)), + str2int(hex2str(c_BssgpCellMnc)), + lengthof(c_BssgpCellMnc) - 2, + addr.ra_id.lai.lac, + addr.ra_id.rac, + addr.cell_id)); } } }