X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FSimpleShardDataTreeCohortTest.java;h=94617ed4c682d65e444950b8d918b66eea1e81f2;hb=HEAD;hp=7d2500b7168249685752f68505697e1662ed5c35;hpb=5fd8e6506248cc34da72281a1662612f6c2b2f9a;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java index 7d2500b716..b8390f9fcd 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java @@ -8,9 +8,8 @@ package org.opendaylight.controller.cluster.datastore; import static org.junit.Assert.assertSame; -import static org.mockito.Matchers.any; +import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doAnswer; -import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; @@ -19,27 +18,28 @@ import static org.mockito.Mockito.verifyNoMoreInteractions; import com.google.common.primitives.UnsignedLong; import com.google.common.util.concurrent.FutureCallback; -import java.util.Collections; import java.util.Optional; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Future; import org.junit.Before; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnitRunner; +import org.opendaylight.yangtools.yang.common.Empty; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateTip; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import scala.concurrent.Promise; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateTip; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; /** * Unit tests for SimpleShardDataTreeCohort. * * @author Thomas Pantelis */ +@RunWith(MockitoJUnitRunner.StrictStubs.class) public class SimpleShardDataTreeCohortTest extends AbstractTest { @Mock private ShardDataTree mockShardDataTree; @@ -56,43 +56,41 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { private SimpleShardDataTreeCohort cohort; @Before - public void setup() throws Exception { - MockitoAnnotations.initMocks(this); - - doNothing().when(mockUserCohorts).commit(); + public void setup() { + doReturn(Optional.empty()).when(mockUserCohorts).commit(); doReturn(Optional.empty()).when(mockUserCohorts).abort(); cohort = new SimpleShardDataTreeCohort(mockShardDataTree, mockModification, nextTransactionId(), - mockUserCohorts); + mockUserCohorts, Optional.empty()); } @Test - public void testCanCommitSuccess() throws Exception { + public void testCanCommitSuccess() { canCommitSuccess(); } private void canCommitSuccess() { doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).successfulCanCommit(); + invocation.getArgument(0).successfulCanCommit(); return null; }).when(mockShardDataTree).startCanCommit(cohort); @SuppressWarnings("unchecked") - final FutureCallback callback = mock(FutureCallback.class); + final FutureCallback callback = mock(FutureCallback.class); cohort.canCommit(callback); - verify(callback).onSuccess(null); + verify(callback).onSuccess(Empty.value()); verifyNoMoreInteractions(callback); } - private void testValidatationPropagates(final Exception cause) throws DataValidationFailedException { + private void testValidatationPropagates(final Exception cause) { doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).failedCanCommit(cause); + invocation.getArgument(0).failedCanCommit(cause); return null; }).when(mockShardDataTree).startCanCommit(cohort); @SuppressWarnings("unchecked") - final FutureCallback callback = mock(FutureCallback.class); + final FutureCallback callback = mock(FutureCallback.class); cohort.canCommit(callback); verify(callback).onFailure(cause); @@ -100,24 +98,24 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { } @Test - public void testCanCommitWithConflictingModEx() throws DataValidationFailedException { - testValidatationPropagates(new ConflictingModificationAppliedException(YangInstanceIdentifier.EMPTY, "mock")); + public void testCanCommitWithConflictingModEx() { + testValidatationPropagates(new ConflictingModificationAppliedException(YangInstanceIdentifier.of(), "mock")); } @Test - public void testCanCommitWithDataValidationEx() throws DataValidationFailedException { - testValidatationPropagates(new DataValidationFailedException(YangInstanceIdentifier.EMPTY, "mock")); + public void testCanCommitWithDataValidationEx() { + testValidatationPropagates(new DataValidationFailedException(YangInstanceIdentifier.of(), "mock")); } @Test - public void testCanCommitWithIllegalArgumentEx() throws DataValidationFailedException { + public void testCanCommitWithIllegalArgumentEx() { testValidatationPropagates(new IllegalArgumentException("mock")); } private DataTreeCandidateTip preCommitSuccess() { final DataTreeCandidateTip mockCandidate = mock(DataTreeCandidateTip.class); doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).successfulPreCommit(mockCandidate); + invocation.getArgument(0).successfulPreCommit(mockCandidate); return null; }).when(mockShardDataTree).startPreCommit(cohort); @@ -134,12 +132,12 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { } @Test - public void testPreCommitAndCommitSuccess() throws Exception { + public void testPreCommitAndCommitSuccess() { canCommitSuccess(); final DataTreeCandidateTip candidate = preCommitSuccess(); doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).successfulCommit(UnsignedLong.valueOf(0)); + invocation.getArgument(0).successfulCommit(UnsignedLong.valueOf(0), () -> { }); return null; }).when(mockShardDataTree).startCommit(cohort, candidate); @@ -154,12 +152,12 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { } @Test - public void testPreCommitWithIllegalArgumentEx() throws Exception { + public void testPreCommitWithIllegalArgumentEx() { canCommitSuccess(); final Exception cause = new IllegalArgumentException("mock"); doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).failedPreCommit(cause); + invocation.getArgument(0).failedPreCommit(cause); return null; }).when(mockShardDataTree).startPreCommit(cohort); @@ -174,7 +172,7 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { } @Test - public void testPreCommitWithReportedFailure() throws Exception { + public void testPreCommitWithReportedFailure() { canCommitSuccess(); final Exception cause = new IllegalArgumentException("mock"); @@ -197,7 +195,7 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { final Exception cause = new IllegalArgumentException("mock"); doAnswer(invocation -> { - invocation.getArgumentAt(0, SimpleShardDataTreeCohort.class).failedCommit(cause); + invocation.getArgument(0).failedCommit(cause); return null; }).when(mockShardDataTree).startCommit(cohort, candidate); @@ -212,11 +210,11 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { } private static Future abort(final ShardDataTreeCohort cohort) { - final CompletableFuture f = new CompletableFuture<>(); - cohort.abort(new FutureCallback() { + final CompletableFuture f = new CompletableFuture<>(); + cohort.abort(new FutureCallback<>() { @Override - public void onSuccess(final Void result) { - f.complete(null); + public void onSuccess(final Empty result) { + f.complete(result); } @Override @@ -230,7 +228,7 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { @Test public void testAbort() throws Exception { - doNothing().when(mockShardDataTree).startAbort(cohort); + doReturn(Boolean.TRUE).when(mockShardDataTree).startAbort(cohort); abort(cohort).get(); verify(mockShardDataTree).startAbort(cohort); @@ -238,15 +236,12 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { @Test public void testAbortWithCohorts() throws Exception { - doNothing().when(mockShardDataTree).startAbort(cohort); + doReturn(true).when(mockShardDataTree).startAbort(cohort); - final Promise> cohortFuture = akka.dispatch.Futures.promise(); - doReturn(Optional.of(cohortFuture.future())).when(mockUserCohorts).abort(); + doReturn(Optional.of(CompletableFuture.completedFuture(null))).when(mockUserCohorts).abort(); final Future abortFuture = abort(cohort); - cohortFuture.success(Collections.emptyList()); - abortFuture.get(); verify(mockShardDataTree).startAbort(cohort); }