YANG translator error handler framework and UT fixes.

Change-Id: Icb4d65540ed7ea8d6ecbd8458d44d7d86df969fa
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataTypeTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataTypeTest.java
index 4d62b73..1610c90 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataTypeTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataTypeTest.java
@@ -24,7 +24,7 @@
 import org.onosproject.yangutils.datamodel.YangType;
 
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 import static org.junit.Assert.assertThat;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.BOOLEAN;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.INT32;
@@ -69,7 +69,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -78,7 +78,6 @@
      */
     @Test
     public void testgetJavaClassInfo() {
-
         test = getJavaImportClass(getStubYangType(TYPE1), false);
         assertThat(true, is(test.equals(CLASS_INFO1)));
 
@@ -97,7 +96,6 @@
      */
     @Test
     public void testgetJavaDataType() {
-
         test = getJavaDataType(getStubYangType(TYPE1));
         assertThat(true, is(test.equals(CLASS_INFO1)));
 
@@ -116,7 +114,6 @@
      */
     @Test
     public void testgetJavaPkgInfo() {
-
         test = getJavaImportPackage(getStubYangType(TYPE1), false, CLASS_INFO1);
         assertThat(true, is(test.equals(JAVA_LANG)));
 
@@ -137,7 +134,6 @@
      * @return YANG type
      */
     private YangType<?> getStubYangType(YangDataTypes dataTypes) {
-
         YangType<?> type = new YangType();
         type.setDataType(dataTypes);
         return type;
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/ClassDefinitionGeneratorTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/ClassDefinitionGeneratorTest.java
index c61a13b..d53ccd3 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/ClassDefinitionGeneratorTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/ClassDefinitionGeneratorTest.java
@@ -22,7 +22,7 @@
 import org.junit.Test;
 
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 import static org.junit.Assert.assertThat;
 import static org.onosproject.yangutils.translator.tojava.GeneratedJavaFileType.BUILDER_CLASS_MASK;
 import static org.onosproject.yangutils.translator.tojava.GeneratedJavaFileType.BUILDER_INTERFACE_MASK;
@@ -62,7 +62,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -71,7 +71,6 @@
      */
     @Test
     public void generateBuilderClassDefinitionTest() {
-
         String builderClassDefinition = generateClassDefinition(BUILDER_CLASS_MASK, CLASS_NAME);
         assertThat(true, is(builderClassDefinition.equals(BUILDER_CLASS_DEF)));
     }
@@ -81,7 +80,6 @@
      */
     @Test
     public void generateBuilderInterfaceDefinitionTest() {
-
         String builderInterfaceDefinition = generateClassDefinition(BUILDER_INTERFACE_MASK, CLASS_NAME);
         assertThat(true, is(builderInterfaceDefinition.equals(BULDER_INTERFACE_CLASS_DEF)));
     }
@@ -91,7 +89,6 @@
      */
     @Test
     public void generateImplDefinitionTest() {
-
         String implDefinition = generateClassDefinition(IMPL_CLASS_MASK, CLASS_NAME);
         assertThat(true, is(implDefinition.equals(IMPL_CLASS_DEF)));
     }
@@ -101,7 +98,6 @@
      */
     @Test
     public void generateinterfaceDefinitionTest() {
-
         String interfaceDefinition = generateClassDefinition(INTERFACE_MASK, CLASS_NAME);
         assertThat(true, is(interfaceDefinition.equals(INTERFACE_CLASS_DEF)));
     }
@@ -111,7 +107,6 @@
      */
     @Test
     public void generateTypeDefTest() {
-
         String typeDef = generateClassDefinition(GENERATE_TYPEDEF_CLASS, CLASS_NAME);
         assertThat(true, is(typeDef.equals(TYPE_DEF_CLASS_DEF)));
     }
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGenTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGenTest.java
index 22daf1a..e12a230 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGenTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGenTest.java
@@ -24,7 +24,7 @@
 
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 import static org.onosproject.yangutils.translator.tojava.GeneratedJavaFileType.INTERFACE_MASK;
 import static org.onosproject.yangutils.translator.tojava.utils.JavaCodeSnippetGen.getImportText;
 import static org.onosproject.yangutils.translator.tojava.utils.JavaCodeSnippetGen.getJavaAttributeDefination;
@@ -75,7 +75,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -84,7 +84,6 @@
      */
     @Test
     public void testForImportText() {
-
         JavaQualifiedTypeInfo importInfo = new JavaQualifiedTypeInfo();
         importInfo.setPkgInfo(PKG_INFO);
         importInfo.setClassInfo(CLASS_INFO);
@@ -99,11 +98,9 @@
      */
     @Test
     public void testForJavaClassDefStart() {
-
         String classDef = getJavaClassDefStart(FILE_GEN_TYPE, YANG_NAME);
         assertThat(true, is(classDef
                 .equals(PUBLIC + SPACE + INTERFACE + SPACE + YANG_NAME + SPACE + OPEN_CURLY_BRACKET + NEW_LINE)));
-
     }
 
     /**
@@ -111,7 +108,6 @@
      */
     @Test
     public void testForListAttribute() {
-
         String listAttribute = getListAttribute(STRING_DATA_TYPE);
         assertThat(true,
                 is(listAttribute.equals(LIST + DIAMOND_OPEN_BRACKET + STRING_DATA_TYPE + DIAMOND_CLOSE_BRACKET)));
@@ -122,7 +118,6 @@
      */
     @Test
     public void testForJavaClassDefClose() {
-
         String interfaceDef = getJavaClassDefClose();
         assertThat(true, is(interfaceDef.equals(CLOSE_CURLY_BRACKET)));
     }
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 d4a51d8..edcc013 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
@@ -22,7 +22,7 @@
 import org.junit.Test;
 
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 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;
@@ -30,7 +30,6 @@
 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;
 
@@ -79,7 +78,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -88,7 +87,6 @@
      */
     @Test
     public void getRootPackageTest() {
-
         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));
@@ -99,7 +97,6 @@
      */
     @Test
     public void getRootPackageWithSpecialCharactersTest() {
-
         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));
@@ -113,7 +110,6 @@
      */
     @Test
     public void getRootPackageWithRevTest() {
-
         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),
@@ -125,7 +121,6 @@
      */
     @Test
     public void getCapitalCaseTest() {
-
         String capitalCase = getCaptialCase(WITHOUT_CAPITAL);
         assertThat(capitalCase.equals(WITH_CAPITAL), is(true));
     }
@@ -135,7 +130,6 @@
      */
     @Test
     public void getCamelCaseTest() {
-
         String camelCase = getCamelCase(WITHOUT_CAMEL_CASE);
         assertThat(camelCase.equals(WITH_CAMEL_CASE), is(true));
     }
@@ -145,7 +139,6 @@
      */
     @Test
     public void getSmallCaseTest() {
-
         String smallCase = getSmallCase(WITHOUT_CAPITAL);
         assertThat(smallCase.equals(WITH_SMALL), is(true));
     }
@@ -155,7 +148,6 @@
      */
     @Test
     public void getPackageFromPathTest() {
-
         String pkg = getJavaPackageFromPackagePath(PARENT_PACKAGE);
         assertThat(pkg.equals(PARENT_WITH_PERIOD), is(true));
     }
@@ -165,18 +157,7 @@
      */
     @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));
-    }
 }
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGeneratorTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGeneratorTest.java
index cf1a110..370df8d 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGeneratorTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGeneratorTest.java
@@ -25,7 +25,7 @@
 import org.onosproject.yangutils.translator.tojava.JavaQualifiedTypeInfo;
 
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 import static org.junit.Assert.assertThat;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.STRING;
 import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getCaptialCase;
