* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
package org.opendaylight.yangtools.yang.stmt;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.model.api.SchemaContext;
import org.opendaylight.yangtools.yang.model.api.SchemaPath;
import org.opendaylight.yangtools.yang.model.util.SchemaContextUtil;
+import org.opendaylight.yangtools.yang.parser.impl.DefaultReactors;
import org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.parser.spi.source.StatementStreamSource;
-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.reactor.CrossSourceStatementReactor.BuildAction;
public class Bug8307Test {
final Map<QNameModule, Set<QNameModule>> modulesWithSupportedDeviations = ImmutableMap.of(
foo, ImmutableSet.of(bar, baz), bar, ImmutableSet.of(baz));
- final CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
- reactor.addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE);
- reactor.setModulesWithSupportedDeviations(modulesWithSupportedDeviations);
-
- final SchemaContext schemaContext = reactor.buildEffective();
+ final SchemaContext schemaContext = DefaultReactors.defaultReactor().newBuild()
+ .addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE)
+ .setModulesWithSupportedDeviations(modulesWithSupportedDeviations)
+ .buildEffective();
assertNotNull(schemaContext);
assertNull(SchemaContextUtil.findDataSchemaNode(schemaContext, SchemaPath.create(true, myFooContA)));
@Test
public void testDeviationsSupportedInAllModules() throws Exception {
- final CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
- reactor.addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE);
-
- final SchemaContext schemaContext = reactor.buildEffective();
+ final SchemaContext schemaContext = DefaultReactors.defaultReactor().newBuild()
+ .addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE)
+ .buildEffective();
assertNotNull(schemaContext);
assertNull(SchemaContextUtil.findDataSchemaNode(schemaContext, SchemaPath.create(true, myFooContA)));
@Test
public void testDeviationsSupportedInNoModule() throws Exception {
- final CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
- reactor.addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE);
- reactor.setModulesWithSupportedDeviations(ImmutableMap.of());
-
- final SchemaContext schemaContext = reactor.buildEffective();
+ final SchemaContext schemaContext = DefaultReactors.defaultReactor().newBuild()
+ .addSources(FOO_MODULE, BAR_MODULE, BAZ_MODULE, FOOBAR_MODULE)
+ .setModulesWithSupportedDeviations(ImmutableMap.of())
+ .buildEffective();
assertNotNull(schemaContext);
assertNotNull(SchemaContextUtil.findDataSchemaNode(schemaContext, SchemaPath.create(true, myFooContA)));
@Test
public void shouldFailOnAttemptToDeviateTheSameModule() {
- final CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
- reactor.addSources(FOO_INVALID_MODULE);
+ final BuildAction reactor = DefaultReactors.defaultReactor().newBuild().addSources(FOO_INVALID_MODULE);
try {
reactor.buildEffective();
@Test
public void shouldFailOnAttemptToDeviateTheSameModule2() {
- final CrossSourceStatementReactor.BuildAction reactor = YangInferencePipeline.RFC6020_REACTOR.newBuild();
- reactor.addSources(BAR_INVALID_MODULE, BAZ_INVALID_MODULE);
+ final BuildAction reactor = DefaultReactors.defaultReactor().newBuild()
+ .addSources(BAR_INVALID_MODULE, BAZ_INVALID_MODULE);
try {
reactor.buildEffective();