diff --git a/spring-boot-tools/spring-boot-loader/src/test/java/org/springframework/boot/loader/jar/CentralDirectoryParserTests.java b/spring-boot-tools/spring-boot-loader/src/test/java/org/springframework/boot/loader/jar/CentralDirectoryParserTests.java index 6aa6c33fea..ac5e4126b8 100644 --- a/spring-boot-tools/spring-boot-loader/src/test/java/org/springframework/boot/loader/jar/CentralDirectoryParserTests.java +++ b/spring-boot-tools/spring-boot-loader/src/test/java/org/springframework/boot/loader/jar/CentralDirectoryParserTests.java @@ -25,18 +25,12 @@ import org.junit.Before; import org.junit.Rule; import org.junit.Test; import org.junit.rules.TemporaryFolder; -import org.mockito.InOrder; import org.springframework.boot.loader.TestJarCreator; import org.springframework.boot.loader.data.RandomAccessData; import org.springframework.boot.loader.data.RandomAccessDataFile; import static org.assertj.core.api.Assertions.assertThat; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.Mockito.atLeastOnce; -import static org.mockito.Mockito.inOrder; -import static org.mockito.Mockito.mock; /** * Tests for {@link CentralDirectoryParser}. @@ -61,16 +55,13 @@ public class CentralDirectoryParserTests { @Test public void visitsInOrder() throws Exception { - CentralDirectoryVisitor visitor = mock(CentralDirectoryVisitor.class); + MockCentralDirectoryVisitor visitor = new MockCentralDirectoryVisitor(); CentralDirectoryParser parser = new CentralDirectoryParser(); parser.addVisitor(visitor); parser.parse(this.jarData, false); - InOrder ordered = inOrder(visitor); - ordered.verify(visitor).visitStart(any(CentralDirectoryEndRecord.class), - any(RandomAccessData.class)); - ordered.verify(visitor, atLeastOnce()) - .visitFileHeader(any(CentralDirectoryFileHeader.class), anyInt()); - ordered.verify(visitor).visitEnd(); + List invocations = visitor.invocations; + assertThat(invocations).startsWith("visitStart").endsWith("visitEnd") + .contains("visitFileHeader"); } @Test @@ -118,4 +109,31 @@ public class CentralDirectoryParserTests { } + private static class MockCentralDirectoryVisitor implements CentralDirectoryVisitor { + + private final List invocations = new ArrayList(); + + @Override + public void visitStart(CentralDirectoryEndRecord endRecord, + RandomAccessData centralDirectoryData) { + this.invocations.add("visitStart"); + } + + @Override + public void visitFileHeader(CentralDirectoryFileHeader fileHeader, + int dataOffset) { + this.invocations.add("visitFileHeader"); + } + + @Override + public void visitEnd() { + this.invocations.add("visitEnd"); + } + + public List getInvocations() { + return this.invocations; + } + + } + }