@@ -108,7 +108,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -117,7 +117,6 @@
      */
     @Test
     public void getTypeDefConstructorTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String test = getTypeDefConstructor(testAttr, CLASS_NAME);
         assertThat(true, is(test.contains(PUBLIC + SPACE + CLASS_NAME + OPEN_PARENTHESIS)));
@@ -128,7 +127,6 @@
      */
     @Test
     public void getBuildTest() {
-
         String method = getBuild(CLASS_NAME);
         assertThat(true, is(method.equals(FOUR_SPACE_INDENTATION + PUBLIC + SPACE + CLASS_NAME + SPACE + BUILD
                 + OPEN_PARENTHESIS + CLOSE_PARENTHESIS + SPACE + OPEN_CURLY_BRACKET + NEW_LINE + EIGHT_SPACE_INDENTATION
@@ -142,7 +140,6 @@
      */
     @Test
     public void getBuildForInterfaceTest() {
-
         String method = getBuildForInterface(CLASS_NAME);
         assertThat(true, is(method.equals(FOUR_SPACE_INDENTATION + CLASS_NAME + SPACE + BUILD +
                 OPEN_PARENTHESIS + CLOSE_PARENTHESIS + SEMI_COLAN + NEW_LINE)));
@@ -153,7 +150,6 @@
      */
     @Test
     public void getCheckNotNullTest() {
-
         String method = getCheckNotNull(CLASS_NAME);
         assertThat(true, is(method.equals(EIGHT_SPACE_INDENTATION + CHECK_NOT_NULL_STRING + OPEN_PARENTHESIS
                 + CLASS_NAME + COMMA + SPACE + CLASS_NAME + CLOSE_PARENTHESIS + SEMI_COLAN + NEW_LINE)));
@@ -164,7 +160,6 @@
      */
     @Test
     public void getConstructorTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getConstructor(CLASS_NAME, testAttr);
         assertThat(true, is(method.contains(THIS + PERIOD + CLASS_NAME + SPACE + EQUAL + SPACE + "builder" + OBJECT
@@ -176,7 +171,6 @@
      */
     @Test
     public void getConstructorStartTest() {
-
         String method = getConstructorStart(CLASS_NAME);
         assertThat(true, is(method.contains(PUBLIC + SPACE + CLASS_NAME + IMPL + OPEN_PARENTHESIS + CLASS_NAME
                 + BUILDER + SPACE + BUILDER.toLowerCase() + OBJECT + CLOSE_PARENTHESIS + SPACE
@@ -188,7 +182,6 @@
      */
     @Test
     public void getEqualsMethodTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getEqualsMethod(testAttr);
         assertThat(true, is(method.contains(SIXTEEN_SPACE_INDENTATION + SPACE + OBJECT_STRING + SUFFIX_S + PERIOD
@@ -200,7 +193,6 @@
      */
     @Test
     public void getToStringMethodTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getToStringMethod(testAttr);
         assertThat(true, is(method.equals(
@@ -213,7 +205,6 @@
      */
     @Test
     public void getGetterForClassTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getGetterForClass(testAttr);
         assertThat(true, is(method.contains(PUBLIC + SPACE + STRING_DATA_TYPE + SPACE + GET_METHOD_PREFIX)));
@@ -224,7 +215,6 @@
      */
     @Test
     public void getGetterForInterfaceTest() {
-
         String method = getGetterForInterface(CLASS_NAME, STRING_DATA_TYPE, false);
         assertThat(true, is(method.contains(STRING_DATA_TYPE + SPACE + GET_METHOD_PREFIX)));
     }
@@ -234,7 +224,6 @@
      */
     @Test
     public void getSetterForClassTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getSetterForClass(testAttr, CLASS_NAME);
         assertThat(true, is(
@@ -248,7 +237,6 @@
      */
     @Test
     public void getSetterForInterfaceTest() {
-
         String method = getSetterForInterface(CLASS_NAME, STRING_DATA_TYPE, CLASS_NAME, false);
         assertThat(true, is(method.contains(CLASS_NAME + BUILDER + SPACE + SET_METHOD_PREFIX + "Testname")));
     }
@@ -258,7 +246,6 @@
      */
     @Test
     public void getOfMethodest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getOfMethod(CLASS_NAME, testAttr);
         assertThat(true, is(method.contains(PUBLIC + SPACE + STATIC + SPACE + CLASS_NAME + SPACE + OF + OPEN_PARENTHESIS
@@ -270,7 +257,6 @@
      */
     @Test
     public void getSetterForTypeDefClassTest() {
-
         JavaAttributeInfo testAttr = getTestAttribute();
         String method = getSetterForTypeDefClass(testAttr);
         assertThat(true, is(method.contains(PUBLIC + SPACE + VOID + SPACE + SET_METHOD_PREFIX)));
@@ -281,7 +267,6 @@
      */
     @Test
     public void getOverRideStringTest() {
-
         String method = getOverRideString();
         assertThat(true, is(method.contains(OVERRIDE)));
     }
@@ -292,7 +277,6 @@
      * @return java attribute
      */
     private JavaAttributeInfo getTestAttribute() {
-
         JavaAttributeInfo testAttr = new JavaAttributeInfo(getTestYangType(), ATTRIBUTE_NAME, false, false);
         testAttr.setAttributeName(ATTRIBUTE_NAME);
         testAttr.setAttributeType(getTestYangType());
@@ -306,7 +290,6 @@
      * @return java qualified info
      */
     private JavaQualifiedTypeInfo getTestJavaQualifiedTypeInfo() {
-
         JavaQualifiedTypeInfo info = new JavaQualifiedTypeInfo();
         info.setPkgInfo(JAVA_LANG);
         info.setClassInfo(STRING_DATA_TYPE);
@@ -319,7 +302,6 @@
      * @return test YANG type
      */
     private YangType<?> getTestYangType() {
-
         YangType<?> attrType = new YangType<>();
         attrType.setDataTypeName(STRING_DATA_TYPE);
         attrType.setDataType(STRING);
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/UtilConstantsTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/UtilConstantsTest.java
index 6a02ca1..49347fb 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/UtilConstantsTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/UtilConstantsTest.java
@@ -16,12 +16,15 @@
 
 package org.onosproject.yangutils.utils;
 
-import org.junit.Test;
-import org.junit.Rule;
-import org.junit.rules.ExpectedException;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
-import static org.junit.Assert.assertNotNull;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+
+import static org.hamcrest.core.IsNot.not;
+import static org.junit.Assert.assertThat;
 
 /**
  * Test case for testing the util constants.
@@ -43,13 +46,13 @@
      */
     @Test
     public void callPrivateConstructors() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
-    InstantiationException, IllegalAccessException, InvocationTargetException {
+            InstantiationException, IllegalAccessException, InvocationTargetException {
 
-        Class<?>[] classesToConstruct = {UtilConstants.class};
+        Class<?>[] classesToConstruct = {UtilConstants.class };
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 }
\ No newline at end of file
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/CopyrightHeaderTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/CopyrightHeaderTest.java
index f37805f..3950d56 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/CopyrightHeaderTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/CopyrightHeaderTest.java
@@ -16,27 +16,24 @@
 
 package org.onosproject.yangutils.utils.io.impl;
 
-import org.junit.Test;
-import org.junit.Rule;
-import org.junit.rules.ExpectedException;
-
-import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertNotNull;
-import org.slf4j.Logger;
-import static org.slf4j.LoggerFactory.getLogger;
-
-import java.io.BufferedReader;
 import java.io.File;
-import java.io.FileOutputStream;
-import java.io.FileReader;
 import java.io.FileWriter;
 import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
 
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.slf4j.Logger;
+
+import static org.apache.commons.io.FileUtils.contentEquals;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.utils.io.impl.CopyrightHeader.getCopyrightHeader;
+import static org.slf4j.LoggerFactory.getLogger;
+
 /**
  * Unit Tests for the CopyrightHeader contents.
  */
@@ -59,47 +56,34 @@
      */
     @Test
     public void callPrivateConstructors() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
-    InstantiationException, IllegalAccessException, InvocationTargetException {
+            InstantiationException, IllegalAccessException, InvocationTargetException {
 
         Class<?>[] classesToConstruct = {CopyrightHeader.class };
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
     /**
      * This test case checks the received copyright header contents.
+     *
+     * @throws IOException when fails to do IO operations
      */
     @Test
     public void testGetCopyrightHeader() throws IOException {
 
-        CopyrightHeader.parseCopyrightHeader();
-        String licenseHeader = CopyrightHeader.getCopyrightHeader();
-        ClassLoader classLoader = CopyrightHeaderTest.class.getClassLoader();
+        String baseDir = System.getProperty("basedir");
+        String path = "/src/test/resources/CopyrightHeader.txt";
+
+        String licenseHeader = getCopyrightHeader();
         File test = new File("target/TestCopyrightHeader.txt");
 
         FileWriter out = new FileWriter(test);
         out.write(licenseHeader);
         out.close();
 
-        File temp = new File("target/temp.txt");
-        InputStream stream = classLoader.getResourceAsStream("CopyrightHeader.txt");
-        OutputStream outStream = new FileOutputStream(temp);
-        int i;
-        while ((i = stream.read()) != -1) {
-            outStream.write(i);
-        }
-        outStream.close();
-        stream.close();
-
-        BufferedReader br1 = new BufferedReader(new FileReader(test));
-        BufferedReader br2 = new BufferedReader(new FileReader(temp));
-        while (br1.readLine() != null && br2.readLine() != null) {
-            assertThat(true, is((br1.readLine()).equals(br2.readLine())));
-        }
-        br1.close();
-        br2.close();
+        assertThat(true, is(contentEquals(test, new File(baseDir + path))));
     }
 }
\ No newline at end of file
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtilTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtilTest.java
index cfa1cf1..c353b6d 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtilTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtilTest.java
@@ -22,10 +22,16 @@
 import java.lang.reflect.InvocationTargetException;
 
 import org.junit.Test;
-import org.onosproject.yangutils.utils.UtilConstants;
 
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.utils.UtilConstants.PERIOD;
+import static org.onosproject.yangutils.utils.UtilConstants.SLASH;
+import static org.onosproject.yangutils.utils.io.impl.FileSystemUtil.appendFileContents;
+import static org.onosproject.yangutils.utils.io.impl.FileSystemUtil.createPackage;
+import static org.onosproject.yangutils.utils.io.impl.FileSystemUtil.doesPackageExist;
+import static org.onosproject.yangutils.utils.io.impl.FileSystemUtil.updateFileHandle;
 
 /**
  * Tests the file handle utilities.
@@ -57,7 +63,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -69,17 +75,17 @@
     @Test
     public void updateFileHandleTest() throws IOException {
 
-        File dir = new File(BASE_PKG + File.separator + "File1");
+        File dir = new File(BASE_PKG + SLASH + "File1");
         dir.mkdirs();
         File createFile = new File(dir + "testFile");
         createFile.createNewFile();
         File createSourceFile = new File(dir + "sourceTestFile");
         createSourceFile.createNewFile();
-        FileSystemUtil.updateFileHandle(createFile, TEST_DATA_1, false);
-        FileSystemUtil.updateFileHandle(createFile, TEST_DATA_2, false);
-        FileSystemUtil.updateFileHandle(createFile, TEST_DATA_3, false);
-        FileSystemUtil.appendFileContents(createFile, createSourceFile);
-        FileSystemUtil.updateFileHandle(createFile, null, true);
+        updateFileHandle(createFile, TEST_DATA_1, false);
+        updateFileHandle(createFile, TEST_DATA_2, false);
+        updateFileHandle(createFile, TEST_DATA_3, false);
+        appendFileContents(createFile, createSourceFile);
+        updateFileHandle(createFile, null, true);
     }
 
     /**
@@ -92,12 +98,12 @@
 
         String dirPath = "exist1.exist2.exist3";
         String strPath = BASE_DIR_PKG + dirPath;
-        File createDir = new File(strPath.replace(UtilConstants.PERIOD, UtilConstants.SLASH));
+        File createDir = new File(strPath.replace(PERIOD, SLASH));
         createDir.mkdirs();
-        File createFile = new File(createDir + File.separator + "package-info.java");
+        File createFile = new File(createDir + SLASH + "package-info.java");
         createFile.createNewFile();
-        assertTrue(FileSystemUtil.doesPackageExist(strPath));
-        FileSystemUtil.createPackage(strPath, PKG_INFO_CONTENT);
+        assertThat(true, is(doesPackageExist(strPath)));
+        createPackage(strPath, PKG_INFO_CONTENT);
         createDir.delete();
     }
 
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/JavaDocGenTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/JavaDocGenTest.java
index 4a1d8de..d0d7704 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/JavaDocGenTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/JavaDocGenTest.java
@@ -16,22 +16,37 @@
 
 package org.onosproject.yangutils.utils.io.impl;
 
-import org.junit.Test;
-import org.junit.Rule;
-import org.junit.rules.ExpectedException;
-import org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType;
-
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
 
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.assertNotNull;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.getJavaDoc;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.BUILDER_CLASS;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.BUILDER_INTERFACE;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.BUILD_METHOD;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.CONSTRUCTOR;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.DEFAULT_CONSTRUCTOR;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.GETTER_METHOD;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.IMPL_CLASS;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.INTERFACE;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.PACKAGE_INFO;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.SETTER_METHOD;
+import static org.onosproject.yangutils.utils.io.impl.JavaDocGen.JavaDocType.TYPE_DEF_SETTER_METHOD;
 
 /**
  * Tests the java doc that is generated.
  */
 public final class JavaDocGenTest {
 
+    private static final String TEST_NAME = "testName";
+    private static final String END_STRING = " */\n";
+
     @Rule
     public ExpectedException thrown = ExpectedException.none();
 
@@ -40,10 +55,9 @@
      */
     @Test
     public void builderClassGenerationTest() {
-
-        String builderClassJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.BUILDER_CLASS, "testGeneration1", false);
-        assertTrue(builderClassJavaDoc.contains("Provides the builder implementation of")
-                && builderClassJavaDoc.contains(" */\n"));
+        String builderClassJavaDoc = getJavaDoc(BUILDER_CLASS, TEST_NAME, false);
+        assertThat(true, is(builderClassJavaDoc.contains("Reperesents the builder implementation of")
+                && builderClassJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -51,9 +65,9 @@
      */
     @Test
     public void builderInterfaceGenerationTest() {
-
-        String builderInterfaceJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.BUILDER_INTERFACE, "testGeneration1", false);
-        assertTrue(builderInterfaceJavaDoc.contains("Builder for") && builderInterfaceJavaDoc.contains(" */\n"));
+        String builderInterfaceJavaDoc = getJavaDoc(BUILDER_INTERFACE, TEST_NAME, false);
+        assertThat(true,
+                is(builderInterfaceJavaDoc.contains("Builder for") && builderInterfaceJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -61,9 +75,8 @@
      */
     @Test
     public void buildGenerationTest() {
-
-        String buildDoc = JavaDocGen.getJavaDoc(JavaDocType.BUILD_METHOD, "testGeneration1", false);
-        assertTrue(buildDoc.contains("Builds object of") && buildDoc.contains(" */\n"));
+        String buildDoc = getJavaDoc(BUILD_METHOD, TEST_NAME, false);
+        assertThat(true, is(buildDoc.contains("Builds object of") && buildDoc.contains(END_STRING)));
     }
 
     /**
@@ -78,13 +91,13 @@
      */
     @Test
     public void callPrivateConstructors() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
-    InstantiationException, IllegalAccessException, InvocationTargetException {
+            InstantiationException, IllegalAccessException, InvocationTargetException {
 
         Class<?>[] classesToConstruct = {JavaDocGen.class };
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -93,12 +106,10 @@
      */
     @Test
     public void constructorGenerationTest() {
-
-        String constructorDoc = JavaDocGen.getJavaDoc(JavaDocType.CONSTRUCTOR, "testGeneration1", false);
-        assertTrue(
-                constructorDoc.contains("Construct the object of") && constructorDoc.contains("builder object of")
-                && constructorDoc.contains("@param") && constructorDoc.contains("*/\n"));
-        JavaDocType.valueOf(JavaDocType.CONSTRUCTOR.toString());
+        String constructorDoc = getJavaDoc(CONSTRUCTOR, TEST_NAME, false);
+        assertThat(true,
+                is(constructorDoc.contains("Creates an instance of ") && constructorDoc.contains("builder object of")
+                        && constructorDoc.contains("@param") && constructorDoc.contains("*/\n")));
     }
 
     /**
@@ -106,9 +117,9 @@
      */
     @Test
     public void defaultConstructorGenerationTest() {
-
-        String defaultConstructorDoc = JavaDocGen.getJavaDoc(JavaDocType.DEFAULT_CONSTRUCTOR, "testGeneration1", false);
-        assertTrue(defaultConstructorDoc.contains("Default Constructor") && defaultConstructorDoc.contains(" */\n"));
+        String defaultConstructorDoc = getJavaDoc(DEFAULT_CONSTRUCTOR, TEST_NAME, false);
+        assertThat(true, is(defaultConstructorDoc.contains("Creates an instance of ")
+                && defaultConstructorDoc.contains(END_STRING)));
     }
 
     /**
@@ -116,9 +127,8 @@
      */
     @Test
     public void getterGenerationTest() {
-
-        String getterJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.GETTER_METHOD, "testGeneration1", false);
-        assertTrue(getterJavaDoc.contains("Returns the attribute") && getterJavaDoc.contains(" */\n"));
+        String getterJavaDoc = getJavaDoc(GETTER_METHOD, TEST_NAME, false);
+        assertThat(true, is(getterJavaDoc.contains("Returns the attribute") && getterJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -126,8 +136,10 @@
      */
     @Test
     public void implClassGenerationTest() {
-        String implClassJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.IMPL_CLASS, "testGeneration1", false);
-        assertTrue(implClassJavaDoc.contains("Provides the implementation of") && implClassJavaDoc.contains(" */\n"));
+        String implClassJavaDoc = getJavaDoc(IMPL_CLASS, TEST_NAME, false);
+        assertThat(true,
+                is(implClassJavaDoc.contains("Reperesents the implementation of")
+                        && implClassJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -135,10 +147,10 @@
      */
     @Test
     public void interfaceGenerationTest() {
-
-        String interfaceJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.INTERFACE, "testGeneration1", false);
-        assertTrue(interfaceJavaDoc.contains("Abstraction of an entity which provides functionalities of")
-                && interfaceJavaDoc.contains(" */\n"));
+        String interfaceJavaDoc = getJavaDoc(INTERFACE, TEST_NAME, false);
+        assertThat(true,
+                is(interfaceJavaDoc.contains("Abstraction of an entity which Reperesents the functionalities of")
+                        && interfaceJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -146,9 +158,8 @@
      */
     @Test
     public void packageInfoGenerationTest() {
-
-        String packageInfo = JavaDocGen.getJavaDoc(JavaDocType.PACKAGE_INFO, "testGeneration1", false);
-        assertTrue(packageInfo.contains("Implementation of YANG file") && packageInfo.contains(" */\n"));
+        String packageInfo = getJavaDoc(PACKAGE_INFO, TEST_NAME, false);
+        assertThat(true, is(packageInfo.contains("Implementation of YANG file") && packageInfo.contains(END_STRING)));
     }
 
     /**
@@ -156,9 +167,9 @@
      */
     @Test
     public void setterGenerationTest() {
-
-        String setterJavaDoc = JavaDocGen.getJavaDoc(JavaDocType.SETTER_METHOD, "testGeneration1", false);
-        assertTrue(setterJavaDoc.contains("Returns the builder object of") && setterJavaDoc.contains(" */\n"));
+        String setterJavaDoc = getJavaDoc(SETTER_METHOD, TEST_NAME, false);
+        assertThat(true,
+                is(setterJavaDoc.contains("Returns the builder object of") && setterJavaDoc.contains(END_STRING)));
     }
 
     /**
@@ -166,8 +177,7 @@
      */
     @Test
     public void typeDefSetterGenerationTest() {
-
-        String typeDefSetter = JavaDocGen.getJavaDoc(JavaDocType.TYPE_DEF_SETTER_METHOD, "testGeneration1", false);
-        assertTrue(typeDefSetter.contains("Sets the value of") && typeDefSetter.contains(" */\n"));
+        String typeDefSetter = getJavaDoc(TYPE_DEF_SETTER_METHOD, TEST_NAME, false);
+        assertThat(true, is(typeDefSetter.contains("Sets the value of") && typeDefSetter.contains(END_STRING)));
     }
 }
\ No newline at end of file
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangFileScannerTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangFileScannerTest.java
index 9ee02a9..6d1bede 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangFileScannerTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangFileScannerTest.java
@@ -28,10 +28,15 @@
 import org.junit.rules.ExpectedException;
 import org.slf4j.Logger;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.utils.io.impl.YangFileScanner.getJavaFiles;
+import static org.onosproject.yangutils.utils.io.impl.YangFileScanner.getYangFiles;
 import static org.slf4j.LoggerFactory.getLogger;
 
+import static java.io.File.separator;
+
 /**
  * Test the file scanner service.
  */
@@ -62,23 +67,25 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
     /**
      * This test case checks for a .java file inside the specified dir.
+     *
+     * @throws IOException when fails to do IO operations
      */
     @Test
     public void checkJavaFileInsideDirTest() throws IOException {
 
-        String dir = baseDir + File.separator + "scanner2";
+        String dir = baseDir + separator + "scanner2";
         File path = createDirectory(dir);
         createFile(path, "testScanner.java");
-        List<String> dirContents = YangFileScanner.getJavaFiles(path.toString());
+        List<String> dirContents = getJavaFiles(path.toString());
         List<String> expectedContents = new LinkedList<>();
-        expectedContents.add(path.getCanonicalPath() + File.separator + "testScanner.java");
-        assertEquals(dirContents, expectedContents);
+        expectedContents.add(path.getCanonicalPath() + separator + "testScanner.java");
+        assertThat(true, is(dirContents.equals(expectedContents)));
     }
 
     /**
@@ -87,7 +94,7 @@
      * @param path where directories should be created
      * @return the directory path that is created
      */
-    public File createDirectory(String path) {
+    private File createDirectory(String path) {
 
         File myDir = new File(path);
         myDir.mkdirs();
@@ -100,67 +107,59 @@
      * @param myDir the path where file has to be created inside
      * @param fileName the name of the file to be created
      */
-    public void createFile(File myDir, String fileName) throws IOException {
+    private void createFile(File myDir, String fileName) throws IOException {
 
         File file = null;
-        file = new File(myDir + File.separator + fileName);
+        file = new File(myDir + separator + fileName);
         file.createNewFile();
     }
 
     /**
      * This testcase checks for a java file inside an empty directory.
+     *
+     * @throws IOException when fails to do IO operations
      */
     @Test
     public void emptyDirJavaScannerTest() throws IOException {
 
-        String emptyDir = baseDir + File.separator + "scanner1";
+        String emptyDir = baseDir + separator + "scanner1";
         File path = createDirectory(emptyDir);
-        List<String> emptyDirContents = YangFileScanner.getJavaFiles(path.toString());
+        List<String> emptyDirContents = getJavaFiles(path.toString());
         List<String> expectedContents = new LinkedList<>();
-        assertEquals(emptyDirContents, expectedContents);
+        assertThat(true, is(emptyDirContents.equals(expectedContents)));
     }
 
     /**
      * This testcase checks for a yang file inside an empty directory.
+     *
+     * @throws IOException when fails to do IO operations
      */
     @Test
     public void emptyDirYangScannerTest() throws IOException {
 
-        String emptyYangDir = baseDir + File.separator + "scanner1";
+        String emptyYangDir = baseDir + separator + "scanner1";
         File path = createDirectory(emptyYangDir);
-        List<String> emptyDirContents = YangFileScanner.getYangFiles(path.toString());
+        List<String> emptyDirContents = getYangFiles(path.toString());
         List<String> expectedContents = new LinkedList<>();
-        assertEquals(emptyDirContents, expectedContents);
+        assertThat(true, is(emptyDirContents.equals(expectedContents)));
     }
 
     /**
      * This test case checks with the sub directories in the given path for java files.
+     *
+     * @throws IOException when fails to do IO operations
      */
     @Test
     public void emptySubDirScannerTest() throws IOException {
 
-        String dir = baseDir + File.separator + "scanner3";
+        String dir = baseDir + separator + "scanner3";
         File path = createDirectory(dir);
-        String subDir = path.toString() + File.separator + "subDir1";
+        String subDir = path.toString() + separator + "subDir1";
         createDirectory(subDir);
         createFile(path, "invalidFile.txt");
-        List<String> emptySubDirContents = YangFileScanner.getJavaFiles(path.toString());
+        List<String> emptySubDirContents = getJavaFiles(path.toString());
         List<String> expectedContents = new LinkedList<>();
-        assertEquals(emptySubDirContents, expectedContents);
+        assertThat(true, is(emptySubDirContents.equals(expectedContents)));
     }
 
-    /**
-     * This test case checks with the sub directories in the given path for java files.
-
-    @Test
-    public void exceptionHandleTest() throws IOException {
-
-        String dir = baseDir + File.separator + "scanner4";
-        thrown.expect(IOException.class);
-        List<String> invalidContents = YangFileScanner.getJavaFiles(dir);
-        File path = createDirectory(dir);
-        createFile(path, "except.java");
-        List<String> dirWithFileName = YangFileScanner
-                .getJavaFiles(path + File.separator + "except.java" + File.separator + "scanner5");
-    }*/
 }
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangIoUtilsTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangIoUtilsTest.java
index 200a448..0c5b9fd 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangIoUtilsTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/utils/io/impl/YangIoUtilsTest.java
@@ -1,4 +1,3 @@
-
 /*
  * Copyright 2016 Open Networking Laboratory
  *
@@ -31,7 +30,7 @@
 import org.sonatype.plexus.build.incremental.DefaultBuildContext;
 
 import static org.hamcrest.core.Is.is;
-import static org.junit.Assert.assertNotNull;
+import static org.hamcrest.core.IsNot.not;
 import static org.junit.Assert.assertThat;
 import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.addPackageInfo;
 import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.addToSource;
@@ -40,7 +39,7 @@
 import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.trimAtLast;
 
 /**
- * Unit tests for YANG io utils.
+ * Unit tests for YANG IO utils.
  */
 public final class YangIoUtilsTest {
 
@@ -119,7 +118,7 @@
         for (Class<?> clazz : classesToConstruct) {
             Constructor<?> constructor = clazz.getDeclaredConstructor();
             constructor.setAccessible(true);
-            assertNotNull(constructor.newInstance());
+            assertThat(null, not(constructor.newInstance()));
         }
     }
 
@@ -183,4 +182,5 @@
         String test = trimAtLast(CHECK_STRING, "six");
         assertThat(test.contains(TRIM_STRING), is(true));
     }
+
 }