Improved parse method to read only files which are required by imports.
[yangtools.git] / yang / yang-parser-impl / src / test / java / org / opendaylight / yangtools / yang / parser / impl / YangParserTest.java
index d946e07356fb521745f742397f80fe93df0808eb..6f2c354072d6368b8696ef85d0dd0049001e38aa 100644 (file)
@@ -8,7 +8,9 @@
 package org.opendaylight.yangtools.yang.parser.impl;
 
 import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
 
+import java.io.File;
 import java.io.FileNotFoundException;
 import java.net.URI;
 import java.text.ParseException;
@@ -45,6 +47,7 @@ import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
 import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
 import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
+import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser;
 import org.opendaylight.yangtools.yang.model.util.Decimal64;
 import org.opendaylight.yangtools.yang.model.util.ExtendedType;
 import org.opendaylight.yangtools.yang.model.util.Int16;
@@ -815,4 +818,22 @@ public class YangParserTest {
         assertEquals(dec64QName, dec64Path.get(1));
     }
 
+    @Test
+    public void testParseMethod1() throws ParseException {
+        File yangFile = new File(getClass().getResource("/parse-methods/m1.yang").getPath());
+        File dependenciesDir = new File(getClass().getResource("/parse-methods").getPath());
+        YangModelParser parser = new YangParserImpl();
+        modules = parser.parseYangModels(yangFile, dependenciesDir);
+        assertEquals(6, modules.size());
+    }
+
+    @Test
+    public void testParseMethod2() throws ParseException {
+        File yangFile = new File(getClass().getResource("/parse-methods/m1.yang").getPath());
+        File dependenciesDir = new File(getClass().getResource("/parse-methods/dependencies").getPath());
+        YangModelParser parser = new YangParserImpl();
+        modules = parser.parseYangModels(yangFile, dependenciesDir);
+        assertEquals(6, modules.size());
+    }
+
 }