Merge "BUG-997 Implement Filesystem source cache for schema repository"
[yangtools.git] / yang / yang-parser-impl / src / test / java / org / opendaylight / yangtools / yang / parser / impl / YangParserNegativeTest.java
index a5c80b1e3e16b2064f3918a3515b5210effdcd19..41d76c39972cd6792379edbdcc114ef909ade167 100644 (file)
@@ -17,7 +17,6 @@ import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
-
 import org.junit.Test;
 import org.opendaylight.yangtools.yang.model.parser.api.YangContextParser;
 import org.opendaylight.yangtools.yang.parser.util.YangParseException;
@@ -164,7 +163,7 @@ public class YangParserNegativeTest {
             }
         } catch (YangParseException e) {
             String expected = "Error in module 'typedef' at line 10: typedef with same name 'int-ext' already declared at line 6.";
-            assertTrue(e.getMessage().contains("'typedef' at line 10: typedef with same name 'int-ext' already declared at line 6."));
+            assertEquals(expected, e.getMessage());
         }
     }
 
@@ -242,4 +241,18 @@ public class YangParserNegativeTest {
         }
     }
 
+    @Test
+    public void testInvalidListKeyDefinition() throws Exception {
+        File yang1 = new File(getClass().getResource("/negative-scenario/invalid-list-key-def.yang").toURI());
+        try {
+            try (InputStream stream1 = new FileInputStream(yang1)) {
+                TestUtils.loadModule(stream1);
+                fail("YangParseException should by thrown");
+            }
+        } catch (YangParseException e) {
+            String expected = "Error in module 'invalid-list-key-def' at line 6: Failed to resolve list key for name rib-id";
+            assertEquals(expected, e.getMessage());
+        }
+    }
+
 }