From a5ac6e1540fbcbc3357826ddae4e32e03b01ac98 Mon Sep 17 00:00:00 2001 From: Marcin Date: Sun, 4 Oct 2026 20:42:35 +0200 Subject: [PATCH] easymock dependency removed, tests fixedeasymock dependency removed, tests fixed easymock dependency removed, tests fixed jmock dependency removed, tests fixed --- mina-core/pom.xml | 5 - .../codec/DemuxingProtocolDecoderBugTest.java | 28 ++-- .../stream/AbstractStreamWriteFilterTest.java | 137 +++++------------- .../mina/filter/util/WrappingFilterTest.java | 10 +- .../handler/demux/DemuxingIoHandlerTest.java | 87 +++++------ .../mina/util/byteaccess/ByteAccessTest.java | 5 - mina-example/pom.xml | 6 +- .../haiku/HaikuValidatorIoHandlerTest.java | 34 +++-- .../example/haiku/ToHaikuIoFilterTest.java | 63 +++----- mina-statemachine/pom.xml | 4 +- .../apache/mina/statemachine/StateTest.java | 19 +-- .../transition/MethodTransitionTest.java | 6 +- pom.xml | 17 --- 13 files changed, 149 insertions(+), 272 deletions(-) diff --git a/mina-core/pom.xml b/mina-core/pom.xml index af451c74ed..e941c51c75 100644 --- a/mina-core/pom.xml +++ b/mina-core/pom.xml @@ -33,11 +33,6 @@ - - org.easymock - easymock - - org.mockito mockito-core diff --git a/mina-core/src/test/java/org/apache/mina/filter/codec/DemuxingProtocolDecoderBugTest.java b/mina-core/src/test/java/org/apache/mina/filter/codec/DemuxingProtocolDecoderBugTest.java index 958b24ee77..290f93f179 100644 --- a/mina-core/src/test/java/org/apache/mina/filter/codec/DemuxingProtocolDecoderBugTest.java +++ b/mina-core/src/test/java/org/apache/mina/filter/codec/DemuxingProtocolDecoderBugTest.java @@ -22,19 +22,21 @@ import org.apache.mina.filter.codec.demux.MessageDecoderResult; import org.apache.mina.filter.codec.demux.MessageDecoderAdapter; import org.apache.mina.filter.codec.demux.DemuxingProtocolDecoder; -import org.apache.mina.filter.codec.ProtocolDecoderOutput; import org.apache.mina.core.session.IoSession; import org.apache.mina.core.session.DummySession; import org.apache.mina.core.buffer.IoBuffer; import org.apache.mina.core.service.DefaultTransportMetadata; import org.apache.mina.core.file.FileRegion; import org.apache.mina.transport.socket.SocketSessionConfig; -import org.easymock.EasyMock; import org.junit.Test; import java.net.InetSocketAddress; import java.nio.charset.Charset; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; + /** * Simple Unit Test showing that the DemuxingProtocolDecoder has * inconsistent behavior if used with a non fragmented transport. @@ -44,13 +46,7 @@ public class DemuxingProtocolDecoderBugTest { private static void doTest(IoSession session) throws Exception { - ProtocolDecoderOutput mock = EasyMock.createMock(ProtocolDecoderOutput.class); - mock.write(Character.valueOf('A')); - mock.write(Character.valueOf('B')); - mock.write(Integer.valueOf(1)); - mock.write(Integer.valueOf(2)); - mock.write(Character.valueOf('C')); - EasyMock.replay(mock); + ProtocolDecoderOutput output = mock(ProtocolDecoderOutput.class); IoBuffer buffer = IoBuffer.allocate(1000); buffer.putString("AB12C", Charset.defaultCharset().newEncoder()); @@ -60,9 +56,15 @@ private static void doTest(IoSession session) throws Exception { decoder.addMessageDecoder(CharacterMessageDecoder.class); decoder.addMessageDecoder(IntegerMessageDecoder.class); - decoder.decode(session, buffer, mock); + decoder.decode(session, buffer, output); + + verify(output).write(Character.valueOf('A')); + verify(output).write(Character.valueOf('B')); + verify(output).write(Integer.valueOf(1)); + verify(output).write(Integer.valueOf(2)); + verify(output).write(Character.valueOf('C')); - EasyMock.verify(mock); + verifyNoMoreInteractions(output); } public static class CharacterMessageDecoder extends MessageDecoderAdapter { @@ -70,7 +72,7 @@ public MessageDecoderResult decodable(IoSession session, IoBuffer in) { return Character.isDigit((char) in.get()) ? MessageDecoderResult.NOT_OK : MessageDecoderResult.OK; } - public MessageDecoderResult decode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) throws Exception { + public MessageDecoderResult decode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) { out.write(Character.valueOf((char) in.get())); return MessageDecoderResult.OK; } @@ -81,7 +83,7 @@ public MessageDecoderResult decodable(IoSession session, IoBuffer in) { return Character.isDigit((char) in.get()) ? MessageDecoderResult.OK : MessageDecoderResult.NOT_OK; } - public MessageDecoderResult decode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) throws Exception { + public MessageDecoderResult decode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) { out.write(Integer.parseInt("" + (char) in.get())); return MessageDecoderResult.OK; } diff --git a/mina-core/src/test/java/org/apache/mina/filter/stream/AbstractStreamWriteFilterTest.java b/mina-core/src/test/java/org/apache/mina/filter/stream/AbstractStreamWriteFilterTest.java index c12a1ce549..52ae92e75b 100644 --- a/mina-core/src/test/java/org/apache/mina/filter/stream/AbstractStreamWriteFilterTest.java +++ b/mina-core/src/test/java/org/apache/mina/filter/stream/AbstractStreamWriteFilterTest.java @@ -23,6 +23,11 @@ import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import static org.mockito.ArgumentMatchers.argThat; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; import java.net.InetSocketAddress; import java.net.SocketAddress; @@ -46,9 +51,8 @@ import org.apache.mina.transport.socket.nio.NioSocketAcceptor; import org.apache.mina.transport.socket.nio.NioSocketConnector; import org.apache.mina.util.AcceptorBindUtil; -import org.easymock.IArgumentMatcher; -import org.easymock.EasyMock; import org.junit.Test; +import org.mockito.ArgumentMatcher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -74,23 +78,11 @@ public void testWriteEmptyFile() throws Exception { WriteRequest writeRequest = new DefaultWriteRequest(message, new DummyWriteFuture()); - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - /* - * Record expectations - */ - nextFilter.messageSent(session, writeRequest); - - /* - * Replay. - */ - EasyMock.replay(nextFilter); - + NextFilter nextFilter = mock(NextFilter.class); filter.filterWrite(nextFilter, session, writeRequest); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verify(nextFilter).messageSent(session, writeRequest); + verifyNoMoreInteractions(nextFilter); assertTrue(writeRequest.getFuture().isWritten()); } @@ -108,25 +100,13 @@ public void testWriteNonFileRegionMessage() throws Exception { Object message = new Object(); WriteRequest writeRequest = new DefaultWriteRequest(message, new DummyWriteFuture()); - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - /* - * Record expectations - */ - nextFilter.filterWrite(session, writeRequest); - nextFilter.messageSent(session, writeRequest); - - /* - * Replay. - */ - EasyMock.replay(nextFilter); - + NextFilter nextFilter = mock(NextFilter.class); filter.filterWrite(nextFilter, session, writeRequest); filter.messageSent(nextFilter, session, writeRequest); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verify(nextFilter).filterWrite(session, writeRequest); + verify(nextFilter).messageSent(session, writeRequest); + verifyNoMoreInteractions(nextFilter); } /** @@ -143,25 +123,14 @@ public void testWriteSingleBufferFile() throws Exception { WriteRequest writeRequest = new DefaultWriteRequest(message, new DummyWriteFuture()); - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - /* - * Record expectations - */ - nextFilter.filterWrite(EasyMock.eq(session), eqWriteRequest(new DefaultWriteRequest(IoBuffer.wrap(data)))); - nextFilter.messageSent(session, writeRequest); - - /* - * Replay. - */ - EasyMock.replay(nextFilter); + NextFilter nextFilter = mock(NextFilter.class); filter.filterWrite(nextFilter, session, writeRequest); filter.messageSent(nextFilter, session, writeRequest); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verify(nextFilter).filterWrite(eq(session), eqWriteRequest(new DefaultWriteRequest(IoBuffer.wrap(data)))); + verify(nextFilter).messageSent(eq(session), eq(writeRequest)); + verifyNoMoreInteractions(nextFilter); assertTrue(writeRequest.getFuture().isWritten()); } @@ -188,29 +157,18 @@ public void testWriteSeveralBuffersStream() throws Exception { WriteRequest chunk2Request = new DefaultWriteRequest(IoBuffer.wrap(chunk2)); WriteRequest chunk3Request = new DefaultWriteRequest(IoBuffer.wrap(chunk3)); - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - /* - * Record expectations - */ - nextFilter.filterWrite(EasyMock.eq(session), eqWriteRequest(chunk1Request)); - nextFilter.filterWrite(EasyMock.eq(session), eqWriteRequest(chunk2Request)); - nextFilter.filterWrite(EasyMock.eq(session), eqWriteRequest(chunk3Request)); - nextFilter.messageSent(EasyMock.eq(session), eqWriteRequest(writeRequest)); - - /* - * Replay. - */ - EasyMock.replay(nextFilter); + NextFilter nextFilter = mock(NextFilter.class); filter.filterWrite(nextFilter, session, writeRequest); filter.messageSent(nextFilter, session, chunk1Request); filter.messageSent(nextFilter, session, chunk2Request); filter.messageSent(nextFilter, session, chunk3Request); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verify(nextFilter).filterWrite(eq(session), eqWriteRequest(chunk1Request)); + verify(nextFilter).filterWrite(eq(session), eqWriteRequest(chunk2Request)); + verify(nextFilter).filterWrite(eq(session), eqWriteRequest(chunk3Request)); + verify(nextFilter).messageSent(eq(session), eqWriteRequest(writeRequest)); + verifyNoMoreInteractions(nextFilter); assertTrue(writeRequest.getFuture().isWritten()); } @@ -228,21 +186,14 @@ public void testWriteWhileWriteInProgress() throws Exception { session.setAttribute(filter.CURRENT_STREAM, message); session.setAttribute(filter.WRITE_REQUEST_QUEUE, queue); - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - /* - * Replay. (We recorded *nothing* because nothing should occur.) - */ - EasyMock.replay(nextFilter); + NextFilter nextFilter = mock(NextFilter.class); WriteRequest wr = new DefaultWriteRequest(new Object(), new DummyWriteFuture()); filter.filterWrite(nextFilter, session, wr); assertEquals(1, queue.size()); assertSame(wr, queue.poll()); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verifyNoMoreInteractions(nextFilter); session.removeAttribute(filter.CURRENT_STREAM); session.removeAttribute(filter.WRITE_REQUEST_QUEUE); @@ -268,27 +219,16 @@ public void testWritesWriteRequestQueueWhenFinished() throws Exception { session.setAttribute(filter.CURRENT_WRITE_REQUEST, new DefaultWriteRequest(message)); session.setAttribute(filter.WRITE_REQUEST_QUEUE, queue); - /* - * Record expectations - */ - NextFilter nextFilter = EasyMock.createMock(NextFilter.class); - nextFilter.filterWrite(session, wrs[0]); - nextFilter.filterWrite(session, wrs[1]); - nextFilter.filterWrite(session, wrs[2]); - nextFilter.messageSent(EasyMock.eq(session), eqWriteRequest(new DefaultWriteRequest(message))); - - /* - * Replay. - */ - EasyMock.replay(nextFilter); + NextFilter nextFilter = mock(NextFilter.class); filter.messageSent(nextFilter, session, new DefaultWriteRequest(new Object())); assertEquals(0, queue.size()); - /* - * Verify. - */ - EasyMock.verify(nextFilter); + verify(nextFilter).filterWrite(session, wrs[0]); + verify(nextFilter).filterWrite(session, wrs[1]); + verify(nextFilter).filterWrite(session, wrs[2]); + verify(nextFilter).messageSent(eq(session), eqWriteRequest(new DefaultWriteRequest(message))); + verifyNoMoreInteractions(nextFilter); } /** @@ -465,29 +405,26 @@ public void messageReceived(IoSession session, Object message) throws Exception } public static WriteRequest eqWriteRequest(WriteRequest expected) { - EasyMock.reportMatcher(new WriteRequestMatcher(expected)); - return null; + return argThat(new WriteRequestMatcher(expected)); } - private static class WriteRequestMatcher implements IArgumentMatcher { + private static class WriteRequestMatcher implements ArgumentMatcher { private final WriteRequest expected; public WriteRequestMatcher(WriteRequest expected) { this.expected = expected; } - public boolean matches(Object actual) { + @Override + public boolean matches(WriteRequest actual) { if (actual instanceof WriteRequest) { - WriteRequest w2 = (WriteRequest) actual; + WriteRequest w2 = actual; return expected.getMessage().equals(w2.getMessage()) && expected.getFuture().isWritten() == w2.getFuture().isWritten(); } - return false; - } - public void appendTo(StringBuffer buffer) { - buffer.append("Expected a WriteRequest with the message '").append(expected.getMessage()).append("'"); + return false; } } diff --git a/mina-core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java b/mina-core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java index 6bad7234ea..72165786a2 100644 --- a/mina-core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java +++ b/mina-core/src/test/java/org/apache/mina/filter/util/WrappingFilterTest.java @@ -20,6 +20,7 @@ package org.apache.mina.filter.util; import static org.junit.Assert.assertEquals; +import static org.mockito.Mockito.mock; import java.util.ArrayList; import java.util.List; @@ -32,7 +33,6 @@ import org.apache.mina.core.session.IoSession; import org.apache.mina.core.write.DefaultWriteRequest; import org.apache.mina.core.write.WriteRequest; -import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; @@ -53,8 +53,7 @@ public void setUp() throws Exception { * Create the mocks. */ session = new DummySession(); - nextFilter = EasyMock.createMock(IoFilter.NextFilter.class); - //nextFilter = (IoFilter.NextFilter) mockNextFilter.getClass(); + nextFilter = mock(IoFilter.NextFilter.class); } @Test @@ -80,8 +79,6 @@ public void testFilter() throws Exception { nextFilter.exceptionCaught(session, cause); nextFilter.sessionClosed(session); - /* replay */ - EasyMock.replay(nextFilter); wrappingFilter.sessionCreated(nextFilter, session); wrappingFilter.sessionOpened(nextFilter, session); wrappingFilter.sessionIdle(nextFilter, session, IdleStatus.READER_IDLE); @@ -94,9 +91,6 @@ public void testFilter() throws Exception { wrappingFilter.exceptionCaught(nextFilter, session, cause); wrappingFilter.sessionClosed(nextFilter, session); - /* verify */ - EasyMock.verify(nextFilter); - /* check event lists */ assertEquals(11, wrappingFilter.eventsBefore.size()); assertEquals(IoEventType.SESSION_CREATED, wrappingFilter.eventsBefore.get(0)); diff --git a/mina-core/src/test/java/org/apache/mina/handler/demux/DemuxingIoHandlerTest.java b/mina-core/src/test/java/org/apache/mina/handler/demux/DemuxingIoHandlerTest.java index 998dd876be..ff24453e46 100644 --- a/mina-core/src/test/java/org/apache/mina/handler/demux/DemuxingIoHandlerTest.java +++ b/mina-core/src/test/java/org/apache/mina/handler/demux/DemuxingIoHandlerTest.java @@ -20,10 +20,13 @@ package org.apache.mina.handler.demux; import org.apache.mina.core.session.IoSession; -import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.verifyNoMoreInteractions; + /** * Tests {@link org.apache.mina.handler.demux.DemuxingIoHandler}. * @@ -60,35 +63,15 @@ public void setUp() throws Exception { /* * Create mocks. */ - handler1 = EasyMock.createMock(MessageHandler.class); - handler2 = EasyMock.createMock(MessageHandler.class); - handler3 = EasyMock.createMock(MessageHandler.class); + handler1 = mock(MessageHandler.class); + handler2 = mock(MessageHandler.class); + handler3 = mock(MessageHandler.class); - session = EasyMock.createMock(IoSession.class); + session = mock(IoSession.class); } @Test public void testFindHandlerByClass() throws Exception { - /* - * Record expectations. - */ - handler1.handleMessage(session, msg[0]); - handler1.handleMessage(session, msg[1]); - handler1.handleMessage(session, msg[2]); - handler1.handleMessage(session, msg[3]); - handler2.handleMessage(session, msg[4]); - handler2.handleMessage(session, msg[5]); - handler1.handleMessage(session, msg[6]); - handler2.handleMessage(session, msg[7]); - handler3.handleMessage(session, msg[8]); - - /* - * Replay. - */ - EasyMock.replay(handler1); - EasyMock.replay(handler2); - EasyMock.replay(handler3); - DemuxingIoHandler ioHandler = new DemuxingIoHandler(); /* @@ -120,33 +103,24 @@ public void testFindHandlerByClass() throws Exception { /* * Verify. */ - EasyMock.verify(handler1); - EasyMock.verify(handler2); - EasyMock.verify(handler3); + + verify(handler1).handleMessage(session, msg[0]); + verify(handler1).handleMessage(session, msg[1]); + verify(handler1).handleMessage(session, msg[2]); + verify(handler1).handleMessage(session, msg[3]); + verify(handler2).handleMessage(session, msg[4]); + verify(handler2).handleMessage(session, msg[5]); + verify(handler1).handleMessage(session, msg[6]); + verify(handler2).handleMessage(session, msg[7]); + verify(handler3).handleMessage(session, msg[8]); + + verifyNoMoreInteractions(handler1); + verifyNoMoreInteractions(handler2); + verifyNoMoreInteractions(handler3); } @Test public void testFindHandlerByInterface() throws Exception { - /* - * Record expectations. - */ - handler1.handleMessage(session, msg[0]); - handler1.handleMessage(session, msg[1]); - handler1.handleMessage(session, msg[2]); - handler1.handleMessage(session, msg[3]); - handler2.handleMessage(session, msg[4]); - handler1.handleMessage(session, msg[5]); - handler3.handleMessage(session, msg[6]); - handler2.handleMessage(session, msg[7]); - handler3.handleMessage(session, msg[8]); - - /* - * Replay. - */ - EasyMock.replay(handler1); - EasyMock.replay(handler2); - EasyMock.replay(handler3); - DemuxingIoHandler ioHandler = new DemuxingIoHandler(); /* @@ -178,9 +152,20 @@ public void testFindHandlerByInterface() throws Exception { /* * Verify. */ - EasyMock.verify(handler1); - EasyMock.verify(handler2); - EasyMock.verify(handler3); + + verify(handler1).handleMessage(session, msg[0]); + verify(handler1).handleMessage(session, msg[1]); + verify(handler1).handleMessage(session, msg[2]); + verify(handler1).handleMessage(session, msg[3]); + verify(handler2).handleMessage(session, msg[4]); + verify(handler1).handleMessage(session, msg[5]); + verify(handler3).handleMessage(session, msg[6]); + verify(handler2).handleMessage(session, msg[7]); + verify(handler3).handleMessage(session, msg[8]); + + verifyNoMoreInteractions(handler1); + verifyNoMoreInteractions(handler2); + verifyNoMoreInteractions(handler3); } /* diff --git a/mina-core/src/test/java/org/apache/mina/util/byteaccess/ByteAccessTest.java b/mina-core/src/test/java/org/apache/mina/util/byteaccess/ByteAccessTest.java index 3d9dcbdce2..92d8c9df27 100644 --- a/mina-core/src/test/java/org/apache/mina/util/byteaccess/ByteAccessTest.java +++ b/mina-core/src/test/java/org/apache/mina/util/byteaccess/ByteAccessTest.java @@ -19,7 +19,6 @@ */ package org.apache.mina.util.byteaccess; -//import static org.easymock.EasyMock.createStrictControl; import static org.junit.Assert.assertEquals; import java.nio.ByteOrder; @@ -32,13 +31,9 @@ import org.apache.mina.util.byteaccess.CompositeByteArrayRelativeWriter.ChunkedExpander; import org.apache.mina.util.byteaccess.CompositeByteArrayRelativeWriter.Flusher; import org.junit.Ignore; -//import org.easymock.IMocksControl; import org.junit.Test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.never; -import static org.mockito.Mockito.reset; -import static org.mockito.Mockito.when; /** * Tests classes in the byteaccess package. diff --git a/mina-example/pom.xml b/mina-example/pom.xml index 803af10b74..97bd8b21b9 100644 --- a/mina-example/pom.xml +++ b/mina-example/pom.xml @@ -70,11 +70,11 @@ - jmock - jmock + org.mockito + mockito-core test - + org.slf4j jcl-over-slf4j diff --git a/mina-example/src/test/java/org/apache/mina/example/haiku/HaikuValidatorIoHandlerTest.java b/mina-example/src/test/java/org/apache/mina/example/haiku/HaikuValidatorIoHandlerTest.java index 7f32af55c2..b4cf32764b 100644 --- a/mina-example/src/test/java/org/apache/mina/example/haiku/HaikuValidatorIoHandlerTest.java +++ b/mina-example/src/test/java/org/apache/mina/example/haiku/HaikuValidatorIoHandlerTest.java @@ -20,39 +20,41 @@ import org.apache.mina.core.service.IoHandler; import org.apache.mina.core.session.IoSession; -import org.jmock.Mock; -import org.jmock.MockObjectTestCase; +import org.junit.Before; +import org.junit.Test; + +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; /** * @author Apache MINA Project */ -public class HaikuValidatorIoHandlerTest extends MockObjectTestCase { +public class HaikuValidatorIoHandlerTest { private IoHandler handler; - @Override - protected void setUp() throws Exception { - super.setUp(); - + @Before + public void setUp() { handler = new HaikuValidatorIoHandler(); } + @Test public void testValidHaiku() throws Exception { - Mock session = mock(IoSession.class); - session.expects(once()).method("write").with(eq("HAIKU!")); - IoSession sessionProxy = (IoSession) session.proxy(); + IoSession session = mock(IoSession.class); - handler.messageReceived(sessionProxy, new Haiku( + handler.messageReceived(session, new Haiku( "Oh, I drank too much.", "Why, oh why did I sign up", "For an eight thirty?")); + + verify(session).write("HAIKU!"); } + @Test public void testInvalidHaiku() throws Exception { - Mock session = mock(IoSession.class); - session.expects(once()).method("write").with( - eq("NOT A HAIKU: phrase 1, 'foo' had 1 syllables, not 5")); - IoSession sessionProxy = (IoSession) session.proxy(); + IoSession session = mock(IoSession.class); - handler.messageReceived(sessionProxy, + handler.messageReceived(session, new Haiku("foo", "a haiku", "poo")); + + verify(session).write("NOT A HAIKU: phrase 1, 'foo' had 1 syllables, not 5"); } } diff --git a/mina-example/src/test/java/org/apache/mina/example/haiku/ToHaikuIoFilterTest.java b/mina-example/src/test/java/org/apache/mina/example/haiku/ToHaikuIoFilterTest.java index a8f3350e5a..bcdd47c098 100644 --- a/mina-example/src/test/java/org/apache/mina/example/haiku/ToHaikuIoFilterTest.java +++ b/mina-example/src/test/java/org/apache/mina/example/haiku/ToHaikuIoFilterTest.java @@ -18,61 +18,44 @@ */ package org.apache.mina.example.haiku; -import java.util.Collections; -import java.util.List; - import org.apache.mina.core.filterchain.IoFilter; import org.apache.mina.core.session.IoSession; -import org.jmock.Mock; -import org.jmock.MockObjectTestCase; +import org.junit.Before; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.List; + +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.verify; /** * @author Apache MINA Project */ -public class ToHaikuIoFilterTest extends MockObjectTestCase { +public class ToHaikuIoFilterTest { private IoFilter filter; - @Override - protected void setUp() throws Exception { - super.setUp(); - + @Before + public void setUp() { filter = new ToHaikuIoFilter(); } + @Test public void testThreeStringsMakesAHaiku() throws Exception { - Mock list = mock(List.class); - list.expects(once()).method("add").with(eq("two")).will( - returnValue(true)); - list.expects(once()).method("add").with(eq("three")).will( - returnValue(true)); - list.expects(once()).method("toArray").with(isA(String[].class)).will( - returnValue(new String[] { "one", "two", "three" })); - list.expects(exactly(2)).method("size").will( - onConsecutiveCalls(returnValue(2), returnValue(3))); + IoSession session = mock(IoSession.class); - Mock session = mock(IoSession.class); - session.expects(exactly(3)).method("getAttribute").with(eq("phrases")) - .will( - onConsecutiveCalls(returnValue(null), returnValue(list - .proxy()), returnValue(list.proxy()), - returnValue(list.proxy()))); - session.expects(exactly(1)).method("setAttribute").with(eq("phrases"), - eq(Collections.emptyList())); - session.expects(exactly(1)).method("removeAttribute").with( - eq("phrases")); + List phrases = new ArrayList<>(); + doReturn(phrases).when(session).getAttribute("phrases"); - IoSession sessionProxy = (IoSession) session.proxy(); + IoFilter.NextFilter nextFilter = mock(IoFilter.NextFilter.class); - Mock nextFilter = mock(IoFilter.NextFilter.class); - nextFilter.expects(once()).method("messageReceived").with( - eq(sessionProxy), eq(new Haiku("one", "two", "three"))); + filter.messageReceived(nextFilter, session, "one"); + filter.messageReceived(nextFilter, session, "two"); + filter.messageReceived(nextFilter, session, "three"); - IoFilter.NextFilter nextFilterProxy = (IoFilter.NextFilter) nextFilter - .proxy(); - - filter.messageReceived(nextFilterProxy, sessionProxy, "one"); - filter.messageReceived(nextFilterProxy, sessionProxy, "two"); - filter.messageReceived(nextFilterProxy, sessionProxy, "three"); + verify(nextFilter).messageReceived(eq(session), eq(new Haiku("one", "two", "three"))); + verify(session).removeAttribute(eq("phrases")); } - } diff --git a/mina-statemachine/pom.xml b/mina-statemachine/pom.xml index ccf5c53e2c..25a7930e90 100644 --- a/mina-statemachine/pom.xml +++ b/mina-statemachine/pom.xml @@ -41,8 +41,8 @@ - org.easymock - easymock + org.mockito + mockito-core test diff --git a/mina-statemachine/src/test/java/org/apache/mina/statemachine/StateTest.java b/mina-statemachine/src/test/java/org/apache/mina/statemachine/StateTest.java index d29bc99568..626f47f2e0 100644 --- a/mina-statemachine/src/test/java/org/apache/mina/statemachine/StateTest.java +++ b/mina-statemachine/src/test/java/org/apache/mina/statemachine/StateTest.java @@ -22,12 +22,13 @@ import org.apache.mina.statemachine.transition.Transition; import org.junit.Before; import org.junit.Test; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import static org.easymock.EasyMock.mock; +import static org.mockito.Mockito.mock; /** * Tests {@link State}. @@ -44,15 +45,15 @@ public class StateTest { private Transition transition3; @Before - public void setUp() throws Exception { + public void setUp() { state = new State("test"); - transition1 = (Transition) mock(Transition.class); + transition1 = mock(Transition.class); transition2 = transition1; //(Transition) mock(Transition.class); transition3 = transition1; //(Transition) mock(Transition.class); } @Test - public void testAddFirstTransition() throws Exception { + public void testAddFirstTransition() { assertTrue(state.getTransitions().isEmpty()); state.addTransition(transition1); assertFalse(state.getTransitions().isEmpty()); @@ -61,7 +62,7 @@ public void testAddFirstTransition() throws Exception { } @Test - public void testUnweightedTransitions() throws Exception { + public void testUnweightedTransitions() { assertTrue(state.getTransitions().isEmpty()); state.addTransition(transition1); state.addTransition(transition2); @@ -73,7 +74,7 @@ public void testUnweightedTransitions() throws Exception { } @Test - public void testWeightedTransitions() throws Exception { + public void testWeightedTransitions() { assertTrue(state.getTransitions().isEmpty()); state.addTransition(transition1, 10); state.addTransition(transition2, 5); @@ -85,16 +86,16 @@ public void testWeightedTransitions() throws Exception { } @Test - public void testAddTransitionReturnsSelf() throws Exception { + public void testAddTransitionReturnsSelf() { assertSame(state, state.addTransition(transition1)); } @Test - public void testAddNullTransitionThrowsException() throws Exception { + public void testAddNullTransitionThrowsException() { try { state.addTransition(null); fail("null transition added. IllegalArgumentException expected."); - } catch (IllegalArgumentException npe) { + } catch (IllegalArgumentException ignore) { } } } diff --git a/mina-statemachine/src/test/java/org/apache/mina/statemachine/transition/MethodTransitionTest.java b/mina-statemachine/src/test/java/org/apache/mina/statemachine/transition/MethodTransitionTest.java index cccfbe5243..084144186d 100644 --- a/mina-statemachine/src/test/java/org/apache/mina/statemachine/transition/MethodTransitionTest.java +++ b/mina-statemachine/src/test/java/org/apache/mina/statemachine/transition/MethodTransitionTest.java @@ -27,9 +27,9 @@ import org.junit.Before; import org.junit.Test; -import static org.easymock.EasyMock.mock; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.mockito.Mockito.mock; /** * Tests {@link MethodTransition}. @@ -59,14 +59,14 @@ public class MethodTransitionTest { public void setUp() throws Exception { currentState = new State("current"); nextState = new State("next"); - target = (Target) mock(Target.class); + target = mock(Target.class); subsetAllArgsMethod1 = Target.class.getMethod("subsetAllArgs", new Class[] { TestStateContext.class, B.class, A.class, Integer.TYPE }); subsetAllArgsMethod2 = Target.class.getMethod("subsetAllArgs", new Class[] { Event.class, B.class, B.class, Boolean.TYPE }); args = new Object[] { new A(), new B(), new C(), new Integer(627438), Boolean.TRUE }; - context = (TestStateContext) mock(TestStateContext.class); + context = mock(TestStateContext.class); noArgsEvent = new Event("event", context, new Object[0]); argsEvent = new Event("event", context, args); } diff --git a/pom.xml b/pom.xml index b9b4e81f3e..c5fdbebb33 100644 --- a/pom.xml +++ b/pom.xml @@ -146,9 +146,7 @@ 1.84 - 5.6.0 3.8.0.GA - 1.2.0 4.13.2 1.1.3 1.2.17 @@ -293,14 +291,6 @@ test - - jmock - jmock - ${version.jmock} - true - test - - org.mockito mockito-core @@ -354,13 +344,6 @@ test - - org.easymock - easymock - ${version.easymock} - test - - org.bouncycastle bcprov-jdk18on