msc: Fix repeated execution of TC_sgsap_unsol_ud()

Change-Id: I6c2f1a5d5b5316ffe462335f8461c31564ce4274
Closes: OS#4722
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index bdd9f62..a801db9 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -962,23 +962,27 @@
 	vc_conn.done;
 }
 
-
-/* Test IMSI DETACH (MI=IMSI) */
-friend function f_tc_imsi_detach_by_imsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
-	f_init_handler(pars);
-
+friend function f_imsi_detach_by_imsi() runs on BSC_ConnHdlr {
 	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
 
 	/* Send BSSAP_Conn_Req with COMPL L3 INFO to MSC */
 	f_cl3_or_initial_ue(valueof(ts_ML3_MO_MM_IMSI_DET_Ind(mi)));
 
 	/* Send Early Classmark, just for the fun of it? */
-	if (pars.ran_is_geran) {
+	if (g_pars.ran_is_geran) {
 		BSSAP.send(ts_BSSMAP_ClassmarkUpd(g_pars.cm2, g_pars.cm3));
 	}
 
 	/* wait for normal teardown */
-	f_expect_clear();
+	f_expect_clear(verify_vlr_cell_id := false);
+}
+
+
+/* Test IMSI DETACH (MI=IMSI) */
+friend function f_tc_imsi_detach_by_imsi(charstring id, BSC_ConnHdlrPars pars) runs on BSC_ConnHdlr {
+	f_init_handler(pars);
+
+	f_imsi_detach_by_imsi();
 }
 testcase TC_imsi_detach_by_imsi() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
@@ -4831,6 +4835,9 @@
 
 	f_sgsap_bssmap_screening();
 
+	/* clean-up VLR state about this subscriber */
+	f_imsi_detach_by_imsi();
+
 	setverdict(pass);
 }
 testcase TC_sgsap_unsol_ud() runs on MTC_CT {