fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/27522 )
Change subject: BSC_Tests: add '(present)' restriction to 'expect_rr_cause' ......................................................................
BSC_Tests: add '(present)' restriction to 'expect_rr_cause'
RR Cause is a mandatory IE, so it cannot be omitted. Therefore it makes no sense to check if istemplatekind(expect_rr_cause, "omit").
Change-Id: I564d00a4715b86d248bce449d2b9193ac5e99008 --- M bsc/BSC_Tests.ttcn 1 file changed, 22 insertions(+), 25 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/22/27522/1
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 758b989..b5552e1 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -2034,7 +2034,7 @@ boolean expect_rll_rel_req := true, boolean handle_rll_rel := true, template CellSelIndValue expect_cells := omit, - template RR_Cause expect_rr_cause := ? + template (present) RR_Cause expect_rr_cause := ? ) runs on test_CT {
var RslLinkId main_dcch := valueof(ts_RslLinkID_DCCH(0)); @@ -2074,36 +2074,32 @@ } }
- if (not istemplatekind(expect_rr_cause, "omit")) { - int2enum(oct2int(l3.msgs.rrm.channelRelease.rRCause.valuePart), got_cause); - log("GOT CAUSE CODE: ", l3.msgs.rrm.channelRelease.rRCause.valuePart, " = ", got_cause); - if (match(got_cause, expect_rr_cause)) { - setverdict(pass); - } else { - log("EXPECTED CAUSE CODE: ", expect_rr_cause); - setverdict(fail, "Received RR Channel Release Cause code does not match expectations"); - } + int2enum(oct2int(l3.msgs.rrm.channelRelease.rRCause.valuePart), got_cause); + log("GOT CAUSE CODE: ", l3.msgs.rrm.channelRelease.rRCause.valuePart, " = ", got_cause); + if (match(got_cause, expect_rr_cause)) { + setverdict(pass); + } else { + log("EXPECTED CAUSE CODE: ", expect_rr_cause); + setverdict(fail, "Received RR Channel Release Cause code does not match expectations"); } repeat; } [istemplatekind(expect_cells, "omit")] IPA_RSL[bts_nr].receive(tr_ASP_RSL_UD(tr_RSL_DATA_REQ(rsl_chan_nr, ?, decmatch tr_RRM_RR_RELEASE))) -> value ud { got_rr_chan_rel := true;
- if (not istemplatekind(expect_rr_cause, "omit")) { - if (f_rsl_find_ie(ud.rsl, RSL_IE_L3_INFO, l3_ie) == false) { - setverdict(fail, "cannot find L3"); - mtc.stop; - } - l3 := dec_PDU_ML3_NW_MS(l3_ie.l3_info.payload); + if (f_rsl_find_ie(ud.rsl, RSL_IE_L3_INFO, l3_ie) == false) { + setverdict(fail, "cannot find L3"); + mtc.stop; + } + l3 := dec_PDU_ML3_NW_MS(l3_ie.l3_info.payload);
- int2enum(oct2int(l3.msgs.rrm.channelRelease.rRCause.valuePart), got_cause); - log("GOT CAUSE CODE: ", l3.msgs.rrm.channelRelease.rRCause.valuePart, " = ", got_cause); - if (match(got_cause, expect_rr_cause)) { - setverdict(pass); - } else { - log("EXPECTED CAUSE CODE: ", expect_rr_cause); - setverdict(fail, "Received RR Channel Release Cause code does not match expectations"); - } + int2enum(oct2int(l3.msgs.rrm.channelRelease.rRCause.valuePart), got_cause); + log("GOT CAUSE CODE: ", l3.msgs.rrm.channelRelease.rRCause.valuePart, " = ", got_cause); + if (match(got_cause, expect_rr_cause)) { + setverdict(pass); + } else { + log("EXPECTED CAUSE CODE: ", expect_rr_cause); + setverdict(fail, "Received RR Channel Release Cause code does not match expectations"); } repeat; } @@ -2309,7 +2305,8 @@ f_shutdown_helper(); }
-private function f_tc_chan_rel_rr_cause(myBSSMAP_Cause clear_cmd_cause, template RR_Cause expect_rr_cause) +private function f_tc_chan_rel_rr_cause(myBSSMAP_Cause clear_cmd_cause, + template (present) RR_Cause expect_rr_cause) runs on test_CT { var DchanTuple dt;