Migrate rfc6643-parser-support to JUnit5 03/106903/4
authormatus.matok <matus.matok@pantheon.tech>
Thu, 13 Jul 2023 08:18:46 +0000 (10:18 +0200)
committerRobert Varga <nite@hq.sk>
Fri, 21 Jul 2023 12:26:56 +0000 (12:26 +0000)
Migrated all tests to use JUnit5 Assertions, using
openrewrite:rewrite-testing-frameworks and modernize the tests.

JIRA: YANGTOOLS-1521
Change-Id: I748289df3fb3fbf7d8ce208b6304cc1438f0c41a
Signed-off-by: matus.matok <matus.matok@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
parser/rfc6643-parser-support/src/test/java/org/opendaylight/yangtools/rfc6643/parser/IetfYangSmiv2ExtensionPluginTest.java
parser/rfc6643-parser-support/src/test/java/org/opendaylight/yangtools/rfc6643/parser/IetfYangSmiv2ExtensionsMappingTest.java
parser/rfc6643-parser-support/src/test/java/org/opendaylight/yangtools/rfc6643/parser/ObjectIdentifierTest.java

index 0a03f19691e18e7c7e01ff274853ac2a2be7c368..5c277aba9202d7952fed3bf71f2c3d88baf8418f 100644 (file)
@@ -7,13 +7,10 @@
  */
 package org.opendaylight.yangtools.rfc6643.parser;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertInstanceOf;
 
-import java.io.IOException;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 import org.opendaylight.yangtools.rfc6643.model.api.AliasSchemaNode;
 import org.opendaylight.yangtools.rfc6643.model.api.DefValSchemaNode;
 import org.opendaylight.yangtools.rfc6643.model.api.ImpliedSchemaNode;
@@ -25,28 +22,21 @@ import org.opendaylight.yangtools.rfc6643.model.api.SubIdSchemaNode;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.Uint32;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource;
 import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
-import org.opendaylight.yangtools.yang.parser.api.YangSyntaxErrorException;
 import org.opendaylight.yangtools.yang.parser.rfc7950.reactor.RFC7950Reactors;
 import org.opendaylight.yangtools.yang.parser.rfc7950.repo.YangStatementStreamSource;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelProcessingPhase;
-import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
-import org.opendaylight.yangtools.yang.parser.stmt.reactor.CrossSourceStatementReactor;
 
-public class IetfYangSmiv2ExtensionPluginTest {
+class IetfYangSmiv2ExtensionPluginTest {
     private static final String NS = "urn:opendaylight:yang:extension:third-party";
     private static final String REV = "2016-06-09";
 
-    private static CrossSourceStatementReactor reactor;
-
-    @BeforeClass
-    public static void createReactor() {
-        reactor = RFC7950Reactors.defaultReactorBuilder()
+    @Test
+    void testExtensions() throws Exception {
+        final var reactor = RFC7950Reactors.defaultReactorBuilder()
             .addStatementSupport(ModelProcessingPhase.FULL_DECLARATION,
                 new DisplayHintStatementSupport(YangParserConfiguration.DEFAULT))
             .addStatementSupport(ModelProcessingPhase.FULL_DECLARATION,
@@ -62,71 +52,57 @@ public class IetfYangSmiv2ExtensionPluginTest {
             .addStatementSupport(ModelProcessingPhase.FULL_DECLARATION,
                 new SubIdStatementSupport(YangParserConfiguration.DEFAULT))
             .build();
-    }
-
-    @AfterClass
-    public static void freeReactor() {
-        reactor = null;
-    }
+        final var schema = reactor.newBuild()
+            .addSources(
+                YangStatementStreamSource.create(YangTextSchemaSource.forResource(
+                    IetfYangSmiv2ExtensionPluginTest.class, "/foo.yang")),
+                YangStatementStreamSource.create(YangTextSchemaSource.forResource(
+                    IetfYangSmiv2ExtensionPluginTest.class, "/ietf-yang-smiv2.yang")))
+            .buildEffective();
 
-    @Test
-    public void testExtensions() throws ReactorException, YangSyntaxErrorException, IOException {
-        SchemaContext schema = createSchema();
-
-        assertTrue(schema.getUnknownSchemaNodes().size() == 1);
-        AliasSchemaNode aliasExtEffectStmt = (AliasSchemaNode) schema.getUnknownSchemaNodes().iterator().next();
-        assertEquals(aliasExtEffectStmt.getArgument(), "ifXTable");
-        assertTrue(aliasExtEffectStmt.getUnknownSchemaNodes().size() == 1);
-        OidSchemaNode oidExtEffectStmt = (OidSchemaNode) aliasExtEffectStmt.getUnknownSchemaNodes().iterator().next();
-        assertEquals(oidExtEffectStmt.getArgument().toString(), "1.3.6.1.2.1.31.1.1");
+        assertEquals(1, schema.getUnknownSchemaNodes().size());
+        final var aliasExtEffectStmt = assertInstanceOf(AliasSchemaNode.class,
+            schema.getUnknownSchemaNodes().iterator().next());
+        assertEquals("ifXTable", aliasExtEffectStmt.getArgument());
+        assertEquals(1, aliasExtEffectStmt.getUnknownSchemaNodes().size());
+        final var oidExtEffectStmt = assertInstanceOf(OidSchemaNode.class,
+            aliasExtEffectStmt.getUnknownSchemaNodes().iterator().next());
+        assertEquals("1.3.6.1.2.1.31.1.1", oidExtEffectStmt.getArgument().toString());
 
-        final DataSchemaNode dataChildByName = schema.getDataChildByName(QName.create(NS, REV, "root"));
-        assertTrue(dataChildByName instanceof ContainerSchemaNode);
-        final ContainerSchemaNode root = (ContainerSchemaNode) dataChildByName;
+        final var root = assertInstanceOf(ContainerSchemaNode.class,
+            schema.dataChildByName(QName.create(NS, REV, "root")));
         assertEquals(1, root.getUnknownSchemaNodes().size());
-        OidSchemaNode oid = (OidSchemaNode) root.getUnknownSchemaNodes().iterator().next();
-        assertEquals(oid.getArgument().toString(), "1");
+        final var oid = assertInstanceOf(OidSchemaNode.class, root.getUnknownSchemaNodes().iterator().next());
+        assertEquals("1", oid.getArgument().toString());
 
-        ListSchemaNode ifStackEntry = (ListSchemaNode) root.getDataChildByName(QName.create(NS, REV, "ifStackEntry"));
+        final var ifStackEntry = assertInstanceOf(ListSchemaNode.class,
+            root.dataChildByName(QName.create(NS, REV, "ifStackEntry")));
         assertEquals(2, ifStackEntry.getUnknownSchemaNodes().size());
         ifStackEntry.getUnknownSchemaNodes().forEach(unknownSchemaNode -> {
-            if (unknownSchemaNode instanceof OidSchemaNode) {
-                assertEquals(((OidSchemaNode) unknownSchemaNode).getArgument().toString(),
-                        ObjectIdentifier.forString("1.1").toString());
-            } else if (unknownSchemaNode instanceof ImpliedSchemaNode) {
-                assertEquals(((ImpliedSchemaNode) unknownSchemaNode).getArgument(), "ifStackHigherLayer");
+            if (unknownSchemaNode instanceof OidSchemaNode oidSchema) {
+                assertEquals(ObjectIdentifier.forString("1.1"), oidSchema.getArgument());
+            } else if (unknownSchemaNode instanceof ImpliedSchemaNode impliedSchema) {
+                assertEquals("ifStackHigherLayer", impliedSchema.getArgument());
             }
         });
 
-        LeafSchemaNode ifStackHigherLayer = (LeafSchemaNode)
-                ifStackEntry.getDataChildByName(QName.create(NS, REV, "ifStackHigherLayer"));
-
+        final var ifStackHigherLayer = assertInstanceOf(LeafSchemaNode.class,
+            ifStackEntry.dataChildByName(QName.create(NS, REV, "ifStackHigherLayer")));
         ifStackHigherLayer.getUnknownSchemaNodes().forEach(unknownSchemaNode -> {
-            if (unknownSchemaNode instanceof MaxAccessSchemaNode) {
-                final MaxAccessSchemaNode maxAccess = (MaxAccessSchemaNode) unknownSchemaNode;
+            if (unknownSchemaNode instanceof MaxAccessSchemaNode maxAccess) {
                 assertEquals(MaxAccess.NOT_ACCESSIBLE, maxAccess.getArgument());
             }
         });
 
-        LeafSchemaNode testNumberLeaf = (LeafSchemaNode)
-                ifStackEntry.getDataChildByName(QName.create(NS, REV, "test-number"));
+        final var testNumberLeaf = assertInstanceOf(LeafSchemaNode.class,
+            ifStackEntry.getDataChildByName(QName.create(NS, REV, "test-number")));
         assertEquals(3, testNumberLeaf.getUnknownSchemaNodes().size());
         testNumberLeaf.getUnknownSchemaNodes().forEach(unknownSchemaNode -> {
-            if (unknownSchemaNode instanceof SubIdSchemaNode) {
-                assertEquals(Uint32.TWO, ((SubIdSchemaNode) unknownSchemaNode).getArgument());
-            } else if (unknownSchemaNode instanceof DefValSchemaNode) {
-                assertEquals("0", ((DefValSchemaNode) unknownSchemaNode).getArgument());
+            if (unknownSchemaNode instanceof SubIdSchemaNode subId) {
+                assertEquals(Uint32.TWO, subId.getArgument());
+            } else if (unknownSchemaNode instanceof DefValSchemaNode defVal) {
+                assertEquals("0", defVal.getArgument());
             }
         });
     }
-
-    private static SchemaContext createSchema() throws ReactorException, YangSyntaxErrorException, IOException {
-        return reactor.newBuild()
-                .addSources(
-                    YangStatementStreamSource.create(YangTextSchemaSource.forResource(
-                        IetfYangSmiv2ExtensionPluginTest.class, "/foo.yang")),
-                    YangStatementStreamSource.create(YangTextSchemaSource.forResource(
-                        IetfYangSmiv2ExtensionPluginTest.class, "/ietf-yang-smiv2.yang")))
-                .buildEffective();
-    }
 }
index 0c2d437494e6c805d793e87ac914702f92d7df1b..021367ebee31e510f7ca965e741e4526c631263e 100644 (file)
@@ -7,22 +7,22 @@
  */
 package org.opendaylight.yangtools.rfc6643.parser;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
 
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 import org.opendaylight.yangtools.rfc6643.model.api.AliasEffectiveStatement;
 import org.opendaylight.yangtools.rfc6643.model.api.IetfYangSmiv2ExtensionsMapping;
 
-public class IetfYangSmiv2ExtensionsMappingTest {
+class IetfYangSmiv2ExtensionsMappingTest {
     @Test
-    public void testGetEffectiveRepresentationClass() {
-        assertEquals(IetfYangSmiv2ExtensionsMapping.ALIAS.getEffectiveRepresentationClass(),
-            AliasEffectiveStatement.class);
+    void testGetEffectiveRepresentationClass() {
+        assertEquals(AliasEffectiveStatement.class,
+            IetfYangSmiv2ExtensionsMapping.ALIAS.getEffectiveRepresentationClass());
     }
 
     @Test
-    public void testIsArgumentYinElement() {
+    void testIsArgumentYinElement() {
         assertFalse(IetfYangSmiv2ExtensionsMapping.ALIAS.getArgumentDefinition().orElseThrow().isYinElement());
     }
 }
index 7aa5334088315982147fd22f854132b6042845ad..779704b075b33414bab68475233f0e3e969f5b9b 100644 (file)
@@ -7,14 +7,14 @@
  */
 package org.opendaylight.yangtools.rfc6643.parser;
 
-import static org.junit.Assert.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertThrows;
 
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 import org.opendaylight.yangtools.rfc6643.model.api.ObjectIdentifier;
 
-public class ObjectIdentifierTest {
+class ObjectIdentifierTest {
     @Test
-    public void testObjectIdentifierCreationWithBadOID() {
+    void testObjectIdentifierCreationWithBadOID() {
         assertThrows(IllegalArgumentException.class, () -> ObjectIdentifier.forString("bad oid"));
     }
 }