BSC_Test_ASCI: Add Talker detect with UPLINK REJECT COMMAND test
The talker requests uplink. The UPLINK REQUEST is rejected by the MSC. The uplink is marked free again. Change-Id: Iba4dd21a69d49e6a8508b15b823ffccc7f0dafc9
This commit is contained in:
parent
28d6b81268
commit
a29b2f31da
|
@ -146,9 +146,15 @@ private function f_tc_vgcs_vbs_setup(charstring id) runs on MSC_ConnHdlr {
|
|||
log("VGCS: delay uplink req ack");
|
||||
f_delay_msc();
|
||||
}
|
||||
log("VGCS: sending uplink req ack");
|
||||
BSSAP.send(ts_BSSMAP_UplinkReqAck(omit));
|
||||
if (g_pars.asci_test.vgcs_talker_req) {
|
||||
if (g_pars.asci_test.vgcs_uplink_reject) {
|
||||
log("VGCS: sending uplink rej cmd");
|
||||
BSSAP.send(ts_BSSMAP_UplinkRejCmd(9));
|
||||
} else {
|
||||
log("VGCS: sending uplink req ack");
|
||||
BSSAP.send(ts_BSSMAP_UplinkReqAck(omit));
|
||||
}
|
||||
if (g_pars.asci_test.vgcs_talker_req or
|
||||
g_pars.asci_test.vgcs_uplink_reject) {
|
||||
T.start;
|
||||
}
|
||||
repeat;
|
||||
|
@ -327,6 +333,15 @@ private function f_tc_vgcs_vbs_setup(charstring id) runs on MSC_ConnHdlr {
|
|||
setverdict(pass);
|
||||
return;
|
||||
}
|
||||
if (g_pars.asci_test.vgcs_uplink_reject) {
|
||||
if (not uplink_free) {
|
||||
setverdict(fail, "VGCS: Uplink not free as expected!");
|
||||
return;
|
||||
}
|
||||
log("VGCS: Uplink rejected and uplink marked free as expected!");
|
||||
setverdict(pass);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -402,7 +417,8 @@ private function f_tc_asci_assignment(charstring id) runs on MSC_ConnHdlr {
|
|||
if (g_pars.asci_test.vgcs_talker_req or
|
||||
g_pars.asci_test.vgcs_talker_fail or
|
||||
g_pars.asci_test.vgcs_talker_est or
|
||||
g_pars.asci_test.vgcs_talker_rel) {
|
||||
g_pars.asci_test.vgcs_talker_rel or
|
||||
g_pars.asci_test.vgcs_uplink_reject) {
|
||||
log("VGCS: sending talker det");
|
||||
RSL.send(ts_RSL_TALKER_DET(g_chan_nr));
|
||||
}
|
||||
|
@ -706,6 +722,28 @@ testcase TC_vgcs_vbs_talker_rel_late_msc() runs on test_CT {
|
|||
f_shutdown_helper();
|
||||
}
|
||||
|
||||
testcase TC_vgcs_vbs_uplink_reject() runs on test_CT {
|
||||
var MSC_ConnHdlr call_conn, chan_conn;
|
||||
var TestHdlrParams pars := f_gen_test_hdlr_pars();
|
||||
|
||||
f_init(1, true);
|
||||
|
||||
pars.sccp_addr_msc := g_bssap[0].sccp_addr_own;
|
||||
pars.sccp_addr_bsc := g_bssap[0].sccp_addr_peer;
|
||||
|
||||
pars.asci_test.vgcs_uplink_reject := true;
|
||||
|
||||
call_conn := f_start_handler(refers(f_tc_vgcs_vbs_setup), pars);
|
||||
chan_conn := f_start_handler(refers(f_tc_asci_assignment), pars);
|
||||
/* Connect COORD ports of both functions. The functions will delay before using them. */
|
||||
connect(call_conn:COORD, chan_conn:COORD);
|
||||
|
||||
call_conn.done;
|
||||
chan_conn.done;
|
||||
|
||||
f_shutdown_helper();
|
||||
}
|
||||
|
||||
testcase TC_vgcs_vbs_uplink_seized() runs on test_CT {
|
||||
var MSC_ConnHdlr call_conn, chan_conn;
|
||||
var TestHdlrParams pars := f_gen_test_hdlr_pars();
|
||||
|
@ -761,6 +799,7 @@ control {
|
|||
execute( TC_vgcs_vbs_talker_est_late_msc() );
|
||||
execute( TC_vgcs_vbs_talker_rel() );
|
||||
execute( TC_vgcs_vbs_talker_rel_late_msc() );
|
||||
execute( TC_vgcs_vbs_uplink_reject() );
|
||||
execute( TC_vgcs_vbs_uplink_seized() );
|
||||
execute( TC_vgcs_vbs_uplink_release() );
|
||||
}
|
||||
|
|
|
@ -760,6 +760,7 @@ type record ASCITest {
|
|||
boolean vgcs_talker_fail,
|
||||
boolean vgcs_talker_est,
|
||||
boolean vgcs_talker_rel,
|
||||
boolean vgcs_uplink_reject,
|
||||
boolean vgcs_uplink_seized,
|
||||
boolean vgcs_uplink_release,
|
||||
boolean delay_bts,
|
||||
|
@ -858,6 +859,7 @@ template (value) TestHdlrParams t_def_TestHdlrPars := {
|
|||
vgcs_talker_fail := false,
|
||||
vgcs_talker_est := false,
|
||||
vgcs_talker_rel := false,
|
||||
vgcs_uplink_reject := false,
|
||||
vgcs_uplink_seized := false,
|
||||
vgcs_uplink_release := false,
|
||||
delay_bts := false,
|
||||
|
|
Loading…
Reference in New Issue