X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FReplicatedLogImplTest.java;h=35ecd77d390aa41d477aacdad438bb7a62fcee9e;hp=8e9c6c9271f70d8a2becdcdb89f8cb236a3cdb3b;hb=ff29db5dc6012f77bbe53f57ddce929b0de093b3;hpb=e96021b2e492bbaf7efe0804628bfe055b9733f7 diff --git a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/ReplicatedLogImplTest.java b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/ReplicatedLogImplTest.java index 8e9c6c9271..35ecd77d39 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/ReplicatedLogImplTest.java +++ b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/ReplicatedLogImplTest.java @@ -57,16 +57,17 @@ public class ReplicatedLogImplTest { MockitoAnnotations.initMocks(this); context = new RaftActorContextImpl(null, null, "test", - new ElectionTermImpl(mockPersistence, "test", LOG), -1, -1, Collections.emptyMap(), + new ElectionTermImpl(mockPersistence, "test", LOG), -1, -1, Collections.emptyMap(), configParams, mockPersistence, applyState -> { }, LOG, MoreExecutors.directExecutor()); } - private void verifyPersist(Object message) throws Exception { + private void verifyPersist(final Object message) throws Exception { verifyPersist(message, new Same(message), true); } @SuppressWarnings({ "unchecked", "rawtypes" }) - private void verifyPersist(Object message, ArgumentMatcher matcher, boolean async) throws Exception { + private void verifyPersist(final Object message, final ArgumentMatcher matcher, final boolean async) + throws Exception { ArgumentCaptor procedure = ArgumentCaptor.forClass(Procedure.class); if (async) { verify(mockPersistence).persistAsync(argThat(matcher), procedure.capture()); @@ -196,7 +197,21 @@ public class ReplicatedLogImplTest { verifyNoMoreInteractions(mockPersistence); } - public ArgumentMatcher match(final DeleteEntries actual) { + @Test + public void testCommitFakeSnapshot() { + ReplicatedLog log = ReplicatedLogImpl.newInstance(context); + + log.append(new SimpleReplicatedLogEntry(0, 1, new MockPayload("0"))); + final int dataSizeAfterFirstPayload = log.dataSize(); + + log.snapshotPreCommit(0,1); + log.snapshotCommit(false); + + assertEquals(0, log.size()); + assertEquals(dataSizeAfterFirstPayload, log.dataSize()); + } + + private static ArgumentMatcher match(final DeleteEntries actual) { return other -> actual.getFromIndex() == other.getFromIndex(); } }