diff --git a/ggsn_tests/GGSN_Tests.ttcn b/ggsn_tests/GGSN_Tests.ttcn index bffdd4ce6..bef794954 100644 --- a/ggsn_tests/GGSN_Tests.ttcn +++ b/ggsn_tests/GGSN_Tests.ttcn @@ -474,7 +474,7 @@ module GGSN_Tests { T_default.stop; } - function f_pdp_ctx_del(PdpContext ctx, template BIT1 teardown_ind, OCT1 expect_causevalue := '80'O) runs on GT_CT { + function f_pdp_ctx_del(PdpContext ctx, template BIT1 teardown_ind, OCT1 expect_causevalue := '80'O, boolean expect_diameter := true) runs on GT_CT { var Gtp1cUnitdata ud; var default d; var OCT4 expect_teid; @@ -490,7 +490,7 @@ module GGSN_Tests { f_send_gtpc(ts_GTPC_DeletePDP(g_peer_c, g_c_seq_nr, ctx.teic_remote, ctx.nsapi, teardown_ind)); T_default.start; d := activate(pingpong()); - if (DIAMETER_PROC.checkstate("Connected")) { + if (DIAMETER_PROC.checkstate("Connected") and expect_diameter) { as_DIA_CCR(TERMINATION_REQUEST); } alt { @@ -1771,11 +1771,11 @@ module GGSN_Tests { duplicate. If it was not a duplicate, osmo-ggsn would answer with a failure since that PDP ctx was already deleted. */ g_c_seq_nr := g_c_seq_nr - 1; - f_pdp_ctx_del(ctx, '1'B); + f_pdp_ctx_del(ctx, '1'B, expect_diameter := false); /* Now send a new pdp ctx del (increased seqnum). It should fail with cause "non-existent": */ var OCT1 cause_nonexistent := 'C0'O; - f_pdp_ctx_del(ctx, '1'B, cause_nonexistent); + f_pdp_ctx_del(ctx, '1'B, cause_nonexistent, expect_diameter := false); } /* Activate PDP context + trigger Recovery procedure through EchoResp */