From 01bb780c0ffd6920773e7e8ff2ee69b652a762d3 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 16 Nov 2023 18:30:34 +0100 Subject: [PATCH] Migrate netconf-nb to JUnit5 This is a simple test migrate it, updating mocking to eliminate superfluous runs. Change-Id: I7d89def26c6dfc84c870bf0289965e73b4fe46d2 Signed-off-by: Robert Varga --- .../MonitoringToMdsalWriterTest.java | 132 +++++++++--------- 1 file changed, 64 insertions(+), 68 deletions(-) diff --git a/apps/netconf-nb/src/test/java/org/opendaylight/netconf/northbound/monitoring/MonitoringToMdsalWriterTest.java b/apps/netconf-nb/src/test/java/org/opendaylight/netconf/northbound/monitoring/MonitoringToMdsalWriterTest.java index f5290f5717..ce2f22d185 100644 --- a/apps/netconf-nb/src/test/java/org/opendaylight/netconf/northbound/monitoring/MonitoringToMdsalWriterTest.java +++ b/apps/netconf-nb/src/test/java/org/opendaylight/netconf/northbound/monitoring/MonitoringToMdsalWriterTest.java @@ -13,17 +13,17 @@ import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.inOrder; import static org.mockito.Mockito.verify; -import static org.opendaylight.mdsal.common.api.CommitInfo.emptyFluentFuture; import java.util.List; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InOrder; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.binding.api.WriteTransaction; +import org.opendaylight.mdsal.common.api.CommitInfo; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.netconf.server.api.monitoring.NetconfMonitoringService; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.NetconfState; @@ -38,11 +38,8 @@ import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.common.Uint32; -@RunWith(MockitoJUnitRunner.StrictStubs.class) -public class MonitoringToMdsalWriterTest { - private static final InstanceIdentifier INSTANCE_IDENTIFIER = - InstanceIdentifier.create(NetconfState.class); - +@ExtendWith(MockitoExtension.class) +class MonitoringToMdsalWriterTest { @Mock private NetconfMonitoringService monitoring; @Mock @@ -56,37 +53,38 @@ public class MonitoringToMdsalWriterTest { private MonitoringToMdsalWriter writer; - @Before + @BeforeEach public void setUp() { doReturn(capabilityReg).when(monitoring).registerCapabilitiesListener(any()); doReturn(sessionsReg).when(monitoring).registerSessionsListener(any()); - doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); - - doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any()); - doNothing().when(writeTransaction).delete(eq(LogicalDatastoreType.OPERATIONAL), any()); - doReturn(emptyFluentFuture()).when(writeTransaction).commit(); - writer = new MonitoringToMdsalWriter(dataBroker, monitoring); } @Test - public void testClose() throws Exception { + void testClose() { doNothing().when(capabilityReg).close(); doNothing().when(sessionsReg).close(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.close(); - InOrder inOrder = inOrder(capabilityReg, sessionsReg, writeTransaction); + final var inOrder = inOrder(capabilityReg, sessionsReg, writeTransaction); inOrder.verify(sessionsReg).close(); inOrder.verify(capabilityReg).close(); - inOrder.verify(writeTransaction).delete(LogicalDatastoreType.OPERATIONAL, INSTANCE_IDENTIFIER); + inOrder.verify(writeTransaction).delete(LogicalDatastoreType.OPERATIONAL, + InstanceIdentifier.create(NetconfState.class)); inOrder.verify(writeTransaction).commit(); } @Test - public void testOnCapabilityChanged() throws Exception { - final InstanceIdentifier capabilitiesId = - InstanceIdentifier.create(NetconfState.class).child(Capabilities.class); - final Capabilities capabilities = new CapabilitiesBuilder().build(); + void testOnCapabilityChanged() { + final var capabilitiesId = InstanceIdentifier.create(NetconfState.class).child(Capabilities.class); + final var capabilities = new CapabilitiesBuilder().build(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any()); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.onCapabilitiesChanged(capabilities); InOrder inOrder = inOrder(writeTransaction); inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, capabilitiesId, capabilities); @@ -94,71 +92,69 @@ public class MonitoringToMdsalWriterTest { } @Test - public void testOnSchemasChanged() throws Exception { - final InstanceIdentifier schemasId = - InstanceIdentifier.create(NetconfState.class).child(Schemas.class); - final Schemas schemas = new SchemasBuilder().build(); + void testOnSchemasChanged() { + final var schemasId = InstanceIdentifier.create(NetconfState.class).child(Schemas.class); + final var schemas = new SchemasBuilder().build(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any()); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.onSchemasChanged(schemas); - InOrder inOrder = inOrder(writeTransaction); + final var inOrder = inOrder(writeTransaction); inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, schemasId, schemas); inOrder.verify(writeTransaction).commit(); } @Test - public void testOnSessionStart() throws Exception { - Session session = new SessionBuilder() - .setSessionId(Uint32.ONE) - .build(); - final InstanceIdentifier id = - InstanceIdentifier.create(NetconfState.class) - .child(Sessions.class) - .child(Session.class, session.key()); + void testOnSessionStart() { + final var session = new SessionBuilder().setSessionId(Uint32.ONE).build(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any()); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.onSessionStarted(session); - InOrder inOrder = inOrder(writeTransaction); - inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, id, session); + final var inOrder = inOrder(writeTransaction); + inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, + InstanceIdentifier.create(NetconfState.class).child(Sessions.class).child(Session.class, session.key()), + session); inOrder.verify(writeTransaction).commit(); } @Test - public void testOnSessionEnd() throws Exception { - Session session = new SessionBuilder() - .setSessionId(Uint32.ONE) - .build(); - final InstanceIdentifier id = - InstanceIdentifier.create(NetconfState.class) - .child(Sessions.class) - .child(Session.class, session.key()); + void testOnSessionEnd() { + final var session = new SessionBuilder().setSessionId(Uint32.ONE).build(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doNothing().when(writeTransaction).delete(eq(LogicalDatastoreType.OPERATIONAL), any()); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.onSessionEnded(session); - InOrder inOrder = inOrder(writeTransaction); - inOrder.verify(writeTransaction).delete(LogicalDatastoreType.OPERATIONAL, id); + final var inOrder = inOrder(writeTransaction); + inOrder.verify(writeTransaction).delete(LogicalDatastoreType.OPERATIONAL, + InstanceIdentifier.create(NetconfState.class).child(Sessions.class).child(Session.class, session.key())); inOrder.verify(writeTransaction).commit(); } @Test - public void testOnSessionsUpdated() throws Exception { - Session session1 = new SessionBuilder() - .setSessionId(Uint32.ONE) - .build(); - Session session2 = new SessionBuilder() - .setSessionId(Uint32.valueOf(2)) - .build(); - final InstanceIdentifier id1 = - InstanceIdentifier.create(NetconfState.class) - .child(Sessions.class) - .child(Session.class, session1.key()); - final InstanceIdentifier id2 = - InstanceIdentifier.create(NetconfState.class) - .child(Sessions.class) - .child(Session.class, session2.key()); + void testOnSessionsUpdated() { + final var session1 = new SessionBuilder().setSessionId(Uint32.ONE).build(); + final var session2 = new SessionBuilder().setSessionId(Uint32.TWO).build(); + doReturn(writeTransaction).when(dataBroker).newWriteOnlyTransaction(); + doNothing().when(writeTransaction).put(eq(LogicalDatastoreType.OPERATIONAL), any(), any()); + doReturn(CommitInfo.emptyFluentFuture()).when(writeTransaction).commit(); + writer.onSessionsUpdated(List.of(session1, session2)); - InOrder inOrder = inOrder(writeTransaction); - inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, id1, session1); - inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, id2, session2); + final var inOrder = inOrder(writeTransaction); + inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, + InstanceIdentifier.create(NetconfState.class).child(Sessions.class).child(Session.class, session1.key()), + session1); + inOrder.verify(writeTransaction).put(LogicalDatastoreType.OPERATIONAL, + InstanceIdentifier.create(NetconfState.class).child(Sessions.class).child(Session.class, session2.key()), + session2); inOrder.verify(writeTransaction).commit(); } @Test - public void testOnSessionInitiated() throws Exception { + void testOnSessionInitiated() { verify(monitoring).registerCapabilitiesListener(writer); } } \ No newline at end of file -- 2.36.6