From 41327315e3b502015d989360f4727b8526f08b94 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Fri, 6 Nov 2020 17:33:11 +0100 Subject: [PATCH] Convert mdsal-dom-spi to a JPMS module This is a very simple artifact, convert it to a JPMS module. Since this forces us to clean up our encapsulation, also deal with migrating tests to MockitoJUnitRunner.StrictStubs. JIRA: MDSAL-622 Change-Id: I538f720c65c13986e240a499faba99f16698c3cc Signed-off-by: Robert Varga --- dom/mdsal-dom-spi/pom.xml | 14 --- .../src/main/java/module-info.java | 20 ++++ .../AbstractDOMRpcProviderServiceTest.java | 12 +-- .../dom/spi/ForwardingDOMDataBrokerTest.java | 12 +-- ...wardingDOMDataReadOnlyTransactionTest.java | 9 +- ...ForwardingDOMDataWriteTransactionTest.java | 9 +- ...dingDOMNotificationPublishServiceTest.java | 9 +- .../ForwardingDOMNotificationServiceTest.java | 9 +- .../ForwardingDOMRpcImplementationTest.java | 9 +- .../ForwardingDOMRpcProviderServiceTest.java | 8 +- .../dom/spi/ForwardingDOMRpcResultTest.java | 9 +- .../dom/spi/ForwardingDOMRpcServiceTest.java | 2 +- .../ForwardingDOMTransactionChainTest.java | 9 +- ...DelegatingReadableCursorOperationTest.java | 41 ++++---- ...actSnapshotBackedTransactionChainTest.java | 94 +++++++++---------- ...ingDOMStoreThreePhaseCommitCohortTest.java | 9 +- 16 files changed, 135 insertions(+), 140 deletions(-) create mode 100644 dom/mdsal-dom-spi/src/main/java/module-info.java diff --git a/dom/mdsal-dom-spi/pom.xml b/dom/mdsal-dom-spi/pom.xml index 7bff16da76..d3af3cf1ac 100644 --- a/dom/mdsal-dom-spi/pom.xml +++ b/dom/mdsal-dom-spi/pom.xml @@ -32,20 +32,6 @@ - - - - org.apache.felix - maven-bundle-plugin - - - org.opendaylight.mdsal.dom.spi - - - - - - scm:git:http://git.opendaylight.org/gerrit/mdsal.git scm:git:ssh://git.opendaylight.org:29418/mdsal.git diff --git a/dom/mdsal-dom-spi/src/main/java/module-info.java b/dom/mdsal-dom-spi/src/main/java/module-info.java new file mode 100644 index 0000000000..beb30cba22 --- /dev/null +++ b/dom/mdsal-dom-spi/src/main/java/module-info.java @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2020 PANTHEON.tech, s.r.o. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +module org.opendaylight.mdsal.dom.spi { + exports org.opendaylight.mdsal.dom.spi; + exports org.opendaylight.mdsal.dom.spi.query; + exports org.opendaylight.mdsal.dom.spi.shard; + exports org.opendaylight.mdsal.dom.spi.store; + + requires transitive org.opendaylight.mdsal.dom.api; + requires org.opendaylight.yangtools.util; + + // Annotations + requires static transitive org.eclipse.jdt.annotation; + requires static com.github.spotbugs.annotations; +} diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMRpcProviderServiceTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMRpcProviderServiceTest.java index 48d7589058..5f0dd4fa51 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMRpcProviderServiceTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/AbstractDOMRpcProviderServiceTest.java @@ -9,25 +9,25 @@ package org.opendaylight.mdsal.dom.spi; import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; -import static org.mockito.MockitoAnnotations.initMocks; import java.util.Map; import java.util.Set; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier; import org.opendaylight.mdsal.dom.api.DOMRpcImplementation; import org.opendaylight.mdsal.dom.api.DOMRpcImplementationRegistration; import org.opendaylight.yangtools.concepts.Registration; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class AbstractDOMRpcProviderServiceTest extends AbstractDOMRpcProviderService { - @Mock(name = "domRpcImplementationRegistration") - private DOMRpcImplementationRegistration domRpcImplementationRegistration; + public DOMRpcImplementationRegistration domRpcImplementationRegistration; @Test public void registerRpcImplementation() throws Exception { - initMocks(this); assertEquals(domRpcImplementationRegistration, this.registerRpcImplementation( mock(DOMRpcImplementation.class))); } @@ -35,11 +35,11 @@ public class AbstractDOMRpcProviderServiceTest extends AbstractDOMRpcProviderSer @Override public DOMRpcImplementationRegistration registerRpcImplementation( final T implementation, final Set rpcs) { - return domRpcImplementationRegistration; + return (DOMRpcImplementationRegistration) domRpcImplementationRegistration; } @Override - public Registration registerRpcImplementations(Map map) { + public Registration registerRpcImplementations(final Map map) { throw new UnsupportedOperationException(); } } \ No newline at end of file diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataBrokerTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataBrokerTest.java index 09091db0b3..0af5e59f2e 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataBrokerTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataBrokerTest.java @@ -10,24 +10,22 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import com.google.common.collect.ImmutableClassToInstanceMap; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; -import org.mockito.Mockito; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMDataBroker; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMDataBrokerTest extends ForwardingDOMDataBroker { - @Mock(name = "domDataBroker") - private DOMDataBroker domDataBroker; + public DOMDataBroker domDataBroker; @Test public void basicTest() throws Exception { - initMocks(this); - - Mockito.doReturn(null).when(domDataBroker).createTransactionChain(any()); + doReturn(null).when(domDataBroker).createTransactionChain(any()); this.createTransactionChain(null); verify(domDataBroker).createTransactionChain(any()); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataReadOnlyTransactionTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataReadOnlyTransactionTest.java index 23ce40ab74..10e0c192eb 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataReadOnlyTransactionTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataReadOnlyTransactionTest.java @@ -10,21 +10,20 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMDataTreeReadTransaction; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMDataReadOnlyTransactionTest extends ForwardingDOMDataReadOnlyTransaction { - @Mock(name = "domDataTreeReadTransaction") - private DOMDataTreeReadTransaction domDataTreeReadTransaction; + public DOMDataTreeReadTransaction domDataTreeReadTransaction; @Test public void basicTest() throws Exception { - initMocks(this); - doReturn(null).when(domDataTreeReadTransaction).read(null, null); this.read(null, null); verify(domDataTreeReadTransaction).read(null, null); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataWriteTransactionTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataWriteTransactionTest.java index 488e530baf..70682dc1f2 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataWriteTransactionTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMDataWriteTransactionTest.java @@ -10,21 +10,20 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMDataWriteTransactionTest extends ForwardingDOMDataWriteTransaction { - @Mock(name = "domDataTreeWriteTransaction") - private DOMDataTreeWriteTransaction domDataTreeWriteTransaction; + public DOMDataTreeWriteTransaction domDataTreeWriteTransaction; @Test public void basicTest() throws Exception { - initMocks(this); - doReturn(null).when(domDataTreeWriteTransaction).getIdentifier(); this.getIdentifier(); verify(domDataTreeWriteTransaction).getIdentifier(); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationPublishServiceTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationPublishServiceTest.java index a30f12345c..b5632b350d 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationPublishServiceTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationPublishServiceTest.java @@ -10,23 +10,22 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import java.util.concurrent.TimeUnit; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMNotification; import org.opendaylight.mdsal.dom.api.DOMNotificationPublishService; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMNotificationPublishServiceTest extends ForwardingDOMNotificationPublishService { - @Mock(name = "domNotificationPublishService") - private DOMNotificationPublishService domNotificationPublishService; + public DOMNotificationPublishService domNotificationPublishService; @Test public void basicTest() throws Exception { - initMocks(this); - final DOMNotification domNotification = mock(DOMNotification.class); doReturn(null).when(domNotificationPublishService).putNotification(domNotification); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationServiceTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationServiceTest.java index 8aef1b5a42..412b743d3b 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationServiceTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMNotificationServiceTest.java @@ -10,23 +10,22 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import java.util.Collections; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMNotificationListener; import org.opendaylight.mdsal.dom.api.DOMNotificationService; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMNotificationServiceTest extends ForwardingDOMNotificationService { - @Mock(name = "domNotificationService") - private DOMNotificationService domNotificationService; + public DOMNotificationService domNotificationService; @Test public void basicTest() throws Exception { - initMocks(this); - final DOMNotificationListener domNotificationListener = mock(DOMNotificationListener.class); doReturn(null).when(domNotificationService).registerNotificationListener(domNotificationListener); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcImplementationTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcImplementationTest.java index 2781d22be7..fe02e9908f 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcImplementationTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcImplementationTest.java @@ -10,22 +10,21 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier; import org.opendaylight.mdsal.dom.api.DOMRpcImplementation; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMRpcImplementationTest extends ForwardingDOMRpcImplementation { - @Mock(name = "domRpcImplementation") - private DOMRpcImplementation domRpcImplementation; + public DOMRpcImplementation domRpcImplementation; @Test public void basicTest() throws Exception { - initMocks(this); - final DOMRpcIdentifier domRpcIdentifier = mock(DOMRpcIdentifier.class); doReturn(null).when(domRpcImplementation).invokeRpc(domRpcIdentifier, null); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcProviderServiceTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcProviderServiceTest.java index 44f171566a..9cff3605e6 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcProviderServiceTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcProviderServiceTest.java @@ -10,23 +10,23 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import java.util.Collections; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMRpcImplementation; import org.opendaylight.mdsal.dom.api.DOMRpcProviderService; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMRpcProviderServiceTest extends ForwardingDOMRpcProviderService { @Mock(name = "domRpcProviderService") - private DOMRpcProviderService domRpcProviderService; + public DOMRpcProviderService domRpcProviderService; @Test public void basicTest() throws Exception { - initMocks(this); - final DOMRpcImplementation domRpcImplementation = mock(DOMRpcImplementation.class); doReturn(null).when(domRpcProviderService).registerRpcImplementation(domRpcImplementation); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcResultTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcResultTest.java index a8a00d7606..1f19b4e370 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcResultTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcResultTest.java @@ -9,21 +9,20 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMRpcResult; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMRpcResultTest extends ForwardingDOMRpcResult { - @Mock(name = "domRpcResult") - private DOMRpcResult domRpcResult; + public DOMRpcResult domRpcResult; @Test public void basicTest() throws Exception { - initMocks(this); - doReturn(null).when(domRpcResult).getErrors(); this.getErrors(); verify(domRpcResult).getErrors(); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcServiceTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcServiceTest.java index 56dfacb056..97ad1991bc 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcServiceTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMRpcServiceTest.java @@ -22,7 +22,7 @@ import org.opendaylight.yangtools.yang.common.QName; @RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMRpcServiceTest extends ForwardingDOMRpcService { @Mock(name = "domRpcService") - private DOMRpcService domRpcService; + public DOMRpcService domRpcService; @Test public void basicTest() throws Exception { diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMTransactionChainTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMTransactionChainTest.java index cfa21127bb..7030e6238d 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMTransactionChainTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/ForwardingDOMTransactionChainTest.java @@ -10,21 +10,20 @@ package org.opendaylight.mdsal.dom.spi; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.mdsal.dom.api.DOMTransactionChain; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMTransactionChainTest extends ForwardingDOMTransactionChain { - @Mock(name = "domTransactionChain") - private DOMTransactionChain domTransactionChain; + public DOMTransactionChain domTransactionChain; @Test public void basicTest() throws Exception { - initMocks(this); - doReturn(null).when(domTransactionChain).newWriteOnlyTransaction(); this.newWriteOnlyTransaction(); verify(domTransactionChain).newWriteOnlyTransaction(); diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/shard/DelegatingReadableCursorOperationTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/shard/DelegatingReadableCursorOperationTest.java index 83f62411f2..eaecc8acfe 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/shard/DelegatingReadableCursorOperationTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/shard/DelegatingReadableCursorOperationTest.java @@ -11,40 +11,43 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import java.util.Optional; import org.junit.After; import org.junit.Test; -import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshotCursor; -public class DelegatingReadableCursorOperationTest extends DelegatingReadableCursorOperation { - - private static final DataTreeSnapshotCursor MOCK_CURSOR_SNAPSHOT = mock(DataTreeSnapshotCursor.class); +@RunWith(MockitoJUnitRunner.StrictStubs.class) +public class DelegatingReadableCursorOperationTest { + @Mock + public DataTreeSnapshotCursor mockCursorSnapshot; @Test public void basicTest() throws Exception { - final Optional> nodeOptional = Optional.empty(); - doReturn(nodeOptional).when(MOCK_CURSOR_SNAPSHOT).readNode(TestUtils.PATH_ARGUMENT); - doNothing().when(MOCK_CURSOR_SNAPSHOT).exit(); - doNothing().when(MOCK_CURSOR_SNAPSHOT).enter(TestUtils.PATH_ARGUMENT); + doReturn(Optional.empty()).when(mockCursorSnapshot).readNode(TestUtils.PATH_ARGUMENT); + doNothing().when(mockCursorSnapshot).exit(); + doNothing().when(mockCursorSnapshot).enter(TestUtils.PATH_ARGUMENT); doReturn("test").when(TestUtils.PATH_ARGUMENT).toString(); - assertFalse(readNode(TestUtils.PATH_ARGUMENT).isPresent()); - verify(MOCK_CURSOR_SNAPSHOT).readNode(TestUtils.PATH_ARGUMENT); + final var op = new DelegatingReadableCursorOperation() { + @Override + protected DataTreeSnapshotCursor delegate() { + return mockCursorSnapshot; + } + }; - exit(); - verify(MOCK_CURSOR_SNAPSHOT).exit(); + assertFalse(op.readNode(TestUtils.PATH_ARGUMENT).isPresent()); + verify(mockCursorSnapshot).readNode(TestUtils.PATH_ARGUMENT); - assertEquals(this, enter(TestUtils.PATH_ARGUMENT)); - verify(MOCK_CURSOR_SNAPSHOT).enter(TestUtils.PATH_ARGUMENT); - } + op.exit(); + verify(mockCursorSnapshot).exit(); - @Override - protected DataTreeSnapshotCursor delegate() { - return MOCK_CURSOR_SNAPSHOT; + assertEquals(op, op.enter(TestUtils.PATH_ARGUMENT)); + verify(mockCursorSnapshot).enter(TestUtils.PATH_ARGUMENT); } @After diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/AbstractSnapshotBackedTransactionChainTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/AbstractSnapshotBackedTransactionChainTest.java index 60b46eb4d9..1d59166d82 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/AbstractSnapshotBackedTransactionChainTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/AbstractSnapshotBackedTransactionChainTest.java @@ -7,68 +7,64 @@ */ package org.opendaylight.mdsal.dom.spi.store; -import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; -import static org.mockito.MockitoAnnotations.initMocks; -import com.google.common.base.MoreObjects; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -public class AbstractSnapshotBackedTransactionChainTest extends AbstractSnapshotBackedTransactionChain { - +@RunWith(MockitoJUnitRunner.StrictStubs.class) +public class AbstractSnapshotBackedTransactionChainTest { @Mock - private static DataTreeSnapshot dataTreeSnapshot; - + public DataTreeSnapshot dataTreeSnapshot; + @Mock + public DOMStoreThreePhaseCommitCohort domStoreThreePhaseCommitCohort; @Mock - private static DOMStoreThreePhaseCommitCohort domStoreThreePhaseCommitCohort; + public DataTreeModification dataTreeModification; + @Mock + public SnapshotBackedWriteTransaction snapshotBackedWriteTransaction; @Test public void basicTest() throws Exception { - initMocks(this); - SnapshotBackedWriteTransaction snapshotBackedWriteTransaction = - mock(SnapshotBackedWriteTransaction.class); - DataTreeModification dataTreeModification = mock(DataTreeModification.class); doReturn(dataTreeModification).when(dataTreeSnapshot).newModification(); - doReturn(MoreObjects.toStringHelper(this)).when(snapshotBackedWriteTransaction).addToStringAttributes(any()); - - this.newReadOnlyTransaction().close(); - this.newWriteOnlyTransaction().close(); - this.newReadWriteTransaction().close(); - - this.transactionReady(snapshotBackedWriteTransaction, dataTreeModification, null); - - - this.transactionAborted(snapshotBackedWriteTransaction); - this.close(); - - this.onTransactionCommited(snapshotBackedWriteTransaction); - this.onTransactionFailed(snapshotBackedWriteTransaction, null); - - } - - @Override - protected Object nextTransactionIdentifier() { - return new Object(); - } - - @Override - protected boolean getDebugTransactions() { - return false; - } - - @Override - protected DataTreeSnapshot takeSnapshot() { - return dataTreeSnapshot; - } - @Override - protected DOMStoreThreePhaseCommitCohort createCohort(final SnapshotBackedWriteTransaction transaction, - final DataTreeModification modification, - final Exception operationError) { - return domStoreThreePhaseCommitCohort; + final var chain = new AbstractSnapshotBackedTransactionChain<>() { + @Override + protected Object nextTransactionIdentifier() { + return new Object(); + } + + @Override + protected boolean getDebugTransactions() { + return false; + } + + @Override + protected DataTreeSnapshot takeSnapshot() { + return dataTreeSnapshot; + } + + @Override + protected DOMStoreThreePhaseCommitCohort createCohort( + final SnapshotBackedWriteTransaction transaction, final DataTreeModification modification, + final Exception operationError) { + return domStoreThreePhaseCommitCohort; + } + }; + + chain.newReadOnlyTransaction().close(); + chain.newWriteOnlyTransaction().close(); + chain.newReadWriteTransaction().close(); + + chain.transactionReady(snapshotBackedWriteTransaction, dataTreeModification, null); + + chain.transactionAborted(snapshotBackedWriteTransaction); + chain.close(); + + chain.onTransactionCommited(snapshotBackedWriteTransaction); + chain.onTransactionFailed(snapshotBackedWriteTransaction, null); } } \ No newline at end of file diff --git a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/ForwardingDOMStoreThreePhaseCommitCohortTest.java b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/ForwardingDOMStoreThreePhaseCommitCohortTest.java index 5edaec2cc8..d8bba22328 100644 --- a/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/ForwardingDOMStoreThreePhaseCommitCohortTest.java +++ b/dom/mdsal-dom-spi/src/test/java/org/opendaylight/mdsal/dom/spi/store/ForwardingDOMStoreThreePhaseCommitCohortTest.java @@ -9,20 +9,19 @@ package org.opendaylight.mdsal.dom.spi.store; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.verify; -import static org.mockito.MockitoAnnotations.initMocks; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class ForwardingDOMStoreThreePhaseCommitCohortTest extends ForwardingDOMStoreThreePhaseCommitCohort { - @Mock(name = "domStoreThreePhaseCommitCohort") - private DOMStoreThreePhaseCommitCohort domStoreThreePhaseCommitCohort; + public DOMStoreThreePhaseCommitCohort domStoreThreePhaseCommitCohort; @Test public void basicTest() throws Exception { - initMocks(this); - doReturn(null).when(domStoreThreePhaseCommitCohort).canCommit(); this.canCommit(); verify(domStoreThreePhaseCommitCohort).canCommit(); -- 2.36.6