From 0b7e89ec225d50e73ad09817b95faa005cc0b815 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 5 Apr 2022 01:24:32 +0200 Subject: [PATCH] Further testing cleanup Remove more StmtTestUtils duplication. Change-Id: Icd8798d8f89c6fdd3a526347e0b2a182189c1110 Signed-off-by: Robert Varga --- .../parser/stmt/rfc7950/Bug6867BasicTest.java | 6 ++-- .../yang/parser/stmt/rfc7950/Bug6874Test.java | 2 +- .../yang/parser/stmt/rfc7950/Bug6876Test.java | 8 ++--- .../yang/parser/stmt/rfc7950/Bug6883Test.java | 8 ++--- .../yang/parser/stmt/rfc7950/Bug6884Test.java | 14 ++++----- .../yang/stmt/AugmentProcessTest.java | 10 +++---- .../yangtools/yang/stmt/Bug4933Test.java | 29 +++++-------------- .../yangtools/yang/stmt/Bug5335Test.java | 18 ++++++------ .../yangtools/yang/stmt/Bug6183Test.java | 16 +++++----- .../yangtools/yang/stmt/Bug6491Test.java | 9 +++--- .../yangtools/yang/stmt/Bug6972Test.java | 8 ++--- .../yangtools/yang/stmt/Bug7440Test.java | 9 ++---- .../yang/stmt/MoreRevisionsTest.java | 23 ++++++--------- .../yang/stmt/TypedefConstraintsTest.java | 7 ++--- .../yangtools/yang/stmt/YT1339Test.java | 23 +++++---------- 15 files changed, 74 insertions(+), 116 deletions(-) diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6867BasicTest.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6867BasicTest.java index ef3b1cbde3..3a37acb784 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6867BasicTest.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6867BasicTest.java @@ -8,12 +8,10 @@ package org.opendaylight.yangtools.yang.parser.stmt.rfc7950; import static org.hamcrest.CoreMatchers.startsWith; -import static org.junit.Assert.assertNotNull; import org.junit.Test; import org.opendaylight.yangtools.yang.parser.spi.meta.InvalidSubstatementException; import org.opendaylight.yangtools.yang.stmt.AbstractYangTest; -import org.opendaylight.yangtools.yang.stmt.StmtTestUtils; public class Bug6867BasicTest extends AbstractYangTest { @Test @@ -50,8 +48,8 @@ public class Bug6867BasicTest extends AbstractYangTest { } @Test - public void yangModelTest() throws Exception { - assertNotNull(StmtTestUtils.parseYangSources("/rfc7950/model")); + public void yangModelTest() { + assertEffectiveModelDir("/rfc7950/model"); } @Test diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6874Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6874Test.java index d65eb0d960..d0dffbf332 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6874Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6874Test.java @@ -61,7 +61,7 @@ public class Bug6874Test { } @Test - public void invalid10IncludeStmtTest() throws Exception { + public void invalid10IncludeStmtTest() { final var ex = assertThrows(SomeModifiersUnresolvedException.class, () -> StmtTestUtils.parseYangSources("/rfc7950/include-import-stmt-test/invalid-include-10")).getCause(); assertThat(ex, instanceOf(InvalidSubstatementException.class)); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6876Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6876Test.java index 88bdc2b082..eb770b2520 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6876Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6876Test.java @@ -15,16 +15,16 @@ import static org.junit.Assert.assertThrows; import org.junit.Test; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; -import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; import org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException; import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; +import org.opendaylight.yangtools.yang.stmt.AbstractYangTest; import org.opendaylight.yangtools.yang.stmt.StmtTestUtils; -public class Bug6876Test { +public class Bug6876Test extends AbstractYangTest { @Test - public void yang11Test() throws Exception { - final EffectiveModelContext context = StmtTestUtils.parseYangSources("/rfc7950/bug6876/yang11"); + public void yang11Test() { + final var context = assertEffectiveModelDir("/rfc7950/bug6876/yang11"); DataSchemaNode node = context.findDataTreeChild(bar("augment-target"), bar("my-leaf")).orElse(null); assertThat(node, instanceOf(LeafSchemaNode.class)); node = context.findDataTreeChild(bar("augment-target"), foo("mandatory-leaf")).orElse(null); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6883Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6883Test.java index de42a79bec..2b1f0fba35 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6883Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6883Test.java @@ -23,16 +23,16 @@ import org.opendaylight.yangtools.yang.model.api.AnydataSchemaNode; import org.opendaylight.yangtools.yang.model.api.Status; import org.opendaylight.yangtools.yang.model.api.stmt.ModuleEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.SchemaTreeEffectiveStatement; -import org.opendaylight.yangtools.yang.stmt.StmtTestUtils; +import org.opendaylight.yangtools.yang.stmt.AbstractYangTest; -public class Bug6883Test { +public class Bug6883Test extends AbstractYangTest { private static final XMLNamespace FOO = XMLNamespace.of("foo"); private ModuleEffectiveStatement foo; @Before - public void before() throws Exception { - foo = StmtTestUtils.parseYangSources("/bugs/bug6883").getModuleStatement(QName.create(FOO, "foo")); + public void before() { + foo = assertEffectiveModelDir("/bugs/bug6883").getModuleStatement(QName.create(FOO, "foo")); } @Test diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6884Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6884Test.java index ede2333964..9b9d840f3d 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6884Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/stmt/rfc7950/Bug6884Test.java @@ -14,21 +14,19 @@ import org.junit.Test; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; -import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; -import org.opendaylight.yangtools.yang.stmt.StmtTestUtils; +import org.opendaylight.yangtools.yang.stmt.AbstractYangTest; -public class Bug6884Test { +public class Bug6884Test extends AbstractYangTest { @Test - public void testYang11() throws Exception { - final EffectiveModelContext schemaContext = StmtTestUtils.parseYangSources("/rfc7950/bug6884/yang1-1"); + public void testYang11() { + final var schemaContext = assertEffectiveModelDir("/rfc7950/bug6884/yang1-1"); final DataSchemaNode node = schemaContext.findDataTreeChild(foo("sub-root"), foo("sub-foo-2-con")).orElse(null); assertThat(node, instanceOf(ContainerSchemaNode.class)); } @Test - public void testCircularIncludesYang10() throws Exception { - final EffectiveModelContext schemaContext = - StmtTestUtils.parseYangSources("/rfc7950/bug6884/circular-includes"); + public void testCircularIncludesYang10() { + final var schemaContext = assertEffectiveModelDir("/rfc7950/bug6884/circular-includes"); DataSchemaNode node = schemaContext.findDataTreeChild(foo("sub-root"), foo("sub-foo-2-con")).orElse(null); assertThat(node, instanceOf(ContainerSchemaNode.class)); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentProcessTest.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentProcessTest.java index 5eff39db71..7819eabb6a 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentProcessTest.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/AugmentProcessTest.java @@ -31,7 +31,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; import org.opendaylight.yangtools.yang.parser.spi.meta.SomeModifiersUnresolvedException; import org.opendaylight.yangtools.yang.parser.spi.source.StatementStreamSource; -public class AugmentProcessTest { +public class AugmentProcessTest extends AbstractYangTest { private static final StatementStreamSource AUGMENTED = sourceForResource("/stmt-test/augments/augmented.yang"); private static final StatementStreamSource ROOT = sourceForResource("/stmt-test/augments/aug-root.yang"); @@ -99,7 +99,7 @@ public class AugmentProcessTest { } @Test(expected = SomeModifiersUnresolvedException.class) - public void multipleAugmentIncorrectPathTest() throws ReactorException { + public void multipleAugmentIncorrectPathTest() throws ReactorException { SchemaContext result = RFC7950Reactors.defaultReactor().newBuild() .addSource(MULTIPLE_AUGMENT_INCORRECT) .buildEffective(); @@ -107,7 +107,7 @@ public class AugmentProcessTest { } @Test(expected = SomeModifiersUnresolvedException.class) - public void multipleAugmentIncorrectPathAndGrpTest() throws ReactorException { + public void multipleAugmentIncorrectPathAndGrpTest() throws ReactorException { SchemaContext result = RFC7950Reactors.defaultReactor().newBuild() .addSource(MULTIPLE_AUGMENT_INCORRECT2) .buildEffective(); @@ -146,8 +146,8 @@ public class AugmentProcessTest { } @Test - public void caseShortHandAugmentingTest() throws Exception { - final SchemaContext context = StmtTestUtils.parseYangSources("/choice-case-type-test-models"); + public void caseShortHandAugmentingTest() { + final SchemaContext context = assertEffectiveModelDir("/choice-case-type-test-models"); assertNotNull(context); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4933Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4933Test.java index 76b742bc54..f3293fb1b1 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4933Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug4933Test.java @@ -7,27 +7,18 @@ */ package org.opendaylight.yangtools.yang.stmt; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.isA; +import static org.hamcrest.CoreMatchers.startsWith; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; import java.util.Collection; import org.junit.Test; import org.opendaylight.yangtools.yang.model.api.Deviation; import org.opendaylight.yangtools.yang.model.api.Module; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; -import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; -import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; - -public class Bug4933Test { +public class Bug4933Test extends AbstractYangTest { @Test - public void test() throws Exception { - SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug4933/correct"); - assertNotNull(context); + public void test() { + final var context = assertEffectiveModelDir("/bugs/bug4933/correct"); final Module foo = context.findModules("foo").iterator().next(); Collection deviations = foo.getDeviations(); @@ -35,14 +26,8 @@ public class Bug4933Test { } @Test - public void incorrectKeywordTest() throws Exception { - try { - StmtTestUtils.parseYangSources("/bugs/bug4933/incorrect"); - fail("ReactorException should be thrown."); - } catch (ReactorException e) { - final Throwable cause = e.getCause(); - assertThat(cause, isA(SourceException.class)); - assertTrue(cause.getMessage().startsWith("String 'not_supported' is not valid deviate argument")); - } + public void incorrectKeywordTest() { + assertSourceExceptionDir("/bugs/bug4933/incorrect", + startsWith("String 'not_supported' is not valid deviate argument")); } } diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5335Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5335Test.java index dd7f258dd1..297e96754e 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5335Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug5335Test.java @@ -20,7 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; import org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException; import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; -public class Bug5335Test { +public class Bug5335Test extends AbstractYangTest { private static final String FOO = "foo"; private static final String BAR = "bar"; private static final String REV = "2016-03-04"; @@ -63,32 +63,32 @@ public class Bug5335Test { } @Test - public void correctTest1() throws Exception { - final EffectiveModelContext context = StmtTestUtils.parseYangSources("/bugs/bug5335/correct/case-1"); + public void correctTest1() { + final EffectiveModelContext context = assertEffectiveModelDir("/bugs/bug5335/correct/case-1"); final DataSchemaNode mandatoryLeaf = context.findDataTreeChild(ROOT, PRESENCE_CONTAINER_B, MANDATORY_LEAF_B) .orElse(null); assertThat(mandatoryLeaf, instanceOf(LeafSchemaNode.class)); } @Test - public void correctTest2() throws Exception { - final EffectiveModelContext context = StmtTestUtils.parseYangSources("/bugs/bug5335/correct/case-2"); + public void correctTest2() { + final EffectiveModelContext context = assertEffectiveModelDir("/bugs/bug5335/correct/case-2"); final DataSchemaNode mandatoryLeaf = context.findDataTreeChild(ROOT, PRESENCE_CONTAINER_B, NON_PRESENCE_CONTAINER_B, MANDATORY_LEAF_B).orElse(null); assertThat(mandatoryLeaf, instanceOf(LeafSchemaNode.class)); } @Test - public void correctTest3() throws Exception { - final EffectiveModelContext context = StmtTestUtils.parseYangSources("/bugs/bug5335/correct/case-3"); + public void correctTest3() { + final EffectiveModelContext context = assertEffectiveModelDir("/bugs/bug5335/correct/case-3"); final DataSchemaNode mandatoryLeaf = context.findDataTreeChild(ROOT, PRESENCE_CONTAINER_B, NON_PRESENCE_CONTAINER_B, MANDATORY_LEAF_B).orElse(null); assertThat(mandatoryLeaf, instanceOf(LeafSchemaNode.class)); } @Test - public void correctTest4() throws Exception { - final EffectiveModelContext context = StmtTestUtils.parseYangSources("/bugs/bug5335/correct/case-4"); + public void correctTest4() { + final EffectiveModelContext context = assertEffectiveModelDir("/bugs/bug5335/correct/case-4"); final DataSchemaNode mandatoryLeaf = context.findDataTreeChild(ROOT, NON_PRESENCE_CONTAINER_F, MANDATORY_LEAF_F) .orElse(null); assertThat(mandatoryLeaf, instanceOf(LeafSchemaNode.class)); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6183Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6183Test.java index ec336cf85d..8414172d0b 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6183Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6183Test.java @@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.stmt; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import org.junit.Test; @@ -19,24 +18,23 @@ import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; import org.opendaylight.yangtools.yang.model.api.DataNodeContainer; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; +import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; -public class Bug6183Test { +public class Bug6183Test extends AbstractYangTest { private static final String FOO_NS = "foo"; @Test - public void testYang10() throws Exception { - assertSchemaContext(StmtTestUtils.parseYangSources("/bugs/bug6183/yang10")); + public void testYang10() { + assertSchemaContext(assertEffectiveModelDir("/bugs/bug6183/yang10")); } @Test - public void testYang11() throws Exception { - assertSchemaContext(StmtTestUtils.parseYangSources("/bugs/bug6183/yang11")); + public void testYang11() { + assertSchemaContext(assertEffectiveModelDir("/bugs/bug6183/yang11")); } - public void assertSchemaContext(final SchemaContext context) throws Exception { - assertNotNull(context); + public void assertSchemaContext(final EffectiveModelContext context) { assertEquals(3, context.getChildNodes().size()); assertEquals(1, context.getModules().size()); assertEquals(4, context.getModules().iterator().next().getAugmentations().size()); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6491Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6491Test.java index bbd43b5079..8995f80518 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6491Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6491Test.java @@ -18,11 +18,11 @@ import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.model.api.ModuleImport; import org.opendaylight.yangtools.yang.model.api.SchemaContext; -public class Bug6491Test { +public class Bug6491Test extends AbstractYangTest { private static final Revision DATE = Revision.of("2016-01-01"); @Test - public void tetststs() throws Exception { + public void tetststs() { testRevision("withoutRevision", null, Optional.empty()); testRevision("withRevision", DATE, Optional.of(DATE)); testRevision("importedModuleRevisionOnly", null, Optional.of(DATE)); @@ -30,9 +30,8 @@ public class Bug6491Test { } private static void testRevision(final String path, final Revision moduleRevision, - final Optional importedRevision) throws Exception { - final SchemaContext context = StmtTestUtils.parseYangSources("/bugs/bug6491/".concat(path)); - assertNotNull(context); + final Optional importedRevision) { + final SchemaContext context = assertEffectiveModelDir("/bugs/bug6491/" + path); final Module module = context.findModule("bar", moduleRevision).get(); final Collection imports = module.getImports(); assertNotNull(imports); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6972Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6972Test.java index e2f4444ed9..4cba325213 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6972Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug6972Test.java @@ -17,16 +17,14 @@ import org.opendaylight.yangtools.yang.common.Revision; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; 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.meta.EffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.LeafEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.UnitsEffectiveStatement; -public class Bug6972Test { +public class Bug6972Test extends AbstractYangTest { @Test - public void allUnitsShouldBeTheSameInstance() throws Exception { - final SchemaContext schemaContext = StmtTestUtils.parseYangSources("/bugs/bug6972"); - assertNotNull(schemaContext); + public void allUnitsShouldBeTheSameInstance() { + final var schemaContext = assertEffectiveModelDir("/bugs/bug6972"); assertEquals(3, schemaContext.getModules().size()); final Revision revision = Revision.of("2016-10-20"); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7440Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7440Test.java index 77cc6559cd..fa875f2ffd 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7440Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7440Test.java @@ -8,7 +8,6 @@ package org.opendaylight.yangtools.yang.stmt; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; import java.util.Collection; import org.junit.Test; @@ -17,14 +16,12 @@ import org.opendaylight.yangtools.yang.common.Revision; import org.opendaylight.yangtools.yang.model.api.DeviateDefinition; import org.opendaylight.yangtools.yang.model.api.Deviation; import org.opendaylight.yangtools.yang.model.api.Module; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; -public class Bug7440Test { +public class Bug7440Test extends AbstractYangTest { @Test - public void testRestrictedTypeParentSchemaPathInDeviate() throws Exception { - final SchemaContext schemaContext = StmtTestUtils.parseYangSources("/bugs/bug7440"); - assertNotNull(schemaContext); + public void testRestrictedTypeParentSchemaPathInDeviate() { + final var schemaContext = assertEffectiveModelDir("/bugs/bug7440"); final Revision revision = Revision.of("2016-12-23"); final Module foo = schemaContext.findModule("foo", revision).get(); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MoreRevisionsTest.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MoreRevisionsTest.java index 339591cad1..aab46a403f 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MoreRevisionsTest.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/MoreRevisionsTest.java @@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.stmt; import static org.hamcrest.CoreMatchers.instanceOf; import static org.hamcrest.MatcherAssert.assertThat; 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; @@ -32,8 +31,7 @@ import org.opendaylight.yangtools.yang.parser.rfc7950.reactor.RFC7950Reactors; import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; import org.opendaylight.yangtools.yang.parser.spi.source.StatementStreamSource; -public class MoreRevisionsTest { - +public class MoreRevisionsTest extends AbstractYangTest { private static final StatementStreamSource REVFILE = sourceForResource( "/semantic-statement-parser/revisions/more-revisions-test.yang"); @@ -95,17 +93,16 @@ public class MoreRevisionsTest { } @Test - public void multipleRevisionsTest() throws Exception { + public void multipleRevisionsTest() { for (int i = 0; i < 100; i++) { - assertNotNull(StmtTestUtils.parseYangSources("/semantic-statement-parser/multiple-revisions")); + assertEffectiveModelDir("/semantic-statement-parser/multiple-revisions"); } } @Test - public void multipleRevisionsFullTest() throws Exception { + public void multipleRevisionsFullTest() { for (int i = 0; i < 100; i++) { - EffectiveModelContext context = - StmtTestUtils.parseYangSources("/semantic-statement-parser/multiple-revisions/full"); + var context = assertEffectiveModelDir("/semantic-statement-parser/multiple-revisions/full"); assertEquals(6, context.getModules().size()); checkContentFullTest(context); } @@ -164,10 +161,9 @@ public class MoreRevisionsTest { } @Test - public void multipleRevisionsSimpleTest() throws Exception { + public void multipleRevisionsSimpleTest() { for (int i = 0; i < 1000; i++) { - EffectiveModelContext context = StmtTestUtils.parseYangSources( - "/semantic-statement-parser/multiple-revisions/simple"); + var context = assertEffectiveModelDir("/semantic-statement-parser/multiple-revisions/simple"); assertEquals(5, context.getModules().size()); checkContentSimpleTest(context); } @@ -248,9 +244,8 @@ public class MoreRevisionsTest { } @Test - public void nodeTest() throws Exception { - EffectiveModelContext context = StmtTestUtils.parseYangSources( - "/semantic-statement-parser/multiple-revisions/node-test"); + public void nodeTest() { + final var context = assertEffectiveModelDir("/semantic-statement-parser/multiple-revisions/node-test"); QName root = QName.create("foo", "2016-04-06", "foo-root"); QName container20160404 = QName.create("foo", "2016-04-06", "con20160404"); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java index fb5cf74e7a..f51d9d340b 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/TypedefConstraintsTest.java @@ -20,15 +20,14 @@ import org.opendaylight.yangtools.yang.common.Decimal64; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang.model.api.TypeDefinition; import org.opendaylight.yangtools.yang.model.api.type.DecimalTypeDefinition; import org.opendaylight.yangtools.yang.model.api.type.TypeDefinitions; -public class TypedefConstraintsTest { +public class TypedefConstraintsTest extends AbstractYangTest { @Test - public void decimalRangeConstraintsTest() throws Exception { - final SchemaContext context = StmtTestUtils.parseYangSources("/stmt-test/constraints"); + public void decimalRangeConstraintsTest() { + final var context = assertEffectiveModelDir("/stmt-test/constraints"); assertNotNull(context); diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YT1339Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YT1339Test.java index ec06bc96f2..c2518756dd 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YT1339Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YT1339Test.java @@ -7,21 +7,18 @@ */ package org.opendaylight.yangtools.yang.stmt; -import static org.hamcrest.CoreMatchers.instanceOf; import static org.hamcrest.CoreMatchers.startsWith; import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.Assert.assertThrows; import org.junit.Test; import org.opendaylight.yangtools.yang.common.YangVersion; -import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException; import org.opendaylight.yangtools.yang.parser.spi.source.YangVersionLinkageException; /** * Tests for {@code MUST NOT} statements around include/import interop of RFC6020 and RFC7950, as per * RFC7950 section 12. */ -public class YT1339Test { +public class YT1339Test extends AbstractYangTest { @Test public void testInclude() { // A YANG version 1.1 module MUST NOT include a YANG version 1 submodule, @@ -31,22 +28,22 @@ public class YT1339Test { } @Test - public void testImportNewByRev() throws Exception { + public void testImportNewByRev() { // A YANG version 1 module or submodule MUST NOT import a YANG version 1.1 module by revision. assertFailedImport("import-rev"); assertFailedImport("import-rev-sub"); } @Test - public void testImportOldByRev() throws Exception { + public void testImportOldByRev() { // A YANG version 1.1 module or submodule MAY import a YANG version 1 module by revision. - compile("import"); + assertEffectiveModelDir("/bugs/YT1339/import"); } @Test - public void testImportNoRev() throws Exception { + public void testImportNoRev() { // no language forbidding imports without revision - compile("import-norev"); + assertEffectiveModelDir("/bugs/YT1339/import-norev"); } private static void assertFailedImport(final String subdir) { @@ -60,12 +57,6 @@ public class YT1339Test { } private static String assertYangVersionLinkageException(final String subdir) { - final var cause = assertThrows(ReactorException.class, () -> compile(subdir)).getCause(); - assertThat(cause, instanceOf(YangVersionLinkageException.class)); - return cause.getMessage(); - } - - private static void compile(final String subdir) throws Exception { - StmtTestUtils.parseYangSources("/bugs/YT1339/" + subdir); + return assertExceptionDir("/bugs/YT1339/" + subdir, YangVersionLinkageException.class).getMessage(); } } -- 2.36.6