GGSN_Tests: Add function to send DELETE PDP CONTEXT

This commit is contained in:
Harald Welte 2017-08-05 08:51:22 +02:00
parent 3af89489ba
commit f1e0d5a39f
1 changed files with 58 additions and 0 deletions

View File

@ -270,6 +270,44 @@ module GGSN_Tests {
sgsn_ip_data, msisdn)))
}
function f_teardown_ind_IE(in template BIT1 ind) return template TearDownInd {
if (isvalue(ind)) {
return omit;
}
var TearDownInd ret := {
type_gtpc := '13'O,
tdInd := valueof(ind),
spare:= '0000000'B
}
return ret;
}
template GTPC_PDUs ts_DeletePdpPDU(BIT4 nsapi, template BIT1 teardown_ind) := {
deletePDPContextRequest := {
cause := omit,
tearDownIndicator := f_teardown_ind_IE(teardown_ind),
nsapi := {
type_gtpc := '14'O,
nsapi := nsapi,
unused := '0000'B
},
protConfigOptions := omit,
userLocationInformation := omit,
mS_TimeZone := omit,
extendedCommonFlags := omit,
uLI_Timestamp := omit,
private_extension_gtpc := omit
}
}
template Gtp1cUnitdata ts_GTPC_DeletePDP(GtpPeer peer, OCT4 teid, BIT4 nsapi,
template BIT1 teardown_ind) := {
peer := peer,
gtpc := ts_GTP1C_PDU(deletePDPContextRequest, teid,
valueof(ts_DeletePdpPDU(nsapi, teardown_ind)))
}
/* GTP-U */
template PDU_GTPU tr_GTP1U_PDU(template OCT1 msg_type, template OCT4 teid) := {
@ -378,6 +416,26 @@ module GGSN_Tests {
deactivate(d);
}
function f_pdp_ctx_del(OCT4 teid, BIT4 nsapi, template BIT1 teardown_ind) runs on GT_CT {
var Gtp1cUnitdata ud;
var default d;
GTPC.send(ts_GTPC_DeletePDP(g_peer, teid, nsapi, teardown_ind));
T_default.start;
d := activate(pingpong());
alt {
[] GTPC.receive(tr_GTPC_MsgType(g_peer, deletePDPContextResponse, teid)) -> value ud {
if (ud.gtpc.gtpc_pdu.deletePDPContextResponse.cause.causevalue == '80'O) {
setverdict(pass);
} else {
setverdict(fail);
}
}
}
deactivate(d);
}
testcase TC_activate_pdp4() runs on GT_CT {
f_init();
var hexstring imsi := '262420123456789'H;