fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/41933?usp=email )
Change subject: library: make ts_MEAS_REP accept MeasurementResults ......................................................................
library: make ts_MEAS_REP accept MeasurementResults
This reduces code duplication and makes ts_MEAS_REP easier to use.
Change-Id: I12113360f52b0ce09aa9bc11472fdd04bf14f368 --- M bsc/BSC_Tests.ttcn M bts/BTS_Tests.ttcn M library/GSM_RR_Types.ttcn 3 files changed, 9 insertions(+), 31 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/33/41933/1
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index db70bd5..02cb67d 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -6114,9 +6114,9 @@ var NcellReports neighbor_rep := { { rxlev := 20, bcch_freq := 0, bsic := 11 } }; - var octetstring l3_mr := enc_GsmRrL3Message(valueof(ts_MEAS_REP(true, 8, 8, reps := neighbor_rep))); + var GsmRrL3Message meas_rep := valueof(ts_MEAS_REP(ts_MeasurementResults(8, 8, reps := neighbor_rep))); RSL.send(ts_RSL_MEAS_RES(g_chan_nr, 0, ts_RSL_IE_UplinkMeas, ts_RSL_IE_BS_Power(0), ts_RSL_IE_L1Info, - l3_mr, 0)); + enc_GsmRrL3Message(meas_rep), 0));
RAN_CONN.receive(tr_BSSMAP_HandoverRequired(exp_oldToNewBSSIEs)); } @@ -12526,9 +12526,9 @@ { rxlev := 40, bcch_freq := 2, bsic := 14 }, /* ARFCN 1000, band 900, LAC 99 */ { rxlev := 0, bcch_freq := 3, bsic := 11 } /* ARFCN 0, band 900, LAC 96 */ }; - var octetstring l3_mr := enc_GsmRrL3Message(valueof(ts_MEAS_REP(true, 8, 8, reps := neighbor_rep))); + var GsmRrL3Message meas_rep := valueof(ts_MEAS_REP(ts_MeasurementResults(8, 8, reps := neighbor_rep))); RSL.send(ts_RSL_MEAS_RES(g_chan_nr, 0, ts_RSL_IE_UplinkMeas, ts_RSL_IE_BS_Power(0), ts_RSL_IE_L1Info, - l3_mr, 0)); + enc_GsmRrL3Message(meas_rep), 0));
/* Expect a handover to the third entry. If the BSC parsed the report * correctly, the third entry has LAC 99. */ diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn index 6277cf3..df0c0c6 100644 --- a/bts/BTS_Tests.ttcn +++ b/bts/BTS_Tests.ttcn @@ -820,10 +820,7 @@ var octetstring l2;
/* RR Measurement Report to be sent */ - var GsmRrL3Message meas_rep := { - header := valueof(t_RrL3Header(MEASUREMENT_REPORT)), - payload := { meas_rep := { meas_res := valueof(meas_res) } } - }; + var GsmRrL3Message meas_rep := valueof(ts_MEAS_REP(meas_res));
/* TITAN has weird (and often unusable) padding model, so we pad here manaully */ l2 := f_pad_oct(enc_LapdmFrameAB(valueof(ts_LAPDm_AB(0, meas_rep))), 21, '00'O); @@ -842,10 +839,7 @@ timer T;
/* RR Measurement Report to be sent */ - var GsmRrL3Message meas_rep := { - header := valueof(t_RrL3Header(MEASUREMENT_REPORT)), - payload := { meas_rep := { meas_res := valueof(meas_res) } } - }; + var GsmRrL3Message meas_rep := valueof(ts_MEAS_REP(meas_res));
/* TITAN has weird (and often unusable) padding model, so we pad here manaully */ l3 := f_pad_oct(enc_GsmRrL3Message(meas_rep), 18, '00'O); diff --git a/library/GSM_RR_Types.ttcn b/library/GSM_RR_Types.ttcn index 464d060..963ad0c 100644 --- a/library/GSM_RR_Types.ttcn +++ b/library/GSM_RR_Types.ttcn @@ -895,28 +895,12 @@ ncell_reports := reps };
- template (value) GsmRrL3Message ts_MEAS_REP(boolean valid, - template (value) uint6_t rxl_f, - template (value) uint6_t rxl_s, - template (value) uint3_t rxq_f := 0, - template (value) uint3_t rxq_s := 0, - template (omit) NcellReports reps := omit) := { + template (value) GsmRrL3Message + ts_MEAS_REP(template (value) MeasurementResults meas_res := ts_MeasurementResults) := { header := t_RrL3Header(MEASUREMENT_REPORT), payload := { meas_rep := { - meas_res := { - ba_used := '0'B, - dtx_used := '0'B, - rxlev_full_srv_cell := rxl_f, - threeg_ba_used := '0'B, - meas_valid := bool2bit(not valid), - rxlev_sub_srv_cell := rxl_s, - si23_ba_used := '0'B, - rxqual_full_srv_cell := rxq_f, - rxqual_sub_srv_cell := rxq_s, - no_ncell_m := 0, - ncell_reports := reps - } + meas_res := meas_res } } };