Adjust test suite parser update to conform with API changes
[yangtools.git] / yang / yang-parser-impl / src / test / java / org / opendaylight / yangtools / yang / stmt / ExtensionStmtTest.java
index a1656d11b72b59336995534cb6e656e654bde7d3..10d45274344ccbc6c5dbb82a588b517e1f174b5c 100644 (file)
@@ -11,45 +11,34 @@ package org.opendaylight.yangtools.yang.stmt;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.yangtools.yang.stmt.StmtTestUtils.sourceForResource;
 
 import java.util.List;
 import org.junit.Test;
+import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ExtensionDefinition;
 import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.Module;
+import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
+import org.opendaylight.yangtools.yang.parser.rfc7950.reactor.RFC7950Reactors;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
-import org.opendaylight.yangtools.yang.parser.stmt.reactor.CrossSourceStatementReactor;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangInferencePipeline;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangStatementSourceImpl;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.EffectiveSchemaContext;
 
 public class ExtensionStmtTest {
-
-    private static final YangStatementSourceImpl EXT_DEF_MODULE = new YangStatementSourceImpl("/model/bar.yang",
-            false);
-    private static final YangStatementSourceImpl EXT_DEF_MODULE2 = new YangStatementSourceImpl
-            ("/semantic-statement-parser/ext-typedef.yang",
-            false);
-    private static final YangStatementSourceImpl EXT_USE_MODULE = new YangStatementSourceImpl
-            ("/semantic-statement-parser/ext-use.yang",
-            false);
-
     @Test
     public void testExtensionDefinition() throws ReactorException {
-        CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
-        StmtTestUtils.addSources(reactor, EXT_DEF_MODULE);
-
-        EffectiveSchemaContext result = reactor.buildEffective();
+        final SchemaContext result = RFC7950Reactors.defaultReactor().newBuild()
+                .addSource(sourceForResource("/model/bar.yang"))
+                .buildEffective();
         assertNotNull(result);
 
-        Module testModule = result.findModuleByName("bar", null);
+        final Module testModule = result.findModules("bar").iterator().next();
         assertNotNull(testModule);
 
         assertEquals(1, testModule.getExtensionSchemaNodes().size());
 
-        List<ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
-        ExtensionDefinition extension = extensions.get(0);
+        final List<ExtensionDefinition> extensions = testModule.getExtensionSchemaNodes();
+        final ExtensionDefinition extension = extensions.get(0);
         assertEquals("opendaylight", extension.getQName().getLocalName());
         assertEquals("name", extension.getArgument());
         assertTrue(extension.isYinElement());
@@ -57,29 +46,30 @@ public class ExtensionStmtTest {
 
     @Test
     public void testExtensionUsage() throws ReactorException {
-        CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
-        StmtTestUtils.addSources(reactor, EXT_DEF_MODULE2, EXT_USE_MODULE);
-
-        EffectiveSchemaContext result = reactor.buildEffective();
+        final SchemaContext result = RFC7950Reactors.defaultReactor().newBuild()
+                .addSource(sourceForResource("/semantic-statement-parser/ext-typedef.yang"))
+                .addSource(sourceForResource("/semantic-statement-parser/ext-use.yang"))
+                .buildEffective();
         assertNotNull(result);
 
-        Module testModule1 = result.findModuleByName("ext-typedef", null);
+        final Module testModule1 = result.findModules("ext-typedef").iterator().next();
         assertNotNull(testModule1);
 
         assertEquals(1, testModule1.getExtensionSchemaNodes().size());
 
-        List<ExtensionDefinition> extensions = testModule1.getExtensionSchemaNodes();
-        ExtensionDefinition extensionDefinition = extensions.get(0);
+        final List<ExtensionDefinition> extensions = testModule1.getExtensionSchemaNodes();
+        final ExtensionDefinition extensionDefinition = extensions.get(0);
 
-        Module testModule2 = result.findModuleByName("ext-use", null);
+        final Module testModule2 = result.findModules("ext-use").iterator().next();
         assertNotNull(testModule2);
 
-        LeafSchemaNode leaf = (LeafSchemaNode) testModule2.getDataChildByName("value");
+        final LeafSchemaNode leaf = (LeafSchemaNode) testModule2.getDataChildByName(
+            QName.create(testModule2.getQNameModule(), "value"));
         assertNotNull(leaf);
 
         assertEquals(1, leaf.getUnknownSchemaNodes().size());
-        List<UnknownSchemaNode> unknownNodes = leaf.getUnknownSchemaNodes();
-        UnknownSchemaNode extensionUse = unknownNodes.get(0);
+        final List<UnknownSchemaNode> unknownNodes = leaf.getUnknownSchemaNodes();
+        final UnknownSchemaNode extensionUse = unknownNodes.get(0);
         assertEquals(extensionDefinition.getQName().getLocalName(), extensionUse.getExtensionDefinition().getQName()
                 .getLocalName());
         assertEquals(extensionDefinition.getArgument(), extensionUse.getExtensionDefinition().getArgument());