[ONOS-4839] update file priority for input files
Change-Id: I4aa0cbbfb0f168efd7c1895c9bb0c6589088eefd
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
index b5fd40b..09641c1 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
@@ -984,4 +984,52 @@
assertThat(leafref.getEffectiveDataType().getDataType(),
is(YangDataTypes.STRING));
}
+
+ /**
+ * Checks priority of the file.
+ */
+ @Test
+ public void interFilePriority()
+ throws IOException, ParserException, MojoExecutionException {
+
+ String searchDir = "src/test/resources/interfilepriority";
+ utilManager.createYangFileInfoSet(YangFileScanner.getYangFiles(searchDir));
+ utilManager.parseYangFileInfoSet();
+ utilManager.resolveDependenciesUsingLinker();
+
+ YangNode selfNode = null;
+ YangNode refNode1 = null;
+ YangNode refNode2 = null;
+
+ for (YangNode rootNode : utilManager.getYangNodeSet()) {
+ if (rootNode.getName().equals("module1")) {
+ selfNode = rootNode;
+ } else if (rootNode.getName().equals("module2")) {
+ refNode1 = rootNode;
+ } else {
+ refNode2 = rootNode;
+ }
+ }
+
+ // Check whether the data model tree returned is of type module.
+ assertThat(selfNode instanceof YangModule, is(true));
+
+ // Check whether the node type is set properly to module.
+ assertThat(selfNode.getNodeType(), is(MODULE_NODE));
+
+ // Check whether the module name is set correctly.
+ YangModule yangNode = (YangModule) selfNode;
+ assertThat(yangNode.getName(), is("module1"));
+ assertThat(yangNode.getPriority(), is(2));
+
+ // Check whether the data model tree returned is of type module.
+ assertThat(refNode1 instanceof YangModule, is(true));
+
+ // Check whether the node type is set properly to module.
+ assertThat(refNode1.getNodeType(), is(MODULE_NODE));
+
+ YangModule referredNode1 = (YangModule) refNode1;
+ assertThat(referredNode1.getName(), is("module2"));
+ assertThat(referredNode1.getPriority(), is(3));
+ }
}
diff --git a/utils/yangutils/plugin/src/test/resources/interfilepriority/module1.yang b/utils/yangutils/plugin/src/test/resources/interfilepriority/module1.yang
new file mode 100644
index 0000000..9a21b03
--- /dev/null
+++ b/utils/yangutils/plugin/src/test/resources/interfilepriority/module1.yang
@@ -0,0 +1,14 @@
+module module1 {
+ yang-version 1;
+ namespace "http://huawei.com";
+ prefix Ant;
+ import module2 {
+ prefix p;
+ }
+ leaf invalid-interval {
+ type p:hello;
+ }
+ typedef hello {
+ type string;
+ }
+}
diff --git a/utils/yangutils/plugin/src/test/resources/interfilepriority/module2.yang b/utils/yangutils/plugin/src/test/resources/interfilepriority/module2.yang
new file mode 100644
index 0000000..0a3bdad
--- /dev/null
+++ b/utils/yangutils/plugin/src/test/resources/interfilepriority/module2.yang
@@ -0,0 +1,8 @@
+module module2 {
+ yang-version 1;
+ namespace "http://huawei.com";
+ prefix Ant2;
+ typedef hello {
+ type string;
+ }
+}
diff --git a/utils/yangutils/plugin/src/test/resources/interfilepriority/module3.yang b/utils/yangutils/plugin/src/test/resources/interfilepriority/module3.yang
new file mode 100644
index 0000000..948c797
--- /dev/null
+++ b/utils/yangutils/plugin/src/test/resources/interfilepriority/module3.yang
@@ -0,0 +1,8 @@
+module module3 {
+ yang-version 1;
+ namespace "http://huawei.com";
+ prefix Ant;
+ import module1 {
+ prefix p;
+ }
+}
diff --git a/utils/yangutils/plugin/src/test/resources/interfilepriority/module4.yang b/utils/yangutils/plugin/src/test/resources/interfilepriority/module4.yang
new file mode 100644
index 0000000..df6f8b2
--- /dev/null
+++ b/utils/yangutils/plugin/src/test/resources/interfilepriority/module4.yang
@@ -0,0 +1,8 @@
+module module4 {
+ yang-version 1;
+ namespace "http://huawei.com";
+ prefix Ant;
+ import module3 {
+ prefix p;
+ }
+}