MSC_Tests: Use enum instead of magic numbers for CM_SERVICE_TYPE

Change-Id: Ic90b4a0aa47821877a2d3566606b9c9dd5919968
diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn
index c603b7b..f23c8fa 100644
--- a/library/L3_Templates.ttcn
+++ b/library/L3_Templates.ttcn
@@ -23,7 +23,10 @@
 	CM_TYPE_MO_CALL		('0001'B),
 	CM_TYPE_EMERG_CALL	('0010'B),
 	CM_TYPE_MO_SMS		('0100'B),
-	CM_TYPE_SS_ACT		('1000'B)
+	CM_TYPE_SS_ACT		('1000'B),
+	CM_TYPE_VGCS		('1001'B),
+	CM_TYPE_VBS		('1010'B),
+	CM_TYPE_LCS		('1011'B)
 }
 
 
@@ -104,7 +107,7 @@
 };
 
 /* Send template for CM SERVICE REQUEST */
-template (value) PDU_ML3_MS_NW ts_CM_SERV_REQ(BIT4 serv_type, MobileIdentityLV mi_lv) := {
+template (value) PDU_ML3_MS_NW ts_CM_SERV_REQ(CmServiceType serv_type, MobileIdentityLV mi_lv) := {
 	discriminator := '0000'B, /* overwritten */
 	tiOrSkip := {
 		skipIndicator := '0000'B
@@ -114,7 +117,7 @@
 			cMServiceRequest := {
 				messageType := '000000'B, /* overwritten */
 				nsd := '00'B,
-				cm_ServiceType := serv_type,
+				cm_ServiceType := int2bit(enum2int(serv_type), 4),
 				cipheringKeySequenceNumber := { '000'B, '0'B },
 				mobileStationClassmark2 := ts_CM2,
 				mobileIdentity := mi_lv,