diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index ce95ff5..dc5303e 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -2109,7 +2109,8 @@
  * USSD Testing
  ***********************************************************************/
 
-private function f_tc_lu_and_ussd_single_req(charstring id, BSC_ConnHdlrPars pars)
+/* LU followed by MO USSD request */
+private function f_tc_lu_and_mo_ussd_single_request(charstring id, BSC_ConnHdlrPars pars)
 runs on BSC_ConnHdlr {
 	f_init_handler(pars);
 
@@ -2156,15 +2157,15 @@
 
 	f_expect_clear();
 }
-testcase TC_lu_and_ussd_single_req() runs on MTC_CT {
+testcase TC_lu_and_mo_ussd_single_request() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
 	f_init();
-	vc_conn := f_start_handler(refers(f_tc_lu_and_ussd_single_req), 46);
+	vc_conn := f_start_handler(refers(f_tc_lu_and_mo_ussd_single_request), 46);
 	vc_conn.done;
 }
 
-/* LU followed by MT call and USSD request during this call */
-private function f_tc_lu_and_ussd_during_call(charstring id, BSC_ConnHdlrPars pars)
+/* LU followed by MT call and MO USSD request during this call */
+private function f_tc_lu_and_mo_ussd_during_mt_call(charstring id, BSC_ConnHdlrPars pars)
 runs on BSC_ConnHdlr {
 	f_init_handler(pars);
 
@@ -2223,10 +2224,10 @@
 	/* Release the call (does Clear Complete itself) */
 	f_call_hangup(cpars, true);
 }
-testcase TC_lu_and_ussd_during_call() runs on MTC_CT {
+testcase TC_lu_and_mo_ussd_during_mt_call() runs on MTC_CT {
 	var BSC_ConnHdlr vc_conn;
 	f_init();
-	vc_conn := f_start_handler(refers(f_tc_lu_and_ussd_during_call), 48);
+	vc_conn := f_start_handler(refers(f_tc_lu_and_mo_ussd_during_mt_call), 48);
 	vc_conn.done;
 }
 
@@ -2311,8 +2312,8 @@
 	execute( TC_smpp_mo_sms() );
 	execute( TC_smpp_mt_sms() );
 
-	execute( TC_lu_and_ussd_single_req() );
-	execute( TC_lu_and_ussd_during_call() );
+	execute( TC_lu_and_mo_ussd_single_request() );
+	execute( TC_lu_and_mo_ussd_during_mt_call() );
 
 	/* Run this last: at the time of writing this test crashes the MSC */
 	execute( TC_lu_imsi_auth_tmsi_encr_3_1_log_msc_debug() );
