[ONOS-4670] Removal of Data Model dependencies on Linker

Change-Id: I3f9c5af30198ea31d743e06cea1764dcb306ec32
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/InterFileLinkingTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/InterFileLinkingTest.java
index c170cd9..7920356 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/InterFileLinkingTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/InterFileLinkingTest.java
@@ -19,7 +19,6 @@
 import java.io.IOException;
 import java.util.Iterator;
 import java.util.ListIterator;
-
 import org.apache.maven.plugin.MojoExecutionException;
 import org.junit.Test;
 import org.onosproject.yangutils.datamodel.YangDataTypes;
@@ -71,6 +70,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
@@ -137,6 +139,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
@@ -211,6 +216,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Carry out linking of sub module with module.
         yangLinkerManager.linkSubModulesToParentModule(utilManager.getYangFileInfoSet());
 
@@ -280,6 +288,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Carry out linking of sub module with module.
         yangLinkerManager.linkSubModulesToParentModule(utilManager.getYangFileInfoSet());
 
@@ -357,6 +368,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
@@ -423,6 +437,9 @@
         YangNode refNode = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
@@ -490,6 +507,9 @@
         YangNode refNode2 = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
@@ -554,6 +574,9 @@
         YangNode refNode1 = null;
         YangNode selfNode = null;
 
+        // Create YANG node set
+        yangLinkerManager.createYangNodeSet(utilManager.getYangFileInfoSet());
+
         // Add references to import list.
         yangLinkerManager.addRefToYangFilesImportList(utilManager.getYangFileInfoSet());
 
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
index d4ffaae..202a096 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileTypeLinkingTest.java
@@ -26,6 +26,7 @@
 import org.onosproject.yangutils.datamodel.YangModule;
 import org.onosproject.yangutils.datamodel.YangNode;
 import org.onosproject.yangutils.datamodel.YangTypeDef;
+import org.onosproject.yangutils.linker.exceptions.LinkerException;
 import org.onosproject.yangutils.parser.exceptions.ParserException;
 import org.onosproject.yangutils.parser.impl.YangUtilsParserManager;
 
@@ -33,12 +34,12 @@
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.core.Is.is;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.BINARY;
-import static org.onosproject.yangutils.linker.ResolvableStatus.INTRA_FILE_RESOLVED;
-import static org.onosproject.yangutils.linker.ResolvableStatus.RESOLVED;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.DERIVED;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.INT32;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.STRING;
 import static org.onosproject.yangutils.datamodel.YangNodeType.MODULE_NODE;
+import static org.onosproject.yangutils.linker.ResolvableStatus.INTRA_FILE_RESOLVED;
+import static org.onosproject.yangutils.linker.ResolvableStatus.RESOLVED;
 
 /**
  * Test cases for testing "type" intra file linking.
@@ -488,9 +489,9 @@
      * Check self resolution when type referred typedef is not available in
      * file.
      */
-    @Test(expected = ParserException.class)
+    @Test(expected = LinkerException.class)
     public void processSelfResolutionWhenTypeReferredTypedefNotDefined()
-            throws IOException, ParserException {
+            throws IOException, LinkerException {
 
         YangNode node =
                 manager.getDataModel("src/test/resources/SelfResolutionWhenTypeReferredTypedefNotDefined.yang");
@@ -500,9 +501,9 @@
      * Checks self resolution when typedef and leaf using type are at different
      * level where typedef is is not an ancestor of type.
      */
-    @Test(expected = ParserException.class)
+    @Test(expected = LinkerException.class)
     public void processSelfFileLinkingTypedefNotFound()
-            throws IOException, ParserException {
+            throws IOException, LinkerException {
 
         YangNode node = manager.getDataModel("src/test/resources/SelfFileLinkingTypedefNotFound.yang");
     }
@@ -510,9 +511,9 @@
     /**
      * Checks hierarchical self resolution with self resolution failure scenario.
      */
-    @Test(expected = ParserException.class)
+    @Test(expected = LinkerException.class)
     public void processSelfFileLinkingWithHierarchicalTypeFailureScenario()
-            throws IOException, ParserException {
+            throws IOException, LinkerException {
 
         YangNode node =
                 manager.getDataModel("src/test/resources/SelfFileLinkingWithHierarchicalTypeFailureScenario.yang");
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
index 50d8d20..356a659 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/IntraFileUsesLinkingTest.java
@@ -19,7 +19,6 @@
 import java.io.IOException;
 import java.util.List;
 import java.util.ListIterator;
-
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -581,9 +580,9 @@
      */
     @Test
     public void processSelfResolutionNestedGroupingWithUnresolvedUses()
-            throws IOException, ParserException {
+            throws IOException, LinkerException {
 
-        thrown.expect(ParserException.class);
+        thrown.expect(LinkerException.class);
         thrown.expectMessage(
                 "YANG file error: Unable to find base grouping for given uses");
 
diff --git a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/RestrictionResolutionTest.java b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/RestrictionResolutionTest.java
index 1be5b25..af309fd 100644
--- a/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/RestrictionResolutionTest.java
+++ b/utils/yangutils/src/test/java/org/onosproject/yangutils/linker/RestrictionResolutionTest.java
@@ -30,21 +30,21 @@
 import org.onosproject.yangutils.datamodel.YangStringRestriction;
 import org.onosproject.yangutils.datamodel.YangTypeDef;
 import org.onosproject.yangutils.datamodel.exceptions.DataModelException;
+import org.onosproject.yangutils.datamodel.utils.builtindatatype.YangInt32;
+import org.onosproject.yangutils.datamodel.utils.builtindatatype.YangUint64;
 import org.onosproject.yangutils.linker.exceptions.LinkerException;
 import org.onosproject.yangutils.parser.exceptions.ParserException;
 import org.onosproject.yangutils.parser.impl.YangUtilsParserManager;
-import org.onosproject.yangutils.utils.builtindatatype.YangInt32;
-import org.onosproject.yangutils.utils.builtindatatype.YangUint64;
 
 import static org.hamcrest.CoreMatchers.nullValue;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.core.Is.is;
 import static org.hamcrest.core.IsNull.notNullValue;
-import static org.onosproject.yangutils.linker.ResolvableStatus.RESOLVED;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.DERIVED;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.INT32;
 import static org.onosproject.yangutils.datamodel.YangDataTypes.STRING;
 import static org.onosproject.yangutils.datamodel.YangNodeType.MODULE_NODE;
+import static org.onosproject.yangutils.linker.ResolvableStatus.RESOLVED;
 
 /**
  * Test cases for testing restriction resolution.
@@ -412,7 +412,7 @@
     /**
      * Checks range restriction in typedef and not stricter in referred type.
      */
-    @Test(expected = ParserException.class)
+    @Test(expected = LinkerException.class)
     public void processRangeRestrictionInRefTypeAndTypedefInValid()
             throws IOException, ParserException, DataModelException {
         YangNode node = manager.getDataModel("src/test/resources/RangeRestrictionInRefTypeAndTypedefInValid.yang");