sgsn+pcu: Port suspend/resume cases to new BSSGP_CT:GLOBAL port
For 12+ days, suspend/resume related SGSN + PCU TTCN3 tets have been failing. It was the introduction of the BSSGP_CT:GLOBAL test port in I40d973d80709f5d56f59247e8647b52754f09bc8 + I805372f3024a0ec2491a24422e02c0bc6dc669d2 which caused the related PDUs now to no longer show up where they used to. Change-Id: I1977302fef4868dc1c330bc6f48f6a6608949393 Closes: OS#4902
This commit is contained in:
parent
cc3894b612
commit
9b461a94a3
|
@ -155,6 +155,7 @@ type component BSSGP_Client_CT {
|
|||
/* one port array for each client; allows talking to up to 3 BVC/Cell (handover, ...) */
|
||||
port BSSGP_PT BSSGP[3]; /* PTP-BVC */
|
||||
port BSSGP_PT BSSGP_SIG[3]; /* Signaling BVC */
|
||||
port BSSGP_PT BSSGP_GLOBAL[3]; /* Signaling BVC */
|
||||
port BSSGP_PROC_PT BSSGP_PROC[3]; /* registration / deregistration */
|
||||
};
|
||||
|
||||
|
|
|
@ -327,7 +327,7 @@ testcase TC_pcuif_suspend() runs on RAW_PCU_Test_CT {
|
|||
|
||||
T.start(2.0);
|
||||
alt {
|
||||
[] BSSGP_SIG[0].receive(tr_BSSGP_SUSPEND(tlli, mp_gb_cfg.bvc[0].cell_id.ra_id)) {
|
||||
[] BSSGP_GLOBAL[0].receive(tr_BSSGP_SUSPEND(tlli, mp_gb_cfg.bvc[0].cell_id.ra_id)) {
|
||||
setverdict(pass);
|
||||
}
|
||||
[] T.timeout {
|
||||
|
|
|
@ -101,6 +101,7 @@ function f_init_bssgp() runs on bssgp_CT {
|
|||
connect(self:BSSGP_PROC[i], vc_BVC:BSSGP_PROC);
|
||||
f_bssgp_client_register(mmctx.imsi, mmctx.tlli);
|
||||
}
|
||||
connect(self:BSSGP_GLOBAL[0], bssgp_component:GLOBAL);
|
||||
}
|
||||
|
||||
/* Establish BSSGP connection to PCU */
|
||||
|
|
|
@ -480,14 +480,17 @@ runs on test_CT return BSSGP_ConnHdlr {
|
|||
connect(vc_conn:BSSGP[0], gb[0].vc_BSSGP_BVC[0]:BSSGP_SP);
|
||||
connect(vc_conn:BSSGP_SIG[0], gb[0].vc_BSSGP_BVC[0]:BSSGP_SP_SIG);
|
||||
connect(vc_conn:BSSGP_PROC[0], gb[0].vc_BSSGP_BVC[0]:BSSGP_PROC);
|
||||
connect(vc_conn:BSSGP_GLOBAL[0], gb[0].vc_BSSGP:GLOBAL);
|
||||
|
||||
connect(vc_conn:BSSGP[1], gb[1].vc_BSSGP_BVC[0]:BSSGP_SP);
|
||||
connect(vc_conn:BSSGP_SIG[1], gb[1].vc_BSSGP_BVC[0]:BSSGP_SP_SIG);
|
||||
connect(vc_conn:BSSGP_PROC[1], gb[1].vc_BSSGP_BVC[0]:BSSGP_PROC);
|
||||
connect(vc_conn:BSSGP_GLOBAL[1], gb[1].vc_BSSGP:GLOBAL);
|
||||
|
||||
connect(vc_conn:BSSGP[2], gb[2].vc_BSSGP_BVC[0]:BSSGP_SP);
|
||||
connect(vc_conn:BSSGP_SIG[2], gb[2].vc_BSSGP_BVC[0]:BSSGP_SP_SIG);
|
||||
connect(vc_conn:BSSGP_PROC[2], gb[2].vc_BSSGP_BVC[0]:BSSGP_PROC);
|
||||
connect(vc_conn:BSSGP_GLOBAL[2], gb[2].vc_BSSGP:GLOBAL);
|
||||
|
||||
/* FIXME: support multiple RNCs */
|
||||
if (g_ranap_enable) {
|
||||
|
@ -868,13 +871,13 @@ friend function f_gmm_attach(boolean umts_aka_challenge, boolean force_gsm_sres,
|
|||
friend function f_bssgp_suspend(integer ran_idx := 0) runs on BSSGP_ConnHdlr return OCT1 {
|
||||
timer T := 5.0;
|
||||
var PDU_BSSGP rx_pdu;
|
||||
BSSGP_SIG[ran_idx].send(ts_BSSGP_SUSPEND(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id));
|
||||
BSSGP_GLOBAL[ran_idx].send(ts_BSSGP_SUSPEND(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id));
|
||||
T.start;
|
||||
alt {
|
||||
[] BSSGP_SIG[ran_idx].receive(tr_BSSGP_SUSPEND_ACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, ?)) -> value rx_pdu {
|
||||
[] BSSGP_GLOBAL[ran_idx].receive(tr_BSSGP_SUSPEND_ACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, ?)) -> value rx_pdu {
|
||||
return rx_pdu.pDU_BSSGP_SUSPEND_ACK.suspend_Reference_Number.suspend_Reference_Number_value;
|
||||
}
|
||||
[] BSSGP_SIG[ran_idx].receive(tr_BSSGP_SUSPEND_NACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, ?)) -> value rx_pdu {
|
||||
[] BSSGP_GLOBAL[ran_idx].receive(tr_BSSGP_SUSPEND_NACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, ?)) -> value rx_pdu {
|
||||
setverdict(fail, "SUSPEND-NACK in response to SUSPEND for TLLI ", g_pars.tlli);
|
||||
mtc.stop;
|
||||
}
|
||||
|
@ -888,11 +891,11 @@ friend function f_bssgp_suspend(integer ran_idx := 0) runs on BSSGP_ConnHdlr ret
|
|||
|
||||
friend function f_bssgp_resume(OCT1 susp_ref, integer ran_idx := 0) runs on BSSGP_ConnHdlr {
|
||||
timer T := 5.0;
|
||||
BSSGP_SIG[ran_idx].send(ts_BSSGP_RESUME(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, susp_ref));
|
||||
BSSGP_GLOBAL[ran_idx].send(ts_BSSGP_RESUME(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id, susp_ref));
|
||||
T.start;
|
||||
alt {
|
||||
[] BSSGP_SIG[ran_idx].receive(tr_BSSGP_RESUME_ACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id));
|
||||
[] BSSGP_SIG[ran_idx].receive(tr_BSSGP_RESUME_NACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id,
|
||||
[] BSSGP_GLOBAL[ran_idx].receive(tr_BSSGP_RESUME_ACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id));
|
||||
[] BSSGP_GLOBAL[ran_idx].receive(tr_BSSGP_RESUME_NACK(g_pars.tlli, g_pars.bssgp_cell_id[ran_idx].ra_id,
|
||||
?)) {
|
||||
setverdict(fail, "RESUME-NACK in response to RESUME for TLLI ", g_pars.tlli);
|
||||
mtc.stop;
|
||||
|
|
Loading…
Reference in New Issue