Review at https://gerrit.osmocom.org/5331
BSC_Tests: remove copy+paste CHAN RQD -> CHAN ACT -> CHAN ACK ... and replace it with a function Change-Id: Id75cc92ddf1c1833c892a7bfa77d6561fd0f3679 --- M bsc/BSC_Tests.ttcn 1 file changed, 15 insertions(+), 20 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/31/5331/1 diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index aa8150a..14ba97d 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -255,10 +255,7 @@ f_bssap_reset(); /* Send CHAN RQD and wait for allocation; acknowledge it */ - f_ipa_tx(0, ts_RSL_CHAN_RQD('23'O, 23)); - rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV)); - var RslChannelNr chan_nr := rx_rsl.ies[0].body.chan_nr; - f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(chan_nr, 23)); + var RslChannelNr chan_nr := f_chreq_act_ack(); /* expect BSC to disable the channel again if there's no RLL EST IND */ rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL), T3101_MAX); @@ -274,10 +271,7 @@ f_bssap_reset(); /* Send CHAN RQD and wait for allocation; acknowledge it */ - f_ipa_tx(0, ts_RSL_CHAN_RQD('23'O, 23)); - rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV)); - var RslChannelNr chan_nr := rx_rsl.ies[0].body.chan_nr; - f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(chan_nr, 23)); + var RslChannelNr chan_nr := f_chreq_act_ack(); var octetstring l3 := '00010203040506'O f_ipa_tx(0, ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); @@ -299,10 +293,7 @@ f_bssap_reset(); /* Send CHAN RQD and wait for allocation; acknowledge it */ - f_ipa_tx(0, ts_RSL_CHAN_RQD('23'O, 23)); - rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV)); - var RslChannelNr chan_nr := rx_rsl.ies[0].body.chan_nr; - f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(chan_nr, 23)); + var RslChannelNr chan_nr := f_chreq_act_ack(); var octetstring l3 := '00010203040506'O f_ipa_tx(0, ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); @@ -321,18 +312,25 @@ RslChannelNr rsl_chan_nr } +/* Send CHAN RQD and wait for allocation; acknowledge it */ +private function f_chreq_act_ack(OCT1 ra := '23'O, GsmFrameNumber fn := 23) +runs on test_CT return RslChannelNr { + var RSL_Message rx_rsl; + f_ipa_tx(0, ts_RSL_CHAN_RQD(ra, fn)); + rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV)); + var RslChannelNr chan_nr := rx_rsl.ies[0].body.chan_nr; + f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10)); + return chan_nr; +} + /* helper function to establish a dedicated channel via BTS and MSC */ function f_est_dchan(OCT1 ra, GsmFrameNumber fn, octetstring l3) runs on test_CT return DchanTuple { var BSSAP_N_CONNECT_ind rx_c_ind; - var RSL_Message rx_rsl; var DchanTuple dt; /* Send CHAN RQD and wait for allocation; acknowledge it */ - f_ipa_tx(0, ts_RSL_CHAN_RQD(ra, fn)); - rx_rsl := f_exp_ipa_rx(0, tr_RSL_MsgTypeD(RSL_MT_CHAN_ACTIV)); - dt.rsl_chan_nr := rx_rsl.ies[0].body.chan_nr; - f_ipa_tx(0, ts_RSL_CHAN_ACT_ACK(dt.rsl_chan_nr, fn+1)); + dt.rsl_chan_nr := f_chreq_act_ack(ra, fn); f_ipa_tx(0, ts_RSL_EST_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); @@ -409,7 +407,6 @@ /* Test behavior of channel release after hard Clear Command from MSC */ testcase TC_chan_rel_hard_clear() runs on test_CT { var BSSAP_N_DATA_ind rx_di; - var RSL_Message rx_rsl; var DchanTuple dt; var RslLinkId main_dcch := valueof(ts_RslLinkID_DCCH(0)); @@ -456,7 +453,6 @@ /* Test behavior of channel release after hard RLSD from MSC */ testcase TC_chan_rel_hard_rlsd() runs on test_CT { - var RSL_Message rx_rsl; var DchanTuple dt; var RslLinkId main_dcch := valueof(ts_RslLinkID_DCCH(0)); @@ -496,7 +492,6 @@ /* Test behavior of channel release after BSSMAP RESET from MSC */ testcase TC_chan_rel_a_reset() runs on test_CT { - var RSL_Message rx_rsl; var DchanTuple dt; var RslLinkId main_dcch := valueof(ts_RslLinkID_DCCH(0)); -- To view, visit https://gerrit.osmocom.org/5331 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Id75cc92ddf1c1833c892a7bfa77d6561fd0f3679 Gerrit-PatchSet: 1 Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Owner: Harald Welte <lafo...@gnumonks.org>