multiFileYangTranslator

Change-Id: I2adfef3acaec4bd74ba2c487404d2c655b800988
diff --git a/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java b/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
index 956867d..82e9c3a 100644
--- a/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
+++ b/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
@@ -65,7 +65,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -104,7 +104,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -144,7 +144,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -184,7 +184,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -222,7 +222,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("FirstClass"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -274,7 +274,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("FirstClass"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -325,7 +325,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("FirstClass"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
@@ -377,7 +377,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("FirstClass"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
 
diff --git a/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java b/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
index 472d453..352b3d0 100644
--- a/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
+++ b/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
@@ -80,7 +80,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("hello"));
+        assertThat(leafInfo.getName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -96,7 +96,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under module.
-        assertThat(leafInfo.getLeafName(), is("hello"));
+        assertThat(leafInfo.getName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -134,7 +134,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("treat"));
+        assertThat(leafInfo.getName(), is("treat"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -149,7 +149,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under container which is under grouping.
-        assertThat(leafInfo.getLeafName(), is("leaf2"));
+        assertThat(leafInfo.getName(), is("leaf2"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -165,7 +165,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under module.
-        assertThat(leafInfo.getLeafName(), is("treat"));
+        assertThat(leafInfo.getName(), is("treat"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -180,7 +180,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under container which is under module.
-        assertThat(leafInfo.getLeafName(), is("leaf2"));
+        assertThat(leafInfo.getName(), is("leaf2"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
     }
@@ -227,7 +227,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under list which is under grouping.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -253,7 +253,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under list which is deep copied.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -282,7 +282,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under list which is deep copied.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -353,7 +353,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under design-container.
-        assertThat(leafInfo.getLeafName(), is("ink"));
+        assertThat(leafInfo.getName(), is("ink"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("int32"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.INT32));
 
@@ -374,7 +374,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under correct-container.
-        assertThat(leafInfo.getLeafName(), is("newone"));
+        assertThat(leafInfo.getName(), is("newone"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -397,7 +397,7 @@
 
         // Check whether the information in the leaf is correct under container
         // which has been deep copied from grouping.
-        assertThat(leafInfo.getLeafName(), is("zip-code"));
+        assertThat(leafInfo.getName(), is("zip-code"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -426,7 +426,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under list which has been deep copied from grouping.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -441,7 +441,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("zip-code"));
+        assertThat(leafInfo.getName(), is("zip-code"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -517,7 +517,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("carry"));
+        assertThat(leafInfo.getName(), is("carry"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -550,7 +550,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under list.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
     }
@@ -687,7 +687,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("hello"));
+        assertThat(leafInfo.getName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
 
@@ -761,7 +761,7 @@
         leafInfo = leafIterator.next();
 
         // Check whether the information in the leaf is correct under grouping.
-        assertThat(leafInfo.getLeafName(), is("hello"));
+        assertThat(leafInfo.getName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("String"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
     }
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/AugmentListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/AugmentListenerTest.java
index bb59e65..3ce2fd0 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/AugmentListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/AugmentListenerTest.java
@@ -62,7 +62,7 @@
         ListIterator<YangLeaf> leafIterator = yangAugment.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("ds0ChannelNumber"));
+        assertThat(leafInfo.getName(), is("ds0ChannelNumber"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("ChannelNumber"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
     }
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/BitListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/BitListenerTest.java
index b5bc1c5..3aceb34 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/BitListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/BitListenerTest.java
@@ -61,7 +61,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("mybits"));
+        assertThat(leafInfo.getName(), is("mybits"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("bits"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.BITS));
         assertThat(((YangBits) leafInfo.getDataType().getDataTypeExtendedInfo()).getBitsName(),
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/CaseListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/CaseListenerTest.java
index a403c5a..675a9e9 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/CaseListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/CaseListenerTest.java
@@ -70,7 +70,7 @@
         ListIterator<YangLeaf> leafIterator1 = yangCase1.getListOfLeaf().listIterator();
         YangLeaf leafInfo1 = leafIterator1.next();
 
-        assertThat(leafInfo1.getLeafName(), is("pretzel"));
+        assertThat(leafInfo1.getName(), is("pretzel"));
 
         YangCase yangCase2 = (YangCase) yangCase1.getNextSibling();
         assertThat(yangCase2.getName(), is("late-night"));
@@ -79,7 +79,7 @@
         ListIterator<YangLeaf> leafIterator2 = yangCase2.getListOfLeaf().listIterator();
         YangLeaf leafInfo2 = leafIterator2.next();
 
-        assertThat(leafInfo2.getLeafName(), is("chocolate"));
+        assertThat(leafInfo2.getName(), is("chocolate"));
     }
 
     /**
@@ -140,7 +140,7 @@
         ListIterator<YangLeaf> leafIterator1 = yangCase1.getListOfLeaf().listIterator();
         YangLeaf leafInfo1 = leafIterator1.next();
 
-        assertThat(leafInfo1.getLeafName(), is("pretzel"));
+        assertThat(leafInfo1.getName(), is("pretzel"));
 
         YangChoice yangChoice2 = (YangChoice) yangChoice.getNextSibling();
         assertThat(yangChoice2.getName(), is("lunch"));
@@ -152,7 +152,7 @@
         ListIterator<YangLeaf> leafIterator2 = yangCase2.getListOfLeaf().listIterator();
         YangLeaf leafInfo2 = leafIterator2.next();
 
-        assertThat(leafInfo2.getLeafName(), is("chocolate"));
+        assertThat(leafInfo2.getName(), is("chocolate"));
     }
 
     /**
@@ -186,7 +186,7 @@
         ListIterator<YangLeaf> leafIterator1 = yangCase1.getListOfLeaf().listIterator();
         YangLeaf leafInfo1 = leafIterator1.next();
 
-        assertThat(leafInfo1.getLeafName(), is("pretzel"));
+        assertThat(leafInfo1.getName(), is("pretzel"));
 
         YangCase yangCase2 = (YangCase) yangCase1.getNextSibling();
         assertThat(yangCase2.getName(), is("late-night"));
@@ -200,6 +200,6 @@
         // Check whether leaf properties as set correctly.
         ListIterator<YangLeaf> leafIterator2 = yangCase3.getListOfLeaf().listIterator();
         YangLeaf leafInfo2 = leafIterator2.next();
-        assertThat(leafInfo2.getLeafName(), is("beer"));
+        assertThat(leafInfo2.getName(), is("beer"));
     }
 }
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ConfigListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ConfigListenerTest.java
index 210b2d9..439832f 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ConfigListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ConfigListenerTest.java
@@ -68,7 +68,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the Config value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isConfig(), is(true));
     }
 
@@ -94,7 +94,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the Config value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isConfig(), is(false));
     }
 
@@ -168,7 +168,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -204,7 +204,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -236,7 +236,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether config value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.isConfig(), is(true));
     }
 
@@ -262,7 +262,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isConfig(), is(true));
     }
 
@@ -367,7 +367,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether config value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.isConfig(), is(true));
 
     }
@@ -395,7 +395,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isConfig(), is(true));
     }
 
@@ -475,7 +475,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether config value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.isConfig(), is(true));
     }
 
@@ -502,7 +502,7 @@
         ListIterator<YangLeaf> leafIterator = list1.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isConfig(), is(true));
     }
 
@@ -531,4 +531,4 @@
         assertThat(childList.getName(), is("list1"));
         assertThat(childList.isConfig(), is(true));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ContainerListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ContainerListenerTest.java
index 4e7e31b..a149da2 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ContainerListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ContainerListenerTest.java
@@ -192,7 +192,7 @@
         ListIterator<YangLeaf> leafIterator = yangContainer.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/DescriptionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/DescriptionListenerTest.java
index fcaf670..c3989a6 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/DescriptionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/DescriptionListenerTest.java
@@ -68,7 +68,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the description is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDescription(), is("\"Interval before a route is declared invalid\""));
     }
 
@@ -176,7 +176,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -213,7 +213,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -245,7 +245,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether description value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDescription(), is("\"Interval before a route is declared invalid\""));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/EnumListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/EnumListenerTest.java
index 67ef587..6f13667 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/EnumListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/EnumListenerTest.java
@@ -61,7 +61,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("speed"));
+        assertThat(leafInfo.getName(), is("speed"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("enumeration"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.ENUMERATION));
         assertThat(((YangEnumeration) leafInfo.getDataType().getDataTypeExtendedInfo()).getName(),
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/GroupingListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/GroupingListenerTest.java
index e9b12bc..acd0c8a 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/GroupingListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/GroupingListenerTest.java
@@ -64,7 +64,7 @@
         ListIterator<YangLeaf> leafIterator = yangGrouping.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("address"));
+        assertThat(leafInfo.getName(), is("address"));
     }
 
     /**
@@ -94,7 +94,7 @@
         ListIterator<YangLeaf> leafIterator = yangGrouping.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("address"));
+        assertThat(leafInfo.getName(), is("address"));
     }
 
     /**
@@ -124,7 +124,7 @@
         ListIterator<YangLeaf> leafIterator = yangGrouping.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("address"));
+        assertThat(leafInfo.getName(), is("address"));
     }
 
     /**
@@ -157,7 +157,7 @@
         ListIterator<YangLeaf> leafIterator = yangGrouping.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("address"));
+        assertThat(leafInfo.getName(), is("address"));
     }
 
     /**
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/InputListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/InputListenerTest.java
index 61775f6..c85c1d5 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/InputListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/InputListenerTest.java
@@ -65,7 +65,7 @@
         ListIterator<YangLeaf> leafIterator = yangInput.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("image-name"));
+        assertThat(leafInfo.getName(), is("image-name"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
 
         YangList yangList = (YangList) yangInput.getChild();
@@ -76,7 +76,7 @@
         assertThat(yangList.getMinElements(), is(3));
         leafIterator = yangList.getListOfLeaf().listIterator();
         leafInfo = leafIterator.next();
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
 
         YangContainer yangContainer = (YangContainer) yangList.getNextSibling();
@@ -84,7 +84,7 @@
 
         leafIterator = yangContainer.getListOfLeaf().listIterator();
         leafInfo = leafIterator.next();
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
     }
 
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListListenerTest.java
index dec9df1..fe918fa 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListListenerTest.java
@@ -66,7 +66,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafListInfo.getUnits(), is("\"seconds\""));
@@ -161,7 +161,7 @@
         ListIterator<YangLeafList> leafListIterator = container.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafListInfo.getUnits(), is("\"seconds\""));
@@ -198,7 +198,7 @@
         ListIterator<YangLeafList> leafListIterator = yangList.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafListInfo.getUnits(), is("\"seconds\""));
@@ -208,4 +208,4 @@
         assertThat(leafListInfo.getStatus(), is(YangStatusType.CURRENT));
         assertThat(leafListInfo.getReference(), is("\"RFC 6020\""));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListenerTest.java
index bd53d76..186d549 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LeafListenerTest.java
@@ -67,7 +67,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -161,7 +161,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -224,7 +224,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LengthRestrictionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LengthRestrictionListenerTest.java
index a8f494b..513c7ed 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LengthRestrictionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/LengthRestrictionListenerTest.java
@@ -67,7 +67,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafInfo
@@ -99,7 +99,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
@@ -167,7 +167,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
@@ -199,7 +199,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ListListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ListListenerTest.java
index 2ab279d..526a645 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ListListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ListListenerTest.java
@@ -161,7 +161,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -208,4 +208,4 @@
         thrown.expectMessage("YANG file error : list name 1valid is not valid.");
         YangNode node = manager.getDataModel("src/test/resources/ListInvalidIdentifier.yang");
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListenerTest.java
index ca4d2f0..246d4b0 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListenerTest.java
@@ -64,7 +64,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the mandatory value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isMandatory(), is(true));
     }
 
@@ -90,7 +90,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the mandatory value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isMandatory(), is(false));
     }
 
@@ -116,7 +116,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the mandatory value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.isMandatory(), is(false));
     }
 
@@ -154,4 +154,4 @@
                 + " 'revision', 'rpc', 'typedef', 'uses', '}'}");
         YangNode node = manager.getDataModel("src/test/resources/ModuleSubStatementMandatory.yang");
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MaxElementsListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MaxElementsListenerTest.java
index 1097b75..c531b85 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MaxElementsListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MaxElementsListenerTest.java
@@ -64,7 +64,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getMaxElelements(), is(3));
     }
 
@@ -148,7 +148,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getMaxElelements(), is(2147483647));
     }
 
@@ -173,7 +173,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getMaxElelements(), is(2147483647));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MinElementsListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MinElementsListenerTest.java
index 0ce767c..bf1afb8 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MinElementsListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/MinElementsListenerTest.java
@@ -64,7 +64,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getMinElements(), is(3));
     }
 
@@ -159,7 +159,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getMinElements(), is(0));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NotificationListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NotificationListenerTest.java
index 59eace7..3b9907e 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NotificationListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NotificationListenerTest.java
@@ -65,7 +65,7 @@
         ListIterator<YangLeaf> leafIterator = yangNotification.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("if-name"));
+        assertThat(leafInfo.getName(), is("if-name"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("leafref"));
     }
 }
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/OutputListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/OutputListenerTest.java
index 2ea9347..a727092 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/OutputListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/OutputListenerTest.java
@@ -64,7 +64,7 @@
         ListIterator<YangLeaf> leafIterator = yangOutput.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("image-name"));
+        assertThat(leafInfo.getName(), is("image-name"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
 
         YangList yangList = (YangList) yangOutput.getChild();
@@ -75,7 +75,7 @@
         assertThat(yangList.getMinElements(), is(3));
         leafIterator = yangList.getListOfLeaf().listIterator();
         leafInfo = leafIterator.next();
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
 
         YangContainer yangContainer = (YangContainer) yangList.getNextSibling();
@@ -83,7 +83,7 @@
 
         leafIterator = yangContainer.getListOfLeaf().listIterator();
         leafInfo = leafIterator.next();
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
     }
 
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PatternRestrictionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PatternRestrictionListenerTest.java
index fb0ec72..00db373 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PatternRestrictionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PatternRestrictionListenerTest.java
@@ -58,7 +58,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafInfo
@@ -84,7 +84,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
@@ -131,7 +131,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
@@ -157,7 +157,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("string"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.STRING));
         YangStringRestriction stringRestriction = (YangStringRestriction) leafListInfo
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PositionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PositionListenerTest.java
index 9b3a192..7d252ba 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PositionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/PositionListenerTest.java
@@ -61,7 +61,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("mybits"));
+        assertThat(leafInfo.getName(), is("mybits"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("bits"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.BITS));
         assertThat(((YangBits) leafInfo.getDataType().getDataTypeExtendedInfo()).getBitsName(),
@@ -100,7 +100,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("mybits"));
+        assertThat(leafInfo.getName(), is("mybits"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("bits"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.BITS));
         assertThat(((YangBits) leafInfo.getDataType().getDataTypeExtendedInfo()).getBitsName(),
@@ -139,7 +139,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("mybits"));
+        assertThat(leafInfo.getName(), is("mybits"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("bits"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.BITS));
         assertThat(((YangBits) leafInfo.getDataType().getDataTypeExtendedInfo()).getBitsName(),
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/RangeRestrictionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/RangeRestrictionListenerTest.java
index 3ae527b..7935abc 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/RangeRestrictionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/RangeRestrictionListenerTest.java
@@ -63,7 +63,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("int32"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.INT32));
         YangRangeRestriction rangeRestriction = (YangRangeRestriction) leafInfo
@@ -92,7 +92,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("int32"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.INT32));
         YangRangeRestriction rangeRestriction = (YangRangeRestriction) leafListInfo
@@ -122,7 +122,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("int32"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.INT32));
         YangRangeRestriction rangeRestriction = (YangRangeRestriction) leafListInfo
@@ -152,7 +152,7 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("int32"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.INT32));
         YangRangeRestriction rangeRestriction = (YangRangeRestriction) leafListInfo
@@ -175,4 +175,4 @@
         thrown.expectMessage("YANG file error : a is not valid.");
         YangNode node = manager.getDataModel("src/test/resources/RangeWithInvalidIntegerPattern.yang");
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ReferenceListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ReferenceListenerTest.java
index 6d1ef93..17a679a 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ReferenceListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ReferenceListenerTest.java
@@ -68,7 +68,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the reference is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getReference(), is("\"RFC 6020\""));
     }
 
@@ -175,7 +175,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -212,7 +212,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -244,7 +244,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether description value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getReference(), is("\"RFC 6020\""));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/StatusListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/StatusListenerTest.java
index 8e44429..7f0d1ea 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/StatusListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/StatusListenerTest.java
@@ -68,7 +68,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the status is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getStatus(), is(YangStatusType.CURRENT));
     }
 
@@ -94,7 +94,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the status is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getStatus(), is(YangStatusType.DEPRECATED));
     }
 
@@ -120,7 +120,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether the status is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getStatus(), is(YangStatusType.OBSOLETE));
     }
 
@@ -185,7 +185,7 @@
         ListIterator<YangLeaf> leafIterator = container.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -222,7 +222,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
@@ -254,7 +254,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether status is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.isConfig(), is(true));
         assertThat(leafListInfo.getStatus(), is(YangStatusType.CURRENT));
     }
@@ -281,8 +281,8 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether status is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.isConfig(), is(true));
         assertThat(leafListInfo.getStatus(), is(YangStatusType.CURRENT));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/TypeListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/TypeListenerTest.java
index b3e4351..1737ea6 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/TypeListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/TypeListenerTest.java
@@ -58,7 +58,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("hello"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.DERIVED));
     }
@@ -84,7 +84,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
     }
@@ -110,8 +110,8 @@
         ListIterator<YangLeafList> leafListIterator = yangNode.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.UINT16));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnionListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnionListenerTest.java
index d05a42c..1ac199f 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnionListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnionListenerTest.java
@@ -66,7 +66,7 @@
         ListIterator<YangLeaf> leafIterator = yangList.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
 
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.UNION));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("union"));
@@ -110,7 +110,7 @@
         ListIterator<YangLeafList> leafListIterator = yangList.getListOfLeafList().listIterator();
         YangLeafList leafListInfo = leafListIterator.next();
 
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
 
         assertThat(leafListInfo.getDataType().getDataType(), is(YangDataTypes.UNION));
         assertThat(leafListInfo.getDataType().getDataTypeName(), is("union"));
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnitsListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnitsListenerTest.java
index 19b8730..6479991 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnitsListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/UnitsListenerTest.java
@@ -66,7 +66,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether units value is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
     }
 
@@ -115,7 +115,7 @@
         YangLeaf leafInfo = leafIterator.next();
 
         // Check whether leaf properties is set correctly.
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("uint16"));
         assertThat(leafInfo.getUnits(), is("\"seconds\""));
         assertThat(leafInfo.getDescription(), is("\"Interval before a route is declared invalid\""));
@@ -146,7 +146,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafInfo.getName(), is("invalid-interval"));
         assertThat(leafInfo.getUnits(), is(nullValue()));
     }
 
@@ -182,7 +182,7 @@
         YangLeafList leafListInfo = leafListIterator.next();
 
         // Check whether units value is set correctly.
-        assertThat(leafListInfo.getLeafName(), is("invalid-interval"));
+        assertThat(leafListInfo.getName(), is("invalid-interval"));
         assertThat(leafListInfo.getUnits(), is("\"seconds\""));
     }
-}
\ No newline at end of file
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ValueListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ValueListenerTest.java
index fb7c1d0..f0d5357 100644
--- a/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ValueListenerTest.java
+++ b/src/test/java/org/onosproject/yangutils/parser/impl/listeners/ValueListenerTest.java
@@ -61,7 +61,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("speed"));
+        assertThat(leafInfo.getName(), is("speed"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("enumeration"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.ENUMERATION));
         assertThat(((YangEnumeration) leafInfo.getDataType().getDataTypeExtendedInfo()).getName(),
@@ -100,7 +100,7 @@
         ListIterator<YangLeaf> leafIterator = yangNode.getListOfLeaf().listIterator();
         YangLeaf leafInfo = leafIterator.next();
 
-        assertThat(leafInfo.getLeafName(), is("speed"));
+        assertThat(leafInfo.getName(), is("speed"));
         assertThat(leafInfo.getDataType().getDataTypeName(), is("enumeration"));
         assertThat(leafInfo.getDataType().getDataType(), is(YangDataTypes.ENUMERATION));
         assertThat(((YangEnumeration) leafInfo.getDataType().getDataTypeExtendedInfo()).getName(),
diff --git a/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerErrorMessageConstructionTest.java b/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerErrorMessageConstructionTest.java
new file mode 100644
index 0000000..d10e009
--- /dev/null
+++ b/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerErrorMessageConstructionTest.java
@@ -0,0 +1,96 @@
+/*
+ * Copyright 2016-present Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.yangutils.parser.parseutils;
+
+import org.junit.Test;
+
+import static org.hamcrest.core.Is.is;
+import static org.junit.Assert.assertThat;
+import static org.onosproject.yangutils.utils.YangConstructType.CONTACT_DATA;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructExtendedListenerErrorMessage;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER;
+
+/**
+ * Test case for testing listener error message construction util.
+ */
+public class ListenerErrorMessageConstructionTest {
+
+    /**
+     * Checks for error message construction with parsable data type name.
+     */
+    @Test
+    public void checkErrorMsgConstructionWithName() {
+
+        // Create an test error message
+        String testErrorMessage = constructListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "Test Instance", ENTRY);
+
+        // Check message.
+        assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact "
+                + "\"Test Instance\" before processing."));
+    }
+
+    /**
+     * Checks for error message construction without parsable data type name.
+     */
+    @Test
+    public void checkErrorMsgConstructionWithoutName() {
+
+        // Create an test error message
+        String testErrorMessage = constructListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "Test Instance", ENTRY);
+
+        // Check message.
+        assertThat(testErrorMessage,
+                   is("Internal parser error detected: Invalid holder for contact \"Test Instance\""
+                           + " before processing."));
+    }
+
+    /**
+     * Checks for extended error message construction with parsable data type
+     * name.
+     */
+    @Test
+    public void checkExtendedErrorMsgConstructionWithName() {
+
+        // Create an test error message
+        String testErrorMessage = constructExtendedListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA,
+                                                                        "Test Instance", ENTRY,
+                                                                        "Extended Information");
+
+        // Check message.
+        assertThat(testErrorMessage,
+                   is("Internal parser error detected: Invalid holder for contact \"Test Instance\""
+                           + " before processing.\n" + "Error Information: Extended Information"));
+    }
+
+    /**
+     * Checks for extended error message construction without parsable data type
+     * name.
+     */
+    @Test
+    public void checkExtendedErrorMsgConstructionWithoutName() {
+
+        // Create an test error message
+        String testErrorMessage = constructExtendedListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "", ENTRY,
+                                                                        "Extended Information");
+
+        // Check message.
+        assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact"
+                + " before processing.\n" + "Error Information: Extended Information"));
+    }
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerValidationTest.java b/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerValidationTest.java
new file mode 100644
index 0000000..f4e284e
--- /dev/null
+++ b/src/test/java/org/onosproject/yangutils/parser/parseutils/ListenerValidationTest.java
@@ -0,0 +1,112 @@
+/*
+ * Copyright 2016-present Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.yangutils.parser.parseutils;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.onosproject.yangutils.datamodel.YangRevision;
+import org.onosproject.yangutils.parser.exceptions.ParserException;
+import org.onosproject.yangutils.parser.impl.TreeWalkListener;
+
+import static org.onosproject.yangutils.utils.YangConstructType.YANGBASE_DATA;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsEmpty;
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty;
+
+/**
+ * Test case for testing listener validation util.
+ */
+public class ListenerValidationTest {
+
+    @Rule
+    public ExpectedException thrown = ExpectedException.none();
+
+    /**
+     * Checks for exception in case parsable stack is empty while validating for
+     * not empty scenario.
+     */
+    @Test
+    public void validateStackIsNotEmptyForEmptyStack() {
+
+        String expectedError = constructListenerErrorMessage(MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+
+        // Get the exception occurred during parsing.
+        thrown.expect(ParserException.class);
+        thrown.expectMessage(expectedError);
+
+        // Create test walker and assign test error to it.
+        TreeWalkListener testWalker = new TreeWalkListener();
+
+        checkStackIsNotEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+    }
+
+    /**
+     * Checks if there is no exception in case parsable stack is not empty while
+     * validating for not empty scenario.
+     */
+    @Test
+    public void validateStackIsNotEmptyForNonEmptyStack() {
+
+        // Create test walker and assign test error to it.
+        TreeWalkListener testWalker = new TreeWalkListener();
+
+        // Create a temporary node of parsable.
+        YangRevision tmpNode = new YangRevision();
+        testWalker.getParsedDataStack().push(tmpNode);
+
+        checkStackIsNotEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+    }
+
+    /**
+     * Checks for exception in case parsable stack is not empty while validating
+     * for empty scenario.
+     */
+    @Test
+    public void validateStackIsEmptyForNonEmptyStack() {
+
+        String expectedError = constructListenerErrorMessage(MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+
+        // Get the exception occurred during parsing.
+        thrown.expect(ParserException.class);
+        thrown.expectMessage(expectedError);
+
+        // Create test walker and assign test error to it.
+        TreeWalkListener testWalker = new TreeWalkListener();
+
+        // Create a temporary node of parsable.
+        YangRevision tmpNode = new YangRevision();
+        testWalker.getParsedDataStack().push(tmpNode);
+
+        checkStackIsEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+    }
+
+    /**
+     * Checks if there is no exception in case parsable stack is empty while
+     * validating for empty scenario.
+     */
+    @Test
+    public void validateStackIsEmptyForEmptyStack() {
+
+        // Create test walker and assign test error to it.
+        TreeWalkListener testWalker = new TreeWalkListener();
+
+        checkStackIsEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT);
+    }
+}
diff --git a/src/test/java/org/onosproject/yangutils/parser/parseutils/ParseTreeErrorListenerTest.java b/src/test/java/org/onosproject/yangutils/parser/parseutils/ParseTreeErrorListenerTest.java
new file mode 100644
index 0000000..dd09247
--- /dev/null
+++ b/src/test/java/org/onosproject/yangutils/parser/parseutils/ParseTreeErrorListenerTest.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright 2016-present Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.yangutils.parser.parseutils;
+
+import org.antlr.v4.runtime.ANTLRFileStream;
+import org.antlr.v4.runtime.ANTLRInputStream;
+import org.antlr.v4.runtime.CommonTokenStream;
+import org.antlr.v4.runtime.tree.ParseTree;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangLexer;
+import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser;
+import org.onosproject.yangutils.parser.exceptions.ParserException;
+import org.onosproject.yangutils.parser.impl.CustomExceptionMatcher;
+import org.onosproject.yangutils.parser.impl.YangUtilsParserManager;
+import org.onosproject.yangutils.parser.impl.parserutils.ParseTreeErrorListener;
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * Test case for testing parse tree error listener.
+ */
+public class ParseTreeErrorListenerTest {
+
+    YangUtilsParserManager manager = new YangUtilsParserManager();
+    File file;
+    BufferedWriter out;
+
+    @Rule
+    public ExpectedException thrown = ExpectedException.none();
+
+    /**
+     * Checks that no exception is generated for YANG file with valid syntax.
+     */
+    @Test
+    public void checkValidYangFileForNoSyntaxError() throws IOException {
+
+        ANTLRInputStream input = new ANTLRFileStream("src/test/resources/YangFileWithoutSyntaxError.yang");
+
+        // Create a lexer that feeds off of input char stream.
+        GeneratedYangLexer lexer = new GeneratedYangLexer(input);
+        // Create a buffer of tokens pulled from the lexer.
+        CommonTokenStream tokens = new CommonTokenStream(lexer);
+        // Create a parser that feeds off the tokens buffer.
+        GeneratedYangParser parser = new GeneratedYangParser(tokens);
+        // Remove console error listener.
+        parser.removeErrorListeners();
+        // Create instance of customized error listener.
+        ParseTreeErrorListener parseTreeErrorListener = new ParseTreeErrorListener();
+        // Add customized error listener to catch errors during parsing.
+        parser.addErrorListener(parseTreeErrorListener);
+        // Begin parsing YANG file and generate parse tree.
+        ParseTree tree = parser.yangfile();
+    }
+
+    /**
+     * Checks that exception is generated for YANG file with invalid syntax.
+     */
+    @Test
+    public void checkInvalidYangFileForSyntaxError() throws IOException {
+
+        // Get the exception occurred during parsing.
+        thrown.expect(ParserException.class);
+        thrown.expect(CustomExceptionMatcher.errorLocation(3, 0));
+        thrown.expectMessage("no viable alternative at input 'yang-version 1\\nnamespace'");
+
+        ANTLRInputStream input = new ANTLRFileStream("src/test/resources/YangFileWithSyntaxError.yang");
+
+        // Create a lexer that feeds off of input char stream.
+        GeneratedYangLexer lexer = new GeneratedYangLexer(input);
+        // Create a buffer of tokens pulled from the lexer.
+        CommonTokenStream tokens = new CommonTokenStream(lexer);
+        // Create a parser that feeds off the tokens buffer.
+        GeneratedYangParser parser = new GeneratedYangParser(tokens);
+        // Remove console error listener.
+        parser.removeErrorListeners();
+        // Create instance of customized error listener.
+        ParseTreeErrorListener parseTreeErrorListener = new ParseTreeErrorListener();
+        // Add customized error listener to catch errors during parsing.
+        parser.addErrorListener(parseTreeErrorListener);
+        // Begin parsing YANG file and generate parse tree.
+        ParseTree tree = parser.yangfile();
+    }
+}
\ No newline at end of file
diff --git a/src/test/java/org/onosproject/yangutils/translator/tojava/utils/RpcTranslatorTest.java b/src/test/java/org/onosproject/yangutils/translator/tojava/utils/RpcTranslatorTest.java
index b1c7f74..138142e 100644
--- a/src/test/java/org/onosproject/yangutils/translator/tojava/utils/RpcTranslatorTest.java
+++ b/src/test/java/org/onosproject/yangutils/translator/tojava/utils/RpcTranslatorTest.java
@@ -17,6 +17,7 @@
 package org.onosproject.yangutils.translator.tojava.utils;
 
 import java.io.IOException;
+
 import org.junit.Test;
 import org.onosproject.yangutils.datamodel.YangNode;
 import org.onosproject.yangutils.parser.exceptions.ParserException;
@@ -36,7 +37,8 @@
      * Checks rpc translation should not result in any exception.
      */
     @Test
-    public void processRpcTranslator() throws IOException, ParserException {
+    public void processRpcTranslator()
+            throws IOException, ParserException {
 
         String userDir = System.getProperty("user.dir");
         YangNode node = manager.getDataModel("src/test/resources/RpcTranslator.yang");
diff --git a/src/test/java/org/onosproject/yangutils/translator/tojava/utils/UnionTranslatorTest.java b/src/test/java/org/onosproject/yangutils/translator/tojava/utils/UnionTranslatorTest.java
index 239e86f..9baad15 100644
--- a/src/test/java/org/onosproject/yangutils/translator/tojava/utils/UnionTranslatorTest.java
+++ b/src/test/java/org/onosproject/yangutils/translator/tojava/utils/UnionTranslatorTest.java
@@ -17,6 +17,7 @@
 package org.onosproject.yangutils.translator.tojava.utils;
 
 import java.io.IOException;
+
 import org.junit.Test;
 import org.onosproject.yangutils.datamodel.YangNode;
 import org.onosproject.yangutils.parser.exceptions.ParserException;
@@ -36,7 +37,8 @@
      * Checks union translation should not result in any exception.
      */
     @Test
-    public void processUnionTranslator() throws IOException, ParserException {
+    public void processUnionTranslator()
+            throws IOException, ParserException {
 
         clean("src/test/org/onosproject/yang");