Merge changes Id75cc92d,Ia5a39d37
* changes: BSC_Tests: remove copy+paste CHAN RQD -> CHAN ACT -> CHAN ACK BSC_Tests: Make as_Tguard() more robust (don't abort after RESET)
This commit is contained in:
commit
ea02e2dd97
|
@ -163,6 +163,7 @@ altstep as_Tguard() runs on test_CT {
|
|||
[] BSSAP.receive(tr_BSSAP_UNITDATA_ind(?, ?, tr_BSSMAP_Reset)) -> value ud_ind {
|
||||
BSSAP.send(ts_BSSAP_UNITDATA_req(ud_ind.callingAddress, ud_ind.calledAddress,
|
||||
ts_BSSMAP_ResetAck));
|
||||
repeat;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -254,10 +255,7 @@ testcase TC_chan_act_ack_noest() runs on test_CT {
|
|||
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);
|
||||
|
@ -273,10 +271,7 @@ testcase TC_chan_act_ack_est_ind_noreply() runs on test_CT {
|
|||
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));
|
||||
|
@ -298,10 +293,7 @@ testcase TC_chan_act_ack_est_ind_refused() runs on test_CT {
|
|||
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));
|
||||
|
@ -320,18 +312,25 @@ type record DchanTuple {
|
|||
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));
|
||||
|
||||
|
@ -408,7 +407,6 @@ testcase TC_chan_rel_conn_fail() runs on test_CT {
|
|||
/* 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));
|
||||
|
||||
|
@ -455,7 +453,6 @@ testcase TC_chan_rel_hard_clear() runs on test_CT {
|
|||
|
||||
/* 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));
|
||||
|
||||
|
@ -495,7 +492,6 @@ testcase TC_chan_rel_hard_rlsd() runs on test_CT {
|
|||
|
||||
/* 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));
|
||||
|
||||
|
|
Loading…
Reference in New Issue