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%2FShardDataTreeMocking.java;h=7de4835e374691b7131fe75b5d9be13492e06965;hb=9905bf0575ff196a531eb114e89b1bdb7226bc6c;hp=6696df0781a5fcdd3dd42acb7a38722117b8261f;hpb=29aa3b83db308b1a511857db8d918e0f2e629407;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeMocking.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeMocking.java index 6696df0781..7de4835e37 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeMocking.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeMocking.java @@ -7,7 +7,8 @@ */ package org.opendaylight.controller.cluster.datastore; -import static org.mockito.Matchers.any; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.Mockito.doAnswer; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.inOrder; @@ -20,6 +21,8 @@ import com.google.common.primitives.UnsignedLong; import com.google.common.util.concurrent.FutureCallback; import org.mockito.InOrder; import org.mockito.invocation.InvocationOnMock; +import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; +import org.opendaylight.controller.cluster.datastore.persisted.CommitTransactionPayload; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; public final class ShardDataTreeMocking { @@ -110,46 +113,37 @@ public final class ShardDataTreeMocking { return commitCallback; } - @SuppressWarnings("unchecked") private static Object invokeSuccess(final InvocationOnMock invocation, final T value) { - invocation.getArgumentAt(0, FutureCallback.class).onSuccess(value); + invocation.>getArgument(0).onSuccess(value); return null; } private static Object invokeFailure(final InvocationOnMock invocation) { - invocation.getArgumentAt(0, FutureCallback.class).onFailure(mock(Exception.class)); + invocation.>getArgument(0).onFailure(mock(Exception.class)); return null; } @SuppressWarnings("unchecked") public static ShardDataTreeCohort failedCanCommit(final ShardDataTreeCohort mock) { - doAnswer(invocation -> { - return invokeFailure(invocation); - }).when(mock).canCommit(any(FutureCallback.class)); + doAnswer(ShardDataTreeMocking::invokeFailure).when(mock).canCommit(any(FutureCallback.class)); return mock; } @SuppressWarnings("unchecked") public static ShardDataTreeCohort failedPreCommit(final ShardDataTreeCohort mock) { - doAnswer(invocation -> { - return invokeFailure(invocation); - }).when(mock).preCommit(any(FutureCallback.class)); + doAnswer(ShardDataTreeMocking::invokeFailure).when(mock).preCommit(any(FutureCallback.class)); return mock; } @SuppressWarnings("unchecked") public static ShardDataTreeCohort failedCommit(final ShardDataTreeCohort mock) { - doAnswer(invocation -> { - return invokeFailure(invocation); - }).when(mock).commit(any(FutureCallback.class)); + doAnswer(ShardDataTreeMocking::invokeFailure).when(mock).commit(any(FutureCallback.class)); return mock; } @SuppressWarnings("unchecked") public static ShardDataTreeCohort successfulCanCommit(final ShardDataTreeCohort mock) { - doAnswer(invocation -> { - return invokeSuccess(invocation, null); - }).when(mock).canCommit(any(FutureCallback.class)); + doAnswer(invocation -> invokeSuccess(invocation, null)).when(mock).canCommit(any(FutureCallback.class)); return mock; } @@ -161,9 +155,7 @@ public final class ShardDataTreeMocking { @SuppressWarnings("unchecked") public static ShardDataTreeCohort successfulPreCommit(final ShardDataTreeCohort mock, final DataTreeCandidate candidate) { - doAnswer(invocation -> { - return invokeSuccess(invocation, candidate); - }).when(mock).preCommit(any(FutureCallback.class)); + doAnswer(invocation -> invokeSuccess(invocation, candidate)).when(mock).preCommit(any(FutureCallback.class)); return mock; } @@ -174,9 +166,7 @@ public final class ShardDataTreeMocking { @SuppressWarnings("unchecked") public static ShardDataTreeCohort successfulCommit(final ShardDataTreeCohort mock, final UnsignedLong index) { - doAnswer(invocation -> { - return invokeSuccess(invocation, index); - }).when(mock).commit(any(FutureCallback.class)); + doAnswer(invocation -> invokeSuccess(invocation, index)).when(mock).commit(any(FutureCallback.class)); return mock; } @@ -188,4 +178,12 @@ public final class ShardDataTreeMocking { inOrder.verify(mock).preCommit(any(FutureCallback.class)); inOrder.verify(mock).commit(any(FutureCallback.class)); } + + public static void immediatePayloadReplication(final ShardDataTree shardDataTree, final Shard mockShard) { + doAnswer(invocation -> { + shardDataTree.applyReplicatedPayload(invocation.getArgument(0), invocation.getArgument(1)); + return null; + }).when(mockShard).persistPayload(any(TransactionIdentifier.class), any(CommitTransactionPayload.class), + anyBoolean()); + } }