BSC_Tests: Add new TC_chan_rel_hard_rlsd (MSC sends hard RLSD)
This commit is contained in:
parent
4003d11fe8
commit
d8c36cda22
|
@ -434,6 +434,46 @@ testcase TC_chan_rel_hard_clear() runs on test_CT {
|
|||
setverdict(pass);
|
||||
}
|
||||
|
||||
/* 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));
|
||||
|
||||
f_init();
|
||||
f_bssap_reset();
|
||||
|
||||
dt := f_est_dchan('23'O, 23, '00010203040506'O);
|
||||
|
||||
/* release the SCCP connection */
|
||||
BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0));
|
||||
|
||||
/* Clear the queue, it might still contain stuff like IMMEDIATE ASSIGN */
|
||||
IPA_RSL[0].clear;
|
||||
alt {
|
||||
/* ignore DEACTIVATE SACCH (if any) */
|
||||
[] IPA_RSL[0].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0,
|
||||
tr_RSL_DEACT_SACCH(dt.rsl_chan_nr))) {
|
||||
repeat;
|
||||
}
|
||||
/* acknowledge RLL release (if any)*/
|
||||
[] IPA_RSL[0].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0,
|
||||
tr_RSL_REL_REQ(dt.rsl_chan_nr, ?))) {
|
||||
/* FIXME: Why are we getting this for LinkID SACCH? */
|
||||
f_ipa_tx(0, ts_RSL_REL_CONF(dt.rsl_chan_nr, main_dcch));
|
||||
repeat;
|
||||
}
|
||||
/* Expect RF channel release from BSC on Abis */
|
||||
[] IPA_RSL[0].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0,
|
||||
tr_RSL_MsgTypeD(RSL_MT_RF_CHAN_REL))) {
|
||||
/* respond with CHAN REL ACK */
|
||||
f_ipa_tx(0, ts_RSL_RF_CHAN_REL_ACK(dt.rsl_chan_nr));
|
||||
}
|
||||
}
|
||||
|
||||
setverdict(pass);
|
||||
}
|
||||
|
||||
|
||||
testcase TC_ctrl_msc_connection_status() runs on test_CT {
|
||||
var charstring ctrl_resp;
|
||||
|
@ -494,6 +534,7 @@ control {
|
|||
execute( TC_chan_rel_rll_rel_ind() );
|
||||
execute( TC_chan_rel_conn_fail() );
|
||||
execute( TC_chan_rel_hard_clear() );
|
||||
execute( TC_chan_rel_hard_rlsd() );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue