BSC_Tests: Verify paging stops after BSSMAP RESET on A interface
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 38eda35..ea8b67e 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -744,8 +744,36 @@
 /* Verify paging stops after channel establishment */
 /* Verify PCH load */
 /* Test behavior under paging overload */
-/* Verify paging stops after A-RESET */
 
+/* Verify paging stops after A-RESET */
+testcase TC_paging_imsi_a_reset() runs on test_CT {
+	var BSSMAP_FIELD_CellIdentificationList cid_list;
+	timer T := 3.0;
+	cid_list := valueof(ts_BSSMAP_CIL_noCell);
+	f_pageing_helper('001010123456789'H, cid_list);
+
+	/* Perform a BSSMAP Reset and wait for ACK */
+	BSSAP.send(ts_BSSAP_UNITDATA_req(g_sccp_addr_peer, g_sccp_addr_own, ts_BSSMAP_Reset(0)));
+	alt {
+	[] BSSAP.receive(tr_BSSAP_UNITDATA_ind(g_sccp_addr_own, g_sccp_addr_peer, tr_BSSMAP_ResetAck)) { }
+	[] BSSAP.receive { repeat; }
+	}
+
+	/* Clear the queue, it might still contain stuff like BCCH FILLING */
+	IPA_RSL[0].clear;
+
+	/* Wait for 3 seconds if any more PAGING CMD are received on RSL */
+	T.start;
+	alt {
+	[] IPA_RSL[0].receive(tr_ASP_RSL_UD(IPAC_PROTO_RSL_TRX0, tr_RSL_PAGING_CMD(?))) {
+		setverdict(fail, "Received PAGING after A-RESET");
+		self.stop;
+		}
+	[] T.timeout {
+		setverdict(pass);
+		}
+	}
+}
 
 control {
 	execute( TC_ctrl_msc_connection_status() );
@@ -773,6 +801,7 @@
 	execute( TC_paging_imsi_nochan_lai() );
 	execute( TC_paging_imsi_nochan_lac() );
 	execute( TC_paging_imsi_nochan_all() );
+	execute( TC_paging_imsi_a_reset() );
 
 }