diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 9bcf9c600..2d209752b 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -2161,6 +2161,15 @@ testcase TC_egprs_pkt_chan_req_reject_exhaustion() runs on RAW_PCU_Test_CT { f_shutdown(__BFILE__, __LINE__, final := true); } +/* Randomly generate a set of hopping parameters for one timeslot */ +private function f_TC_pcuif_fh_params_gen(integer ma_len) +return template (value) PCUIF_InfoTrxTs { + return ts_PCUIF_InfoTrxTsH1(tsc := f_rnd_int(7), + hsn := f_rnd_int(63), + maio := f_rnd_int(63), + ma := f_rnd_bitstring(ma_len)); +} + private function f_TC_pcuif_fh_check_imm_ass(in PCUIF_info_ind info_ind, in GsmRrMessage rr_msg) { @@ -2210,12 +2219,8 @@ testcase TC_pcuif_fh_imm_ass_ul_egprs() runs on RAW_PCU_Test_CT { var template PCUIF_info_ind info_ind := ts_PCUIF_INFO_default; var GprsMS ms := valueof(t_GprsMS_def); - /* Enable frequency hopping of TRX0/TS7 */ - info_ind.trx.v10[0].ts[7] := ts_PCUIF_InfoTrxTsH1( - tsc := f_rnd_int(7), - hsn := f_rnd_int(63), - maio := f_rnd_int(63), - ma := f_rnd_bitstring(32)); + /* Enable frequency hopping on TRX0/TS7 */ + info_ind.trx.v10[0].ts[7] := f_TC_pcuif_fh_params_gen(32); /* Initialize the PCU interface abstraction */ f_init_raw(testcasename(), info_ind); @@ -2235,12 +2240,8 @@ testcase TC_pcuif_fh_imm_ass_ul() runs on RAW_PCU_Test_CT { var template PCUIF_info_ind info_ind := ts_PCUIF_INFO_default; var GprsMS ms := valueof(t_GprsMS_def); - /* Enable frequency hopping of TRX0/TS7 */ - info_ind.trx.v10[0].ts[7] := ts_PCUIF_InfoTrxTsH1( - tsc := f_rnd_int(7), - hsn := f_rnd_int(63), - maio := f_rnd_int(63), - ma := f_rnd_bitstring(32)); + /* Enable frequency hopping on TRX0/TS7 */ + info_ind.trx.v10[0].ts[7] := f_TC_pcuif_fh_params_gen(32); /* Initialize the PCU interface abstraction */ f_init_raw(testcasename(), info_ind); @@ -2257,12 +2258,8 @@ testcase TC_pcuif_fh_imm_ass_dl() runs on RAW_PCU_Test_CT { var template PCUIF_info_ind info_ind := ts_PCUIF_INFO_default; var GprsMS ms := valueof(t_GprsMS_def); - /* Enable frequency hopping of TRX0/TS7 */ - info_ind.trx.v10[0].ts[7] := ts_PCUIF_InfoTrxTsH1( - tsc := f_rnd_int(7), - hsn := f_rnd_int(63), - maio := f_rnd_int(63), - ma := f_rnd_bitstring(16)); + /* Enable frequency hopping on TRX0/TS7 */ + info_ind.trx.v10[0].ts[7] := f_TC_pcuif_fh_params_gen(16); /* Initialize NS/BSSGP side */ f_init_bssgp(); @@ -2331,12 +2328,8 @@ testcase TC_pcuif_fh_pkt_ass_ul() runs on RAW_PCU_Test_CT { var GprsMS ms := valueof(t_GprsMS_def); var uint32_t poll_fn; - /* Enable frequency hopping of TRX0/TS7 */ - info_ind.trx.v10[0].ts[7] := ts_PCUIF_InfoTrxTsH1( - tsc := f_rnd_int(7), - hsn := f_rnd_int(63), - maio := f_rnd_int(63), - ma := f_rnd_bitstring(33)); + /* Enable frequency hopping on TRX0/TS7 */ + info_ind.trx.v10[0].ts[7] := f_TC_pcuif_fh_params_gen(33); /* Initialize the PCU interface abstraction */ f_init_raw(testcasename(), info_ind); @@ -2377,12 +2370,8 @@ testcase TC_pcuif_fh_pkt_ass_dl() runs on RAW_PCU_Test_CT { var RlcmacDlBlock dl_block; var uint32_t poll_fn; - /* Enable frequency hopping of TRX0/TS7 */ - info_ind.trx.v10[0].ts[7] := ts_PCUIF_InfoTrxTsH1( - tsc := f_rnd_int(7), - hsn := f_rnd_int(63), - maio := f_rnd_int(63), - ma := f_rnd_bitstring(33)); + /* Enable frequency hopping on TRX0/TS7 */ + info_ind.trx.v10[0].ts[7] := f_TC_pcuif_fh_params_gen(33); /* Initialize NS/BSSGP side */ f_init_bssgp();