gbproxy: Generalize as_count_bvc_block() into as_count_bvc_sts()

... and while add it, add as_count_bvc_unblock() based on it.

Related: OS#4968
Change-Id: I33ceace527d6a0cd816fb4e042fdcffd8f0dd23f
diff --git a/gbproxy/GBProxy_Tests.ttcn b/gbproxy/GBProxy_Tests.ttcn
index f1e5c79..5ae153f 100644
--- a/gbproxy/GBProxy_Tests.ttcn
+++ b/gbproxy/GBProxy_Tests.ttcn
@@ -2521,14 +2521,26 @@
 	f_cleanup();
 }
 
-private altstep as_count_bvc_block(integer sgsn_idx, BssgpBvci bvci, inout roro_integer roroi)
+private altstep as_count_bvc_sts(integer sgsn_idx, BssgpBvci bvci,
+				 template (present) BvcState exp_bvc_state, inout roro_integer roroi)
 runs on test_CT {
 	var BSSGP_BVC_CT sgsn_bvc_ct := f_get_sgsn_bvc_ct(sgsn_idx, bvci);
-	[] SGSN_MGMT.receive(tr_BssgpStsInd(?, bvci, BVC_S_BLOCKED)) from sgsn_bvc_ct {
+	[] SGSN_MGMT.receive(tr_BssgpStsInd(?, bvci, exp_bvc_state)) from sgsn_bvc_ct {
 		roroi[sgsn_idx] := roroi[sgsn_idx] & { bvci };
 		repeat;
 	}
 }
+
+private altstep as_count_bvc_block(integer sgsn_idx, BssgpBvci bvci, inout roro_integer roroi)
+runs on test_CT {
+	[] as_count_bvc_sts(sgsn_idx, bvci, BVC_S_BLOCKED, roroi);
+}
+
+private altstep as_count_bvc_unblock(integer sgsn_idx, BssgpBvci bvci, inout roro_integer roroi)
+runs on test_CT {
+	[] as_count_bvc_sts(sgsn_idx, bvci, BVC_S_UNBLOCKED, roroi);
+}
+
 /* reset the signaling BVC from one BSS; expect no signaling BVC reset on SGSN; but BVC-BLOCK for PTP */
 testcase TC_bvc_reset_sig_from_bss() runs on test_CT {