Defect Fixes and optimization for YANG translator.

Change-Id: I974a968f3c41e1abea9f2567aceb3d523645d0ae
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntaxTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntaxTest.java
index 7d66c7b..d4a51d8 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntaxTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntaxTest.java
@@ -16,38 +16,47 @@
 
 package org.onosproject.yangutils.translator.tojava.utils;
 
-import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertThat;
-
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
 
 import org.junit.Test;
-import org.onosproject.yangutils.utils.UtilConstants;
+
+import static org.hamcrest.core.Is.is;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getCamelCase;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getCaptialCase;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getJavaPackageFromPackagePath;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getPackageDirPathFromJavaJPackage;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getRootPackage;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getSmallCase;
+import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getYangRevisionStr;
+import static org.onosproject.yangutils.utils.UtilConstants.DEFAULT_BASE_PKG;
+import static org.onosproject.yangutils.utils.UtilConstants.PERIOD;
 
 /**
  * Unit tests for java identifier syntax.
  */
 public final class JavaIdentifierSyntaxTest {
 
-    public static final String PARENT_PACKAGE = "test5.test6.test7";
-    public static final String CHILD_PACKAGE = "test1:test2:test3";
-    public static final String DATE1 = "2000-1-5";
-    public static final String DATE2 = "1992-01-25";
-    public static final String PARENT_WITH_PERIOD = "test5.test6.test7";
-    public static final String CHILD_WITH_PERIOD = "test1.test2.test3";
-    public static final String DATE_WITH_REV1 = "rev20000105";
-    public static final String DATE_WITH_REV2 = "rev19920125";
-    public static final String VERSION_NUMBER = "v1";
-    public static final String INVALID_NAME_SPACE1 = "byte:#test2:9test3";
-    public static final String INVALID_NAME_SPACE2 = "const:#test2://9test3";
-    public static final String VALID_NAME_SPACE1 = "_byte.test2._9test3";
-    public static final String VALID_NAME_SPACE2 = "_const.test2._9test3";
-    public static final String WITHOUT_CAMEL_CASE = "test-camel-case-identifier";
-    public static final String WITH_CAMEL_CASE = "testCamelCaseIdentifier";
-    public static final String WITHOUT_CAPITAL = "test_this";
-    public static final String WITH_CAPITAL = "Test_this";
+    private static final String PARENT_PACKAGE = "test5/test6/test7";
+    private static final String CHILD_PACKAGE = "test1:test2:test3";
+    private static final String DATE1 = "2000-1-5";
+    private static final String DATE2 = "1992-01-25";
+    private static final String PARENT_WITH_PERIOD = "test5.test6.test7";
+    private static final String CHILD_WITH_PERIOD = "test1.test2.test3";
+    private static final String DATE_WITH_REV1 = "rev20000105";
+    private static final String DATE_WITH_REV2 = "rev19920125";
+    private static final String VERSION_NUMBER = "v1";
+    private static final String INVALID_NAME_SPACE1 = "byte:#test2:9test3";
+    private static final String INVALID_NAME_SPACE2 = "const:#test2://9test3";
+    private static final String VALID_NAME_SPACE1 = "_byte.test2._9test3";
+    private static final String VALID_NAME_SPACE2 = "_const.test2._9test3";
+    private static final String WITHOUT_CAMEL_CASE = "test-camel-case-identifier";
+    private static final String WITH_CAMEL_CASE = "testCamelCaseIdentifier";
+    private static final String WITHOUT_CAPITAL = "test_this";
+    private static final String WITH_CAPITAL = "Test_this";
+    private static final String WITH_SMALL = "test_this";
 
     /**
      * Unit test for private constructor.
@@ -65,6 +74,7 @@
     @Test
     public void callPrivateConstructors() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
             InstantiationException, IllegalAccessException, InvocationTargetException {
+
         Class<?>[] classesToConstruct = {JavaIdentifierSyntax.class };
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
@@ -79,9 +89,9 @@
     @Test
     public void getRootPackageTest() {
 
-        String rootPackage = JavaIdentifierSyntax.getRootPackage((byte) 1, CHILD_PACKAGE, DATE1);
-        assertThat(rootPackage.equals(UtilConstants.DEFAULT_BASE_PKG + UtilConstants.PERIOD + VERSION_NUMBER
-                + UtilConstants.PERIOD + CHILD_WITH_PERIOD + UtilConstants.PERIOD + DATE_WITH_REV1), is(true));
+        String rootPackage = getRootPackage((byte) 1, CHILD_PACKAGE, DATE1);
+        assertThat(rootPackage.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
+                + PERIOD + CHILD_WITH_PERIOD + PERIOD + DATE_WITH_REV1), is(true));
     }
 
     /**
@@ -90,12 +100,12 @@
     @Test
     public void getRootPackageWithSpecialCharactersTest() {
 
-        String rootPackage = JavaIdentifierSyntax.getRootPackage((byte) 1, INVALID_NAME_SPACE1, DATE1);
-        assertThat(rootPackage.equals(UtilConstants.DEFAULT_BASE_PKG + UtilConstants.PERIOD + VERSION_NUMBER
-                + UtilConstants.PERIOD + VALID_NAME_SPACE1 + UtilConstants.PERIOD + DATE_WITH_REV1), is(true));
-        String rootPackage1 = JavaIdentifierSyntax.getRootPackage((byte) 1, INVALID_NAME_SPACE2, DATE1);
-        assertThat(rootPackage1.equals(UtilConstants.DEFAULT_BASE_PKG + UtilConstants.PERIOD + VERSION_NUMBER
-                + UtilConstants.PERIOD + VALID_NAME_SPACE2 + UtilConstants.PERIOD + DATE_WITH_REV1), is(true));
+        String rootPackage = getRootPackage((byte) 1, INVALID_NAME_SPACE1, DATE1);
+        assertThat(rootPackage.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
+                + PERIOD + VALID_NAME_SPACE1 + PERIOD + DATE_WITH_REV1), is(true));
+        String rootPackage1 = getRootPackage((byte) 1, INVALID_NAME_SPACE2, DATE1);
+        assertThat(rootPackage1.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
+                + PERIOD + VALID_NAME_SPACE2 + PERIOD + DATE_WITH_REV1), is(true));
     }
 
     /**
@@ -104,9 +114,9 @@
     @Test
     public void getRootPackageWithRevTest() {
 
-        String rootPkgWithRev = JavaIdentifierSyntax.getRootPackage((byte) 1, CHILD_PACKAGE, DATE2);
-        assertThat(rootPkgWithRev.equals(UtilConstants.DEFAULT_BASE_PKG + UtilConstants.PERIOD
-                + VERSION_NUMBER + UtilConstants.PERIOD + CHILD_WITH_PERIOD + UtilConstants.PERIOD + DATE_WITH_REV2),
+        String rootPkgWithRev = getRootPackage((byte) 1, CHILD_PACKAGE, DATE2);
+        assertThat(rootPkgWithRev.equals(
+                DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER + PERIOD + CHILD_WITH_PERIOD + PERIOD + DATE_WITH_REV2),
                 is(true));
     }
 
@@ -116,7 +126,7 @@
     @Test
     public void getCapitalCaseTest() {
 
-        String capitalCase = JavaIdentifierSyntax.getCaptialCase(WITHOUT_CAPITAL);
+        String capitalCase = getCaptialCase(WITHOUT_CAPITAL);
         assertThat(capitalCase.equals(WITH_CAPITAL), is(true));
     }
 
@@ -125,7 +135,48 @@
      */
     @Test
     public void getCamelCaseTest() {
-        String camelCase = JavaIdentifierSyntax.getCamelCase(WITHOUT_CAMEL_CASE);
+
+        String camelCase = getCamelCase(WITHOUT_CAMEL_CASE);
         assertThat(camelCase.equals(WITH_CAMEL_CASE), is(true));
     }
+
+    /**
+     * Unit test for getting the camel case for the received string.
+     */
+    @Test
+    public void getSmallCaseTest() {
+
+        String smallCase = getSmallCase(WITHOUT_CAPITAL);
+        assertThat(smallCase.equals(WITH_SMALL), is(true));
+    }
+
+    /**
+     * Unit test for getting the camel case for the received string.
+     */
+    @Test
+    public void getPackageFromPathTest() {
+
+        String pkg = getJavaPackageFromPackagePath(PARENT_PACKAGE);
+        assertThat(pkg.equals(PARENT_WITH_PERIOD), is(true));
+    }
+
+    /**
+     * Unit test for getting the camel case for the received string.
+     */
+    @Test
+    public void getPathFromPackageTest() {
+
+        String path = getPackageDirPathFromJavaJPackage(PARENT_WITH_PERIOD);
+        assertThat(path.equals(PARENT_PACKAGE), is(true));
+    }
+
+    /**
+     * Unit test for getting the camel case for the received string.
+     */
+    @Test
+    public void getYangRevTest() {
+
+        String rev = getYangRevisionStr(DATE1);
+        assertThat(rev.equals(DATE_WITH_REV1), is(true));
+    }
 }