aboutsummaryrefslogtreecommitdiffstats
path: root/sgsn/SGSN_Tests.ttcn
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2018-02-18 14:39:11 +0100
committerHarald Welte <laforge@gnumonks.org>2018-02-18 14:39:11 +0100
commit835b15f799b3ade84398ee952b0deb336c46d981 (patch)
tree90761af1d164b768a6669fa349921cd0929869c9 /sgsn/SGSN_Tests.ttcn
parentd71c3438185cba1a9c27391e239e4522523336f9 (diff)
sgsn: Add TC_pdp_act_unattached
Diffstat (limited to 'sgsn/SGSN_Tests.ttcn')
-rw-r--r--sgsn/SGSN_Tests.ttcn28
1 files changed, 28 insertions, 0 deletions
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 138b63b6..988ece1b 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -895,6 +895,33 @@ testcase TC_attach_pdp_act() runs on test_CT {
vc_conn.done;
}
+/* PDP Context activation for not-attached subscriber; expect fail */
+private function f_TC_pdp_act_unattached(charstring id) runs on BSSGP_ConnHdlr {
+ var PdpActPars apars := valueof(t_PdpActPars);
+ BSSGP.send(ts_SM_ACT_PDP_REQ(apars.tid, apars.nsapi, apars.sapi, apars.qos, apars.addr,
+ apars.apn, apars.pco));
+ alt {
+ /* We might want toalso actually expect a PDPC CTX ACT REJ? */
+ [] BSSGP.receive(tr_BD_L3_MT(tr_GMM_DET_REQ_MT(?, ?))) {
+ setverdict(pass);
+ }
+ [] GTP.receive(tr_GTPC_MsgType(?, createPDPContextRequest, ?)) {
+ setverdict(fail, "Unexpected GTP PDP CTX ACT");
+ }
+ [] BSSGP.receive(tr_BD_L3_MT(tr_SM_ACT_PDP_ACCEPT(?, ?))) {
+ setverdict(fail, "Unexpected SM PDP CTX ACT ACK");
+ }
+ [] BSSGP.receive { repeat; }
+ }
+}
+testcase TC_pdp_act_unattached() runs on test_CT {
+ var BSSGP_ConnHdlr vc_conn;
+ f_init();
+ vc_conn := f_start_handler(refers(f_TC_pdp_act_unattached), testcasename(), g_gb[0], 18);
+ vc_conn.done;
+}
+
+
control {
execute( TC_attach() );
@@ -913,6 +940,7 @@ control {
execute( TC_detach_nopoweroff() );
execute( TC_detach_poweroff() );
execute( TC_attach_pdp_act() );
+ execute( TC_pdp_act_unattached() );
}