This is an automated email from the ASF dual-hosted git repository. slachiewicz pushed a commit to branch mockito4 in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
commit 35537d61df0fb4cbc89ab76d90f79030352b96c1 Author: Sylwester Lachiewicz <[email protected]> AuthorDate: Wed Dec 31 16:52:27 2025 +0100 Refactor tests to use Mockito for mocking and assertions --- pom.xml | 5 -- .../org/apache/maven/wagon/StreamWagonTest.java | 6 +- wagon-provider-test/pom.xml | 4 +- .../apache/maven/wagon/StreamingWagonTestCase.java | 4 +- .../java/org/apache/maven/wagon/WagonTestCase.java | 95 ++++++++-------------- 5 files changed, 42 insertions(+), 72 deletions(-) diff --git a/pom.xml b/pom.xml index 825c10ae..71c78b03 100644 --- a/pom.xml +++ b/pom.xml @@ -228,11 +228,6 @@ under the License. <artifactId>commons-io</artifactId> <version>2.21.0</version> </dependency> - <dependency> - <groupId>org.easymock</groupId> - <artifactId>easymock</artifactId> - <version>5.6.0</version> - </dependency> <dependency> <groupId>org.eclipse.jetty.aggregate</groupId> diff --git a/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java b/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java index 47103b67..332bba94 100644 --- a/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java +++ b/wagon-provider-api/src/test/java/org/apache/maven/wagon/StreamWagonTest.java @@ -96,7 +96,7 @@ public void fillInputData(InputData inputData) { } finally { wagon.disconnect(); } - verify(listener, times(1)).transferInitiated(any(TransferEvent.class)); + verify(listener).transferInitiated(any(TransferEvent.class)); verify(listener, never()).transferStarted(any(TransferEvent.class)); verify(listener, never()).transferCompleted(any(TransferEvent.class)); } @@ -127,7 +127,7 @@ public void fillOutputData(OutputData inputData) { } finally { wagon.disconnect(); } - verify(listener, times(1)).transferInitiated(any(TransferEvent.class)); + verify(listener).transferInitiated(any(TransferEvent.class)); verify(listener, never()).transferStarted(any(TransferEvent.class)); verify(listener, never()).transferCompleted(any(TransferEvent.class)); } @@ -212,7 +212,7 @@ public void fillInputData(InputData inputData) } finally { wagon.disconnect(); } - verify(listener, times(1)).transferInitiated(any(TransferEvent.class)); + verify(listener).transferInitiated(any(TransferEvent.class)); } @Test diff --git a/wagon-provider-test/pom.xml b/wagon-provider-test/pom.xml index ee15bc63..f618679d 100644 --- a/wagon-provider-test/pom.xml +++ b/wagon-provider-test/pom.xml @@ -45,8 +45,8 @@ under the License. <artifactId>plexus-utils</artifactId> </dependency> <dependency> - <groupId>org.easymock</groupId> - <artifactId>easymock</artifactId> + <groupId>org.mockito</groupId> + <artifactId>mockito-core</artifactId> <scope>compile</scope> </dependency> <dependency> diff --git a/wagon-provider-test/src/main/java/org/apache/maven/wagon/StreamingWagonTestCase.java b/wagon-provider-test/src/main/java/org/apache/maven/wagon/StreamingWagonTestCase.java index 539363b4..37c14ea0 100644 --- a/wagon-provider-test/src/main/java/org/apache/maven/wagon/StreamingWagonTestCase.java +++ b/wagon-provider-test/src/main/java/org/apache/maven/wagon/StreamingWagonTestCase.java @@ -213,7 +213,7 @@ private int putStream() throws Exception { disconnectWagon(wagon); - verifyMock(progressAnswer, content.length()); + assertEquals(content.length(), progressAnswer.getSize()); return content.length(); } @@ -237,6 +237,6 @@ private void getStream(int expectedSize) throws Exception { disconnectWagon(wagon); - verifyMock(progressAnswer, expectedSize); + assertEquals(expectedSize, progressAnswer.getSize()); } } diff --git a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java index 8bd56853..6a5e949e 100644 --- a/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java +++ b/wagon-provider-test/src/main/java/org/apache/maven/wagon/WagonTestCase.java @@ -40,21 +40,17 @@ import org.apache.maven.wagon.resource.Resource; import org.codehaus.plexus.PlexusTestCase; import org.codehaus.plexus.util.FileUtils; -import org.easymock.IAnswer; import org.junit.Assume; +import org.mockito.invocation.InvocationOnMock; +import org.mockito.stubbing.Answer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import static org.easymock.EasyMock.anyInt; -import static org.easymock.EasyMock.anyObject; -import static org.easymock.EasyMock.anyString; -import static org.easymock.EasyMock.createMock; -import static org.easymock.EasyMock.eq; -import static org.easymock.EasyMock.expectLastCall; -import static org.easymock.EasyMock.getCurrentArguments; -import static org.easymock.EasyMock.replay; -import static org.easymock.EasyMock.reset; -import static org.easymock.EasyMock.verify; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyInt; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; import static org.junit.Assert.assertArrayEquals; /** @@ -63,11 +59,11 @@ public abstract class WagonTestCase extends PlexusTestCase { protected static Logger logger = LoggerFactory.getLogger(WagonTestCase.class); - static final class ProgressAnswer implements IAnswer { + static final class ProgressAnswer implements Answer<Object> { private int size; - public Object answer() throws Throwable { - int length = (Integer) getCurrentArguments()[2]; + public Object answer(InvocationOnMock invocation) { + int length = invocation.getArgument(2); size += length; return null; } @@ -112,7 +108,7 @@ public int getSize() { protected void setUp() throws Exception { checksumObserver = new ChecksumObserver(); - mockTransferListener = createMock(TransferListener.class); + mockTransferListener = mock(TransferListener.class); super.setUp(); } @@ -317,7 +313,7 @@ protected ProgressAnswer setupGetIfNewerTest(Wagon wagon, boolean expectedResult protected void assertGetIfNewerTest(ProgressAnswer progressAnswer, boolean expectedResult, int expectedSize) throws IOException { if (expectedResult) { - verifyMock(progressAnswer, expectedSize); + assertEquals(expectedSize, progressAnswer.getSize()); assertNotNull("check checksum is not null", checksumObserver.getActualChecksum()); @@ -331,10 +327,6 @@ protected void assertGetIfNewerTest(ProgressAnswer progressAnswer, boolean expec byte[] destContent = Files.readAllBytes(destFile.toPath()); assertArrayEquals(sourceContent, destContent); } else { - verify(mockTransferListener); - - reset(mockTransferListener); - assertNull("check checksum is null", checksumObserver.getActualChecksum()); assertFalse(destFile.exists()); @@ -348,11 +340,9 @@ private void replaceMockForSkippedGetIfNewer(Wagon wagon, int expectedSize) { resource = new Resource(this.resource); resource.setContentLength(getExpectedContentLengthOnGet(expectedSize)); resource.setLastModified(getExpectedLastModifiedOnGet(testRepository, resource)); - - mockTransferListener.debug(anyString()); - expectLastCall().anyTimes(); - - replay(mockTransferListener); + // TODO: transfer skipped event? + // mockTransferListener.transferSkipped( createTransferEvent( wagon, resource, TransferEvent.TRANSFER_STARTED, + // TransferEvent.REQUEST_GET, destFile ) ); } public void testWagonPutDirectory() throws Exception { @@ -801,7 +791,7 @@ protected void putFile(String resourceName, String testFileName, String content) disconnectWagon(wagon); - verifyMock(progressAnswer, content.length()); + assertEquals(content.length(), progressAnswer.getSize()); } protected ProgressAnswer replayMockForPut(String resourceName, String content, Wagon wagon) { @@ -813,21 +803,22 @@ protected ProgressAnswer replayMockForPut(String resourceName, String content, W resource.setLastModified(sourceFile.lastModified()); mockTransferListener.transferStarted(createTransferEvent( wagon, resource, TransferEvent.TRANSFER_STARTED, TransferEvent.REQUEST_PUT, sourceFile)); - mockTransferListener.transferProgress( - eq(createTransferEvent( - wagon, resource, TransferEvent.TRANSFER_PROGRESS, TransferEvent.REQUEST_PUT, sourceFile)), - anyObject(byte[].class), - anyInt()); ProgressAnswer progressAnswer = new ProgressAnswer(); - expectLastCall().andStubAnswer(progressAnswer); - - mockTransferListener.debug(anyString()); - expectLastCall().anyTimes(); + doAnswer(progressAnswer) + .when(mockTransferListener) + .transferProgress( + eq(createTransferEvent( + wagon, + resource, + TransferEvent.TRANSFER_PROGRESS, + TransferEvent.REQUEST_PUT, + sourceFile)), + any(byte[].class), + anyInt()); mockTransferListener.transferCompleted(createTransferEvent( wagon, resource, TransferEvent.TRANSFER_COMPLETED, TransferEvent.REQUEST_PUT, sourceFile)); - replay(mockTransferListener); return progressAnswer; } @@ -860,15 +851,7 @@ protected void getFile(int expectedSize) throws Exception { disconnectWagon(wagon); - verifyMock(progressAnswer, expectedSize); - } - - protected void verifyMock(ProgressAnswer progressAnswer, int length) { - verify(mockTransferListener); - - assertEquals(length, progressAnswer.getSize()); - - reset(mockTransferListener); + assertEquals(expectedSize, progressAnswer.getSize()); } protected void disconnectWagon(Wagon wagon) throws ConnectionException { @@ -906,26 +889,18 @@ protected ProgressAnswer replaceMockForGet(Wagon wagon, int expectedSize) { TransferEvent te = createTransferEvent(wagon, resource, TransferEvent.TRANSFER_STARTED, TransferEvent.REQUEST_GET, null); mockTransferListener.transferStarted(te); - mockTransferListener.transferProgress( - eq(new TransferEvent(wagon, resource, TransferEvent.TRANSFER_PROGRESS, TransferEvent.REQUEST_GET)), - anyObject(byte[].class), - anyInt()); - ProgressAnswer progressAnswer = new ProgressAnswer(); - - if (assertOnTransferProgress()) { - expectLastCall().andAnswer(progressAnswer); - } else { - expectLastCall().andAnswer(progressAnswer); - expectLastCall().anyTimes(); - } - mockTransferListener.debug(anyString()); - expectLastCall().anyTimes(); + doAnswer(progressAnswer) + .when(mockTransferListener) + .transferProgress( + eq(new TransferEvent( + wagon, resource, TransferEvent.TRANSFER_PROGRESS, TransferEvent.REQUEST_GET)), + any(byte[].class), + anyInt()); mockTransferListener.transferCompleted(createTransferEvent( wagon, resource, TransferEvent.TRANSFER_COMPLETED, TransferEvent.REQUEST_GET, destFile)); - replay(mockTransferListener); return progressAnswer; }
