sgsn: Add TC_pdp_act_unattached
Change-Id: I162ab7cb74102e6f15c4d685c49575bcd0b4f41c
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 138b63b..988ece1 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -895,6 +895,33 @@
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 @@
execute( TC_detach_nopoweroff() );
execute( TC_detach_poweroff() );
execute( TC_attach_pdp_act() );
+ execute( TC_pdp_act_unattached() );
}