You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2018/08/03 08:52:18 UTC

[05/20] james-project git commit: JAMES-2506 Remove jmock from protocols-imap

JAMES-2506 Remove jmock from protocols-imap


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/6373f39a
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/6373f39a
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/6373f39a

Branch: refs/heads/master
Commit: 6373f39a82f1ed5c90e9fdc7772b872a8dffd1eb
Parents: 37829b3
Author: duc <dt...@linagora.com>
Authored: Mon Jul 30 23:53:07 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Aug 3 15:51:21 2018 +0700

----------------------------------------------------------------------
 protocols/imap/pom.xml                          |  16 --
 .../decode/ImapRequestStreamLineReader.java     |   2 +-
 .../james/imap/api/ImapConfigurationTest.java   |  28 +--
 .../james/imap/api/message/UidRangeTest.java    |   2 +-
 .../message/response/StatusResponseTest.java    |   4 +-
 .../imap/decode/FetchPartPathDecoderTest.java   |   6 +-
 .../decode/parser/CreateCommandParserTest.java  |   4 +-
 .../FetchCommandParserPartialFetchTest.java     |  30 +---
 .../SearchCommandParserAndParenthesesTest.java  |   9 -
 .../parser/SearchCommandParserCharsetTest.java  |  41 ++---
 .../parser/SearchCommandParserNotTest.java      |   9 -
 .../parser/SearchCommandParserOrTest.java       |  10 +-
 .../SearchCommandParserQuotedCharsetTest.java   |  36 ++--
 ...chCommandParserSearchKeySequenceSetTest.java |  10 --
 .../SearchCommandParserSearchKeyTest.java       |   9 -
 .../SearchCommandParserTopLevelAndTest.java     |   9 -
 .../decode/parser/StoreCommandParserTest.java   |  14 +-
 .../encode/AnnotationResponseEncoderTest.java   |   4 +-
 .../encode/EncoderUtilsDateTimeLocaleTest.java  |  20 +--
 .../FetchResponseEncoderEnvelopeTest.java       |  50 +++---
 .../FetchResponseEncoderNoExtensionsTest.java   |  47 ++---
 .../imap/encode/FetchResponseEncoderTest.java   |  13 +-
 .../imap/encode/LSubResponseEncoderTest.java    |   9 +-
 .../imap/encode/ListResponseEncoderTest.java    |  11 +-
 .../MailboxStatusResponseEncoderTest.java       |  14 +-
 .../encode/NamespaceResponseEncoderTest.java    | 155 +++++++---------
 .../imap/encode/SearchResponseEncoderTest.java  |   9 +-
 .../imap/encode/XListResponseEncoderTest.java   |  11 +-
 ...ImapRequestHandlerAdandonConnectionTest.java |  34 +---
 .../james/imap/processor/CopyProcessorTest.java |   2 +-
 .../processor/GetQuotaRootProcessorTest.java    | 141 ++++++---------
 .../james/imap/processor/LSubProcessorTest.java | 128 +++++--------
 .../james/imap/processor/MoveProcessorTest.java |   2 +-
 .../imap/processor/NamespaceProcessorTest.java  | 131 ++++++--------
 .../imap/processor/SearchProcessorTest.java     | 178 ++++++++-----------
 .../imap/processor/SetQuotaProcessorTest.java   |   2 +-
 .../base/MailboxEventAnalyserTest.java          |  18 +-
 .../processor/base/SelectedMailboxImplTest.java |   3 +-
 .../fetch/MailboxMessageResultUtilsTest.java    |   5 +-
 .../fetch/PartialFetchBodyElementTest.java      |  89 +++-------
 .../protocols/imap/utils/DecoderUtilsTest.java  |  12 +-
 41 files changed, 489 insertions(+), 838 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/pom.xml
----------------------------------------------------------------------
diff --git a/protocols/imap/pom.xml b/protocols/imap/pom.xml
index 484cfe4..d328e6d 100644
--- a/protocols/imap/pom.xml
+++ b/protocols/imap/pom.xml
@@ -110,22 +110,6 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>org.jmock</groupId>
-            <artifactId>jmock</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.jmock</groupId>
-            <artifactId>jmock-junit4</artifactId>
-            <scope>test</scope>
-            <exclusions>
-                <exclusion>
-                    <groupId>junit</groupId>
-                    <artifactId>junit-dep</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
             <groupId>org.mockito</groupId>
             <artifactId>mockito-core</artifactId>
             <scope>test</scope>

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestStreamLineReader.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestStreamLineReader.java b/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestStreamLineReader.java
index 4fedc02..c00aae1 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestStreamLineReader.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestStreamLineReader.java
@@ -73,7 +73,7 @@ public class ImapRequestStreamLineReader extends ImapRequestLineReader {
     }
 
     @Override
-    public InputStream read(int size, boolean extraCRLF) throws DecodingException {
+    public InputStream read(int size, boolean extraCRLF) {
 
         // Unset the next char.
         nextSeen = false;

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/api/ImapConfigurationTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/api/ImapConfigurationTest.java b/protocols/imap/src/test/java/org/apache/james/imap/api/ImapConfigurationTest.java
index e169e84..b8697d7 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/api/ImapConfigurationTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/api/ImapConfigurationTest.java
@@ -41,14 +41,14 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void idleKeepAliveShouldBeDefaultValueWhenNoSetting() throws Exception {
+    public void idleKeepAliveShouldBeDefaultValueWhenNoSetting() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder().build();
 
         assertThat(imapConfiguration.getIdleTimeInterval()).isEqualTo(ImapConfiguration.DEFAULT_HEARTBEAT_INTERVAL_IN_SECONDS);
     }
 
     @Test
-    public void idleKeepAliveShouldReturnSetValue() throws Exception {
+    public void idleKeepAliveShouldReturnSetValue() {
         long idleValue  = 1;
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .idleTimeInterval(idleValue)
@@ -58,7 +58,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void idleKeepAliveShouldThrowWhenRezo() throws Exception {
+    public void idleKeepAliveShouldThrowWhenRezo() {
         expectedException.expect(IllegalArgumentException.class);
 
         ImapConfiguration.builder()
@@ -67,7 +67,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void idleKeepAliveShouldThrowWhenNegative() throws Exception {
+    public void idleKeepAliveShouldThrowWhenNegative() {
         expectedException.expect(IllegalArgumentException.class);
 
         ImapConfiguration.builder()
@@ -76,14 +76,14 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void millisecondsShouldBeDefaultValueWhenNoSetting() throws Exception {
+    public void millisecondsShouldBeDefaultValueWhenNoSetting() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder().build();
 
         assertThat(imapConfiguration.getIdleTimeIntervalUnit()).isEqualTo(ImapConfiguration.DEFAULT_HEARTBEAT_INTERVAL_UNIT);
     }
 
     @Test
-    public void millisecondsShouldReturnSetValue() throws Exception {
+    public void millisecondsShouldReturnSetValue() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .idleTimeIntervalUnit(TimeUnit.MINUTES)
                 .build();
@@ -92,7 +92,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapsShouldBeEmptyAsDefault() throws Exception {
+    public void disabledCapsShouldBeEmptyAsDefault() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .build();
 
@@ -100,7 +100,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapsShouldReturnSetValue() throws Exception {
+    public void disabledCapsShouldReturnSetValue() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .disabledCaps(ImmutableSet.of("AnyValue"))
                 .build();
@@ -109,7 +109,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapsShouldReturnMultipleSetValues() throws Exception {
+    public void disabledCapsShouldReturnMultipleSetValues() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .disabledCaps(ImmutableSet.of("AnyValue", "OtherValue"))
                 .build();
@@ -118,7 +118,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapsShouldReturnMultipleSetValuesWithNormalizeValue() throws Exception {
+    public void disabledCapsShouldReturnMultipleSetValuesWithNormalizeValue() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .disabledCaps(ImmutableSet.of("   AnyValue   ", "  OtherValue   "))
                 .build();
@@ -127,7 +127,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapsFromStringArrayShouldReturnMultipleSetValuesWithNormalizeValue() throws Exception {
+    public void disabledCapsFromStringArrayShouldReturnMultipleSetValuesWithNormalizeValue() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .disabledCaps("   AnyValue   ", "  OtherValue   ")
                 .build();
@@ -136,7 +136,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void disabledCapShouldReturnMultipleStringWithNormalizeValue() throws Exception {
+    public void disabledCapShouldReturnMultipleStringWithNormalizeValue() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .disabledCap("   AnyValue   ")
                 .build();
@@ -145,7 +145,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void idleShouldEnableByDefault() throws Exception {
+    public void idleShouldEnableByDefault() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .build();
 
@@ -153,7 +153,7 @@ public class ImapConfigurationTest {
     }
 
     @Test
-    public void idleShouldBeDisable() throws Exception {
+    public void idleShouldBeDisable() {
         ImapConfiguration imapConfiguration = ImapConfiguration.builder()
                 .enableIdle(false)
                 .build();

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/api/message/UidRangeTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/api/message/UidRangeTest.java b/protocols/imap/src/test/java/org/apache/james/imap/api/message/UidRangeTest.java
index 06d400d..96aae02 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/api/message/UidRangeTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/api/message/UidRangeTest.java
@@ -117,7 +117,7 @@ public class UidRangeTest {
     
     @Test
     public void mergeZeroRangeShouldOutputZeroRange() {
-        assertThat(UidRange.mergeRanges(ImmutableList.<UidRange>of())).isEmpty();
+        assertThat(UidRange.mergeRanges(ImmutableList.of())).isEmpty();
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/api/message/response/StatusResponseTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/api/message/response/StatusResponseTest.java b/protocols/imap/src/test/java/org/apache/james/imap/api/message/response/StatusResponseTest.java
index 81ee9f9..99d709a 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/api/message/response/StatusResponseTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/api/message/response/StatusResponseTest.java
@@ -28,7 +28,7 @@ import org.junit.Test;
 public class StatusResponseTest  {
 
     @Test
-    public void testResponseCodeExtension() throws Exception {
+    public void testResponseCodeExtension() {
         assertEquals("Preserve names beginning with X", "XEXTENSION",
                 StatusResponse.ResponseCode.createExtension("XEXTENSION")
                         .getCode());
@@ -38,7 +38,7 @@ public class StatusResponseTest  {
     }
 
     @Test
-    public void responseCodeShouldBuildTheLongestEntryForMetadata() throws Exception {
+    public void responseCodeShouldBuildTheLongestEntryForMetadata() {
         assertThat(StatusResponse.ResponseCode.longestMetadataEntry(1024).getCode()).isEqualTo("METADATA LONGENTRIES");
         assertThat(StatusResponse.ResponseCode.longestMetadataEntry(1024).getNumber()).isEqualTo(1024);
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/FetchPartPathDecoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/FetchPartPathDecoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/FetchPartPathDecoderTest.java
index 98d4072..8ffdce1 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/FetchPartPathDecoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/FetchPartPathDecoderTest.java
@@ -128,8 +128,7 @@ public class FetchPartPathDecoderTest {
     }
 
     @Test
-    public void testShouldThrowProtocolExceptionWhenSpecifierBogus()
-            throws Exception {
+    public void testShouldThrowProtocolExceptionWhenSpecifierBogus() {
         try {
             decoder.decode("1.34.BOGUS");
             fail("Expected protocol exception to be thrown");
@@ -139,8 +138,7 @@ public class FetchPartPathDecoderTest {
     }
 
     @Test
-    public void testShouldThrowProtocolExceptionWhenPathBogus()
-            throws Exception {
+    public void testShouldThrowProtocolExceptionWhenPathBogus() {
         try {
             decoder.decode("1.34.BOGUS.44.34234.324");
             fail("Expected protocol exception to be thrown");

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
index ae1c813..bbba010 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/CreateCommandParserTest.java
@@ -60,7 +60,7 @@ public class CreateCommandParserTest {
     }
 
     @Test
-    public void decodeShouldThrowWhenCommandHasEmptyMailbox() throws DecodingException {
+    public void decodeShouldThrowWhenCommandHasEmptyMailbox() {
         InputStream inputStream = new ByteArrayInputStream(" \n".getBytes(StandardCharsets.US_ASCII));
         ImapRequestStreamLineReader lineReader = new ImapRequestStreamLineReader(inputStream, outputStream);
 
@@ -69,7 +69,7 @@ public class CreateCommandParserTest {
     }
 
     @Test
-    public void decodeShouldThrowWhenCommandHasOnlySeparatorMailbox() throws DecodingException {
+    public void decodeShouldThrowWhenCommandHasOnlySeparatorMailbox() {
         InputStream inputStream = new ByteArrayInputStream("..\n".getBytes(StandardCharsets.US_ASCII));
         ImapRequestStreamLineReader lineReader = new ImapRequestStreamLineReader(inputStream, outputStream);
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/FetchCommandParserPartialFetchTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/FetchCommandParserPartialFetchTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/FetchCommandParserPartialFetchTest.java
index 3993c54..ce73caf 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/FetchCommandParserPartialFetchTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/FetchCommandParserPartialFetchTest.java
@@ -19,11 +19,13 @@
 
 package org.apache.james.imap.decode.parser;
 
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.mockito.Mockito.mock;
+
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.BodyFetchElement;
 import org.apache.james.imap.api.message.FetchData;
 import org.apache.james.imap.api.message.IdRange;
@@ -31,32 +33,22 @@ import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.protocols.imap.DecodingException;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class FetchCommandParserPartialFetchTest  {
 
-    Mockery context = new JUnit4Mockery();
-    
     FetchCommandParser parser;
-
     ImapCommand command;
-
-    ImapMessage message;
     ImapSession session;
 
     @Before
     public void setUp() throws Exception {
         parser = new FetchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = context.mock(ImapMessage.class);
-        session = context.mock(ImapSession.class);
-        
+        session = mock(ImapSession.class);
     }
 
-
     @Test
     public void testShouldParseZeroAndLength() throws Exception {
         IdRange[] ranges = { new IdRange(1) };
@@ -77,16 +69,12 @@ public class FetchCommandParserPartialFetchTest  {
 
     @Test
     public void testShouldNotParseZeroLength() throws Exception {
-        try {
-            ImapRequestLineReader reader = new ImapRequestStreamLineReader(
-                    new ByteArrayInputStream("1 (BODY[]<20.0>)\r\n"
-                            .getBytes("US-ASCII")), new ByteArrayOutputStream());
-            parser.decode(command, reader, "A01", false, session);                
-            throw new Exception("Number of octets must be non-zero");
+        ImapRequestLineReader reader = new ImapRequestStreamLineReader(
+                new ByteArrayInputStream("1 (BODY[]<20.0>)\r\n"
+                        .getBytes("US-ASCII")), new ByteArrayOutputStream());
 
-        } catch (DecodingException e) {
-            // expected
-        }
+        assertThatThrownBy(() -> parser.decode(command, reader, "A01", false, session))
+            .isInstanceOf(DecodingException.class);
     }
 
     private void check(String input, IdRange[] idSet,

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserAndParenthesesTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserAndParenthesesTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserAndParenthesesTest.java
index 9d08096..2842228 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserAndParenthesesTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserAndParenthesesTest.java
@@ -29,7 +29,6 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.DayMonthYear;
@@ -38,14 +37,11 @@ import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.protocols.imap.DecodingException;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class SearchCommandParserAndParenthesesTest {
 
-    private Mockery context = new JUnit4Mockery();
     Input[] variety = { sequence(), uid(), fromHeader(), since(),
             stringQuoted(), stringUnquoted(), draft(), mailingListHeader(),
             on(), unanswered() };
@@ -151,17 +147,12 @@ public class SearchCommandParserAndParenthesesTest {
     }
 
     SearchCommandParser parser;
-
-
     ImapCommand command;
 
-    ImapMessage message;
-
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = context.mock(ImapMessage.class);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java
index d30279b..250721a 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java
@@ -20,6 +20,12 @@
 package org.apache.james.imap.decode.parser;
 
 import static org.junit.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.same;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -35,9 +41,6 @@ import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -64,14 +67,8 @@ public class SearchCommandParserCharsetTest {
             ASCII);
 
     SearchCommandParser parser;
-
     StatusResponseFactory mockStatusResponseFactory;
-
-    private Mockery context = new JUnit4Mockery();
-
-    
     ImapCommand command;
-
     ImapMessage message;
 
     private ImapSession session;
@@ -80,29 +77,27 @@ public class SearchCommandParserCharsetTest {
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = context.mock(ImapMessage.class);
-        session = context.mock(ImapSession.class);
+        message = mock(ImapMessage.class);
+        session = mock(ImapSession.class);
 
-        mockStatusResponseFactory = context.mock(StatusResponseFactory.class);
+        mockStatusResponseFactory = mock(StatusResponseFactory.class);
         parser.setStatusResponseFactory(mockStatusResponseFactory);
     }
 
-
     @Test
-    public void testBadCharset() throws Exception {
-        context.checking(new Expectations() {{
-                oneOf(mockStatusResponseFactory).taggedNo(
-                        with(equal(TAG)), 
-                        with(same(command)), 
-                        with(equal(HumanReadableText.BAD_CHARSET)),
-                        with(equal(StatusResponse.ResponseCode.badCharset(CharsetUtil.getAvailableCharsetNames()))));
-                }
-            }
-        );
+    public void testBadCharsetMockito() throws Exception {
         ImapRequestLineReader reader = new ImapRequestStreamLineReader(
                 new ByteArrayInputStream("CHARSET BOGUS ".getBytes("US-ASCII")),
                 new ByteArrayOutputStream());
         parser.decode(command, reader, TAG, false, session);
+
+        verify(mockStatusResponseFactory, times(1)).taggedNo(
+            eq(TAG),
+            same(command),
+            eq(HumanReadableText.BAD_CHARSET),
+            eq(StatusResponse.ResponseCode.badCharset(CharsetUtil.getAvailableCharsetNames())));
+
+        verifyNoMoreInteractions(mockStatusResponseFactory);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserNotTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserNotTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserNotTest.java
index bd6e859..bf9a2e3 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserNotTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserNotTest.java
@@ -27,7 +27,6 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.DayMonthYear;
@@ -35,26 +34,18 @@ import org.apache.james.imap.api.message.request.SearchKey;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class SearchCommandParserNotTest {
 
     SearchCommandParser parser;
-
     ImapCommand command;
-
-    ImapMessage message;
-
-    private Mockery context = new JUnit4Mockery();
     
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = context.mock(ImapMessage.class);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserOrTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserOrTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserOrTest.java
index f87c5ad..ddd93ea 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserOrTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserOrTest.java
@@ -26,7 +26,6 @@ import java.io.ByteArrayOutputStream;
 import java.util.Arrays;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.DayMonthYear;
@@ -34,25 +33,18 @@ import org.apache.james.imap.api.message.request.SearchKey;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class SearchCommandParserOrTest {
-    SearchCommandParser parser;
 
+    SearchCommandParser parser;
     ImapCommand command;
 
-    ImapMessage message;
-
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = context.mock(ImapMessage.class);
     }
     
     public Input sequence() {

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java
index 97a4ec2..c3a8da3 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java
@@ -21,6 +21,12 @@ package org.apache.james.imap.decode.parser;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.same;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -37,9 +43,6 @@ import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.protocols.imap.DecodingException;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -129,24 +132,19 @@ public class SearchCommandParserQuotedCharsetTest {
     }
 
     SearchCommandParser parser;
-
     StatusResponseFactory mockStatusResponseFactory;
-
     ImapCommand command;
-
     ImapMessage message;
 
-    private Mockery mockery = new JUnit4Mockery();
-
     private ImapSession session;
     
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = mockery.mock(ImapMessage.class);
-        mockStatusResponseFactory = mockery.mock(StatusResponseFactory.class);
-        session = mockery.mock(ImapSession.class);
+        message = mock(ImapMessage.class);
+        mockStatusResponseFactory = mock(StatusResponseFactory.class);
+        session = mock(ImapSession.class);
 
         parser.setStatusResponseFactory(mockStatusResponseFactory);
     }
@@ -177,19 +175,17 @@ public class SearchCommandParserQuotedCharsetTest {
 
     @Test
     public void testBadCharset() throws Exception {      
-        mockery.checking(new Expectations() {{
-                oneOf(mockStatusResponseFactory).taggedNo(
-                        with(equal(TAG)), 
-                        with(same(command)), 
-                        with(equal(HumanReadableText.BAD_CHARSET)),
-                        with(equal(StatusResponse.ResponseCode.badCharset(CharsetUtil.getAvailableCharsetNames()))));
-                }
-            }
-        );
         ImapRequestLineReader reader = new ImapRequestStreamLineReader(
                 new ByteArrayInputStream("CHARSET BOGUS ".getBytes("US-ASCII")),
                 new ByteArrayOutputStream());
         parser.decode(command, reader, TAG, false, session);
+
+        verify(mockStatusResponseFactory, times(1)).taggedNo(
+            eq(TAG),
+            same(command),
+            eq(HumanReadableText.BAD_CHARSET),
+            eq(StatusResponse.ResponseCode.badCharset(CharsetUtil.getAvailableCharsetNames())));
+        verifyNoMoreInteractions(mockStatusResponseFactory);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeySequenceSetTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeySequenceSetTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeySequenceSetTest.java
index 095b718..e41293e 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeySequenceSetTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeySequenceSetTest.java
@@ -26,34 +26,24 @@ import java.io.ByteArrayOutputStream;
 import java.util.Arrays;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.SearchKey;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class SearchCommandParserSearchKeySequenceSetTest {
 
     SearchCommandParser parser;
-
-
     ImapCommand command;
 
-    ImapMessage message;
-
-    private Mockery mockery = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = mockery.mock(ImapMessage.class);
     }
     
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeyTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeyTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeyTest.java
index f7513f2..aed0a81 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeyTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserSearchKeyTest.java
@@ -35,8 +35,6 @@ import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.protocols.imap.DecodingException;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -45,22 +43,15 @@ public class SearchCommandParserSearchKeyTest {
     private static final DayMonthYear DATE = new DayMonthYear(1, 1, 2000);
 
     SearchCommandParser parser;
-    
     ImapCommand command;
-
     ImapMessage message;
 
-    private Mockery mockery = new JUnit4Mockery();
-
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = mockery.mock(ImapMessage.class);
     }
 
-    
-
     @Test
     public void testShouldParseAll() throws Exception {
         SearchKey key = SearchKey.buildAll();

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserTopLevelAndTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserTopLevelAndTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserTopLevelAndTest.java
index febe499..a31643b 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserTopLevelAndTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserTopLevelAndTest.java
@@ -29,7 +29,6 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.DayMonthYear;
@@ -38,8 +37,6 @@ import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
 import org.apache.james.mailbox.MessageUid;
 import org.apache.james.protocols.imap.DecodingException;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -136,18 +133,12 @@ public class SearchCommandParserTopLevelAndTest {
     }
 
     SearchCommandParser parser;
-
     ImapCommand command;
 
-    ImapMessage message;
-
-    private Mockery mockery = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
         parser = new SearchCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = mockery.mock(ImapMessage.class);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/StoreCommandParserTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/StoreCommandParserTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/StoreCommandParserTest.java
index 470ff88..865a2bc 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/StoreCommandParserTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/StoreCommandParserTest.java
@@ -19,6 +19,8 @@
 
 package org.apache.james.imap.decode.parser;
 
+import static org.mockito.Mockito.mock;
+
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 
@@ -30,32 +32,22 @@ import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapRequestLineReader;
 import org.apache.james.imap.decode.ImapRequestStreamLineReader;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
 public class StoreCommandParserTest {
 
     StoreCommandParser parser;
-
-
     ImapCommand command;
-
     ImapMessage message;
 
-    private Mockery mockery = new JUnit4Mockery();
-
-
     private ImapSession session;
 
     @Before
     public void setUp() throws Exception {
         parser = new StoreCommandParser();
         command = ImapCommand.anyStateCommand("Command");
-        message = mockery.mock(ImapMessage.class);
-        session = mockery.mock(ImapSession.class);
-
+        session = mock(ImapSession.class);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/AnnotationResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/AnnotationResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/AnnotationResponseEncoderTest.java
index 66ea607..3f7b4c8 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/AnnotationResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/AnnotationResponseEncoderTest.java
@@ -58,7 +58,7 @@ public class AnnotationResponseEncoderTest {
 
     @Test
     public void encodingShouldWellFormEmptyRequest() throws Exception {
-        AnnotationResponse response = new AnnotationResponse(null, ImmutableList.<MailboxAnnotation>of());
+        AnnotationResponse response = new AnnotationResponse(null, ImmutableList.of());
 
         encoder.encode(response, composer, imapSession);
 
@@ -67,7 +67,7 @@ public class AnnotationResponseEncoderTest {
 
     @Test
     public void encodingShouldWellFormWhenEmptyReturnedAnnotation() throws Exception {
-        AnnotationResponse response = new AnnotationResponse("INBOX", ImmutableList.<MailboxAnnotation>of());
+        AnnotationResponse response = new AnnotationResponse("INBOX", ImmutableList.of());
 
         encoder.encode(response, composer, imapSession);
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/EncoderUtilsDateTimeLocaleTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/EncoderUtilsDateTimeLocaleTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/EncoderUtilsDateTimeLocaleTest.java
index 4fad41a..cf25839 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/EncoderUtilsDateTimeLocaleTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/EncoderUtilsDateTimeLocaleTest.java
@@ -37,52 +37,52 @@ public class EncoderUtilsDateTimeLocaleTest  {
     }
 
     @Test
-    public void testUS() throws Exception {
+    public void testUS() {
         runTests(Locale.US);
     }
     
     @Test
-    public void testUK() throws Exception {
+    public void testUK() {
         runTests(Locale.UK);
     }
 
     @Test
-    public void testITALY() throws Exception {
+    public void testITALY() {
         runTests(Locale.ITALY);
     }
 
     @Test
-    public void testGERMANY() throws Exception {
+    public void testGERMANY() {
         runTests(Locale.GERMANY);
     }
 
     @Test
-    public void testFRANCE() throws Exception {
+    public void testFRANCE() {
         runTests(Locale.FRANCE);
     }
 
     @Test
-    public void testCANADA() throws Exception {
+    public void testCANADA() {
         runTests(Locale.CANADA);
     }
 
     @Test
-    public void testCHINA() throws Exception {
+    public void testCHINA() {
         runTests(Locale.CHINA);
     }
 
     @Test
-    public void testJAPAN() throws Exception {
+    public void testJAPAN() {
         runTests(Locale.JAPAN);
     }
 
     @Test
-    public void testKOREA() throws Exception {
+    public void testKOREA() {
         runTests(Locale.KOREA);
     }
 
     @Test
-    public void testTAIWAN() throws Exception {
+    public void testTAIWAN() {
         runTests(Locale.TAIWAN);
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderEnvelopeTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderEnvelopeTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderEnvelopeTest.java
index dcb6dee..f3d7397 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderEnvelopeTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderEnvelopeTest.java
@@ -20,14 +20,13 @@
 package org.apache.james.imap.encode;
 
 import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 import org.apache.james.imap.encode.base.ByteImapResponseWriter;
 import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.FetchResponse;
 import org.apache.james.imap.message.response.FetchResponse.Envelope.Address;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -52,8 +51,6 @@ public class FetchResponseEncoderEnvelopeTest {
 
     private static final int MSN = 100;
 
-    private Mockery context = new JUnit4Mockery();
-    
 
     private ImapEncoder mockNextEncoder;
 
@@ -89,7 +86,7 @@ public class FetchResponseEncoderEnvelopeTest {
     
     @Before
     public void setUp() throws Exception {
-        envelope = context.mock(FetchResponse.Envelope.class);
+        envelope = mock(FetchResponse.Envelope.class);
 
         bcc = null;
         cc = null;
@@ -103,7 +100,7 @@ public class FetchResponseEncoderEnvelopeTest {
         to = null;
 
         message = new FetchResponse(MSN, null, null, null, null, null, envelope, null, null, null);
-        mockNextEncoder = context.mock(ImapEncoder.class);
+        mockNextEncoder = mock(ImapEncoder.class);
         encoder = new FetchResponseEncoder(mockNextEncoder, false);
     }
 
@@ -122,33 +119,26 @@ public class FetchResponseEncoderEnvelopeTest {
 
     private Address mockAddress(final String name, final String domainList,
             final String mailbox, final String host) {
-        final Address address = context.mock(Address.class, name + host);
-        context.checking(new Expectations() {{
-                    oneOf(address).getPersonalName();will(returnValue(name));
-                    oneOf(address).getAtDomainList();will(returnValue(domainList));
-                    oneOf(address).getMailboxName();will(returnValue(mailbox));
-                    oneOf(address).getHostName();will(returnValue(host));
-                }
-            }
-        );
+        Address address = mock(Address.class);
+
+        when(address.getPersonalName()).thenReturn(name);
+        when(address.getAtDomainList()).thenReturn(domainList);
+        when(address.getMailboxName()).thenReturn(mailbox);
+        when(address.getHostName()).thenReturn(host);
         return address;
     }
 
     private void envelopExpects() {
-        context.checking(new Expectations() {{
-                oneOf(envelope).getBcc();will(returnValue(bcc));
-                oneOf(envelope).getCc();will(returnValue(cc));
-                oneOf(envelope).getDate();will(returnValue(date));
-                oneOf(envelope).getFrom();will(returnValue(from));
-                oneOf(envelope).getInReplyTo();will(returnValue(inReplyTo));
-                oneOf(envelope).getMessageId();will(returnValue(messageId));
-                oneOf(envelope).getReplyTo();will(returnValue(replyTo));
-                oneOf(envelope).getSender();will(returnValue(sender));
-                oneOf(envelope).getSubject();will(returnValue(subject));
-                oneOf(envelope).getTo();will(returnValue(to));
-                }
-            }
-        );
+        when(envelope.getBcc()).thenReturn(bcc);
+        when(envelope.getCc()).thenReturn(cc);
+        when(envelope.getDate()).thenReturn(date);
+        when(envelope.getFrom()).thenReturn(from);
+        when(envelope.getInReplyTo()).thenReturn(inReplyTo);
+        when(envelope.getMessageId()).thenReturn(messageId);
+        when(envelope.getReplyTo()).thenReturn(replyTo);
+        when(envelope.getSender()).thenReturn(sender);
+        when(envelope.getSubject()).thenReturn(subject);
+        when(envelope.getTo()).thenReturn(to);
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderNoExtensionsTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderNoExtensionsTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderNoExtensionsTest.java
index f129b03..b4b135c 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderNoExtensionsTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderNoExtensionsTest.java
@@ -22,6 +22,8 @@ package org.apache.james.imap.encode;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -35,41 +37,34 @@ import org.apache.james.imap.encode.base.ByteImapResponseWriter;
 import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.FetchResponse;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
-public class FetchResponseEncoderNoExtensionsTest  {
+public class FetchResponseEncoderNoExtensionsTest {
     private ByteImapResponseWriter writer = new ByteImapResponseWriter();
     private ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
     private Flags flags;
 
     private FetchResponse.Structure stubStructure;
-
     private ImapEncoder mockNextEncoder;
-
     private FetchResponseEncoder encoder;
 
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
-        mockNextEncoder = context.mock(ImapEncoder.class);
+        mockNextEncoder = mock(ImapEncoder.class);
         encoder = new FetchResponseEncoder(mockNextEncoder, true);
         flags = new Flags(Flags.Flag.DELETED);
-        stubStructure = context.mock(FetchResponse.Structure.class);
+        stubStructure = mock(FetchResponse.Structure.class);
     }
 
 
     @Test
-    public void testShouldNotAcceptUnknownResponse() throws Exception {
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+    public void testShouldNotAcceptUnknownResponse() {
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
     }
 
     @Test
-    public void testShouldAcceptFetchResponse() throws Exception {
+    public void testShouldAcceptFetchResponse() {
         assertTrue(encoder.isAcceptable(new FetchResponse(11, null, null, null, null,
                 null, null, null, null, null)));
     }
@@ -99,7 +94,7 @@ public class FetchResponseEncoderNoExtensionsTest  {
         assertEquals("* 100 FETCH (FLAGS (\\Deleted) UID 72)\r\n",writer.getString());
 
     }
-    
+
     @Test
     public void testShouldNotAddExtensionsWithEncodingBodyStructure() throws Exception {
         FetchResponse message = new FetchResponse(100, flags, MessageUid.of(72), null,
@@ -109,20 +104,16 @@ public class FetchResponseEncoderNoExtensionsTest  {
         final List<String> parameterList = new ArrayList<>();
         parameterList.add("CHARSET");
         parameterList.add("US-ASCII");
-        
-        context.checking(new Expectations() {{
-                    final long octets = 2279L;
-                    final long lines = 48L;
-                    allowing(stubStructure).getMediaType(); will(returnValue("TEXT"));
-                    allowing(stubStructure).getSubType(); will(returnValue("HTML"));
-                    allowing(stubStructure).getOctets();will(returnValue(octets));
-                    allowing(stubStructure).getLines();will(returnValue(lines));
-                    allowing(stubStructure).getParameters(); will(returnValue(parameterList));
-                    allowing(stubStructure).getEncoding(); will(returnValue("7BIT"));
-                    ignoring(stubStructure);
-                }
-            }
-        );
+
+        when(stubStructure.getMediaType()).thenReturn("TEXT");
+        when(stubStructure.getSubType()).thenReturn("HTML");
+        when(stubStructure.getOctets()).thenReturn(2279L);
+        when(stubStructure.getLines()).thenReturn(48L);
+        when(stubStructure.getParameters()).thenReturn(parameterList);
+        when(stubStructure.getEncoding()).thenReturn("7BIT");
+        when(stubStructure.getId()).thenReturn("");
+        when(stubStructure.getDescription()).thenReturn("");
+
         final FakeImapSession fakeImapSession = new FakeImapSession();
         encoder.doEncode(message, composer, fakeImapSession);
         assertEquals("* 100 FETCH (FLAGS (\\Deleted) BODYSTRUCTURE (\"TEXT\" \"HTML\" (\"CHARSET\" \"US-ASCII\") \"\" \"\" \"7BIT\" 2279 48) UID 72)\r\n", writer.getString());

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderTest.java
index 9f1470c..b5fb7d6 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/FetchResponseEncoderTest.java
@@ -22,6 +22,7 @@ package org.apache.james.imap.encode;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.mock;
 
 import javax.mail.Flags;
 
@@ -30,8 +31,6 @@ import org.apache.james.imap.encode.base.ByteImapResponseWriter;
 import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.FetchResponse;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -45,22 +44,20 @@ public class FetchResponseEncoderTest  {
 
     private FetchResponseEncoder encoder;
 
-    private Mockery context = new JUnit4Mockery();
-
     @Before
     public void setUp() throws Exception {
-        mockNextEncoder = context.mock(ImapEncoder.class);
+        mockNextEncoder = mock(ImapEncoder.class);
         encoder = new FetchResponseEncoder(mockNextEncoder, false);
         flags = new Flags(Flags.Flag.DELETED);
     }
 
     @Test
-    public void testShouldNotAcceptUnknownResponse() throws Exception {
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+    public void testShouldNotAcceptUnknownResponse() {
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
     }
 
     @Test
-    public void testShouldAcceptFetchResponse() throws Exception {
+    public void testShouldAcceptFetchResponse() {
         assertTrue(encoder.isAcceptable(new FetchResponse(11, null, null, null, null,
                 null, null, null, null, null)));
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/LSubResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/LSubResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/LSubResponseEncoderTest.java
index 91690bc..b1a15aa 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/LSubResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/LSubResponseEncoderTest.java
@@ -20,6 +20,7 @@
 package org.apache.james.imap.encode;
 
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.mock;
 
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.encode.base.ByteImapResponseWriter;
@@ -27,8 +28,6 @@ import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.LSubResponse;
 import org.apache.james.imap.message.response.ListResponse;
 import org.apache.james.mailbox.model.MailboxMetaData;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -38,11 +37,9 @@ public class LSubResponseEncoderTest  {
     private ByteImapResponseWriter writer = new ByteImapResponseWriter();
     private ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
 
-    private Mockery context = new JUnit4Mockery();
-
     @Before
     public void setUp() throws Exception {
-        encoder = new LSubResponseEncoder(context.mock(ImapEncoder.class));
+        encoder = new LSubResponseEncoder(mock(ImapEncoder.class));
     }
 
     @Test
@@ -58,7 +55,7 @@ public class LSubResponseEncoderTest  {
 
     @Test
     public void encoderShouldNotAcceptImapMessage() {
-        assertThat(encoder.isAcceptable(context.mock(ImapMessage.class))).isFalse();
+        assertThat(encoder.isAcceptable(mock(ImapMessage.class))).isFalse();
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/ListResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/ListResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/ListResponseEncoderTest.java
index 5ab80be..50a8fea 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/ListResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/ListResponseEncoderTest.java
@@ -21,6 +21,7 @@ package org.apache.james.imap.encode;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.Assert.assertFalse;
+import static org.mockito.Mockito.mock;
 
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.encode.base.ByteImapResponseWriter;
@@ -28,8 +29,6 @@ import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.LSubResponse;
 import org.apache.james.imap.message.response.ListResponse;
 import org.apache.james.mailbox.model.MailboxMetaData;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -40,11 +39,9 @@ public class ListResponseEncoderTest {
     private ByteImapResponseWriter writer = new ByteImapResponseWriter();
     private ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
 
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
-        encoder = new ListResponseEncoder(context.mock(ImapEncoder.class));
+        encoder = new ListResponseEncoder(mock(ImapEncoder.class));
     }
 
     @Test
@@ -56,13 +53,13 @@ public class ListResponseEncoderTest {
     @Test
     public void encoderShouldNotAcceptLsubResponse() {
         assertThat(encoder.isAcceptable(new LSubResponse("name", true, '.'))).isFalse();
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
         assertFalse(encoder.isAcceptable(null));
     }
 
     @Test
     public void encoderShouldNotAcceptImapMessage() {
-        assertThat(encoder.isAcceptable(context.mock(ImapMessage.class))).isFalse();
+        assertThat(encoder.isAcceptable(mock(ImapMessage.class))).isFalse();
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/MailboxStatusResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/MailboxStatusResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/MailboxStatusResponseEncoderTest.java
index bf57192..0ad5f2b 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/MailboxStatusResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/MailboxStatusResponseEncoderTest.java
@@ -22,14 +22,13 @@ package org.apache.james.imap.encode;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.mock;
 
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.encode.base.ByteImapResponseWriter;
 import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.MailboxStatusResponse;
 import org.apache.james.mailbox.MessageUid;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -41,21 +40,18 @@ public class MailboxStatusResponseEncoderTest  {
 
     ByteImapResponseWriter writer = new ByteImapResponseWriter();
     ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
-    
-    private Mockery context = new JUnit4Mockery();
-    
+
     @Before
     public void setUp() throws Exception {
-        mockNextEncoder = context.mock(ImapEncoder.class);
+        mockNextEncoder = mock(ImapEncoder.class);
         encoder = new MailboxStatusResponseEncoder(mockNextEncoder);
     }
-    
 
     @Test
-    public void testIsAcceptable() throws Exception {
+    public void testIsAcceptable() {
         assertTrue(encoder.isAcceptable(new MailboxStatusResponse(null, null, null,
                 null, null, null, "mailbox")));
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
         assertFalse(encoder.isAcceptable(null));
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/NamespaceResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/NamespaceResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/NamespaceResponseEncoderTest.java
index 9ac81af..0fceca4 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/NamespaceResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/NamespaceResponseEncoderTest.java
@@ -20,6 +20,8 @@ package org.apache.james.imap.encode;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -28,12 +30,10 @@ import org.apache.james.imap.api.ImapConstants;
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.message.response.NamespaceResponse;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.Sequence;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
+import org.mockito.InOrder;
+import org.mockito.Mockito;
 
 public class NamespaceResponseEncoderTest {
 
@@ -43,14 +43,12 @@ public class NamespaceResponseEncoderTest {
 
     NamespaceResponseEncoder subject;
 
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
-        dummySession = context.mock(ImapSession.class);
-        final ImapEncoder stubNextEncoderInChain = context.mock(ImapEncoder.class);
+        dummySession = mock(ImapSession.class);
+        final ImapEncoder stubNextEncoderInChain = mock(ImapEncoder.class);
         subject = new NamespaceResponseEncoder(stubNextEncoderInChain);
-        mockComposer = context.mock(ImapResponseComposer.class);
+        mockComposer = mock(ImapResponseComposer.class);
     }
 
     @Test
@@ -58,27 +56,22 @@ public class NamespaceResponseEncoderTest {
             throws Exception {
         final String aPrefix = "A Prefix";
         final String aDeliminator = "@";
-        context.checking(new Expectations() {
-            {
-                final Sequence sequence = context.sequence("Composition order");
-                oneOf(mockComposer).untagged(); inSequence(sequence);
-                oneOf(mockComposer).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).openParen();  inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).quote(aPrefix + aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).quote(aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).end(); inSequence(sequence);
-            }
-        });
+
         List<NamespaceResponse.Namespace> namespaces = new ArrayList<>();
         namespaces.add(new NamespaceResponse.Namespace(aPrefix, aDeliminator
                 .charAt(0)));
         subject.doEncode(new NamespaceResponse(null, null, namespaces),
                 mockComposer, dummySession);
+
+        InOrder inOrder = Mockito.inOrder(mockComposer);
+        inOrder.verify(mockComposer, times(1)).untagged();
+        inOrder.verify(mockComposer, times(1)).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
+        inOrder.verify(mockComposer, times(2)).nil();
+        inOrder.verify(mockComposer, times(2)).openParen();
+        inOrder.verify(mockComposer, times(1)).quote(aPrefix + aDeliminator);
+        inOrder.verify(mockComposer, times(1)).quote(aDeliminator);
+        inOrder.verify(mockComposer, times(2)).closeParen();
+        inOrder.verify(mockComposer, times(1)).end();
     }
 
     @Test
@@ -86,27 +79,23 @@ public class NamespaceResponseEncoderTest {
             throws Exception {
         final String aPrefix = "A Prefix";
         final String aDeliminator = "@";
-        context.checking(new Expectations() {
-            {
-                final Sequence sequence = context.sequence("Composition order");
-                oneOf(mockComposer).untagged(); inSequence(sequence);
-                oneOf(mockComposer).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).quote(aPrefix + aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).quote(aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).end(); inSequence(sequence);
-            }
-        });
+
         List<NamespaceResponse.Namespace> namespaces = new ArrayList<>();
         namespaces.add(new NamespaceResponse.Namespace(aPrefix, aDeliminator
                 .charAt(0)));
         subject.doEncode(new NamespaceResponse(null, namespaces, null),
                 mockComposer, dummySession);
+
+        InOrder inOrder = Mockito.inOrder(mockComposer);
+        inOrder.verify(mockComposer, times(1)).untagged();
+        inOrder.verify(mockComposer, times(1)).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
+        inOrder.verify(mockComposer, times(1)).nil();
+        inOrder.verify(mockComposer, times(2)).openParen();
+        inOrder.verify(mockComposer, times(1)).quote(aPrefix + aDeliminator);
+        inOrder.verify(mockComposer, times(1)).quote(aDeliminator);
+        inOrder.verify(mockComposer, times(2)).closeParen();
+        inOrder.verify(mockComposer, times(1)).nil();
+        inOrder.verify(mockComposer, times(1)).end();
     }
 
     @Test
@@ -114,27 +103,22 @@ public class NamespaceResponseEncoderTest {
             throws Exception {
         final String aPrefix = "A Prefix";
         final String aDeliminator = "@";
-        context.checking(new Expectations() {
-            {
-                final Sequence sequence = context.sequence("Composition order");
-                oneOf(mockComposer).untagged(); inSequence(sequence);
-                oneOf(mockComposer).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).quote(aPrefix + aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).quote(aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).end(); inSequence(sequence);
-            }
-        });
+
         List<NamespaceResponse.Namespace> namespaces = new ArrayList<>();
         namespaces.add(new NamespaceResponse.Namespace(aPrefix, aDeliminator
                 .charAt(0)));
         subject.doEncode(new NamespaceResponse(namespaces, null, null),
                 mockComposer, dummySession);
+
+        InOrder inOrder = Mockito.inOrder(mockComposer);
+        inOrder.verify(mockComposer, times(1)).untagged();
+        inOrder.verify(mockComposer, times(1)).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
+        inOrder.verify(mockComposer, times(2)).openParen();
+        inOrder.verify(mockComposer, times(1)).quote(aPrefix + aDeliminator);
+        inOrder.verify(mockComposer, times(1)).quote(aDeliminator);
+        inOrder.verify(mockComposer, times(2)).closeParen();
+        inOrder.verify(mockComposer, times(2)).nil();
+        inOrder.verify(mockComposer, times(1)).end();
     }
 
     @Test
@@ -144,26 +128,7 @@ public class NamespaceResponseEncoderTest {
         final String aDeliminator = "@";
         final String anotherPrefix = "Another Prefix";
         final String anotherDeliminator = "^";
-        context.checking(new Expectations() {
-            {
-                final Sequence sequence = context.sequence("Composition order");
-                oneOf(mockComposer).untagged(); inSequence(sequence);
-                oneOf(mockComposer).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).quote(aPrefix + aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).quote(aDeliminator); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).openParen(); inSequence(sequence);
-                oneOf(mockComposer).quote(anotherPrefix + anotherDeliminator); inSequence(sequence);
-                oneOf(mockComposer).quote(anotherDeliminator); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).closeParen(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).end(); inSequence(sequence);
-            }
-        });
+
         List<NamespaceResponse.Namespace> namespaces = new ArrayList<>();
         namespaces.add(new NamespaceResponse.Namespace(aPrefix, aDeliminator
                 .charAt(0)));
@@ -171,28 +136,38 @@ public class NamespaceResponseEncoderTest {
                 anotherDeliminator.charAt(0)));
         subject.doEncode(new NamespaceResponse(namespaces, null, null),
                 mockComposer, dummySession);
+
+        InOrder inOrder = Mockito.inOrder(mockComposer);
+        inOrder.verify(mockComposer, times(1)).untagged();
+        inOrder.verify(mockComposer, times(1)).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
+        inOrder.verify(mockComposer, times(2)).openParen();
+        inOrder.verify(mockComposer, times(1)).quote(aPrefix + aDeliminator);
+        inOrder.verify(mockComposer, times(1)).quote(aDeliminator);
+        inOrder.verify(mockComposer, times(1)).closeParen();
+        inOrder.verify(mockComposer, times(1)).openParen();
+        inOrder.verify(mockComposer, times(1)).quote(anotherPrefix + anotherDeliminator);
+        inOrder.verify(mockComposer, times(1)).quote(anotherDeliminator);
+        inOrder.verify(mockComposer, times(2)).closeParen();
+        inOrder.verify(mockComposer, times(2)).nil();
+        inOrder.verify(mockComposer, times(1)).end();
     }
 
     @Test
     public void testAllNullShouldWriteAllNIL() throws Exception {
-        context.checking(new Expectations() {
-            {
-                final Sequence sequence = context.sequence("Composition order");
-                oneOf(mockComposer).untagged(); inSequence(sequence);
-                oneOf(mockComposer).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).nil(); inSequence(sequence);
-                oneOf(mockComposer).end(); inSequence(sequence);
-            }
-        });
+
         subject.doEncode(new NamespaceResponse(null, null, null), mockComposer,
                 dummySession);
+
+        InOrder inOrder = Mockito.inOrder(mockComposer);
+        inOrder.verify(mockComposer, times(1)).untagged();
+        inOrder.verify(mockComposer, times(1)).commandName(ImapConstants.NAMESPACE_COMMAND_NAME);
+        inOrder.verify(mockComposer, times(3)).nil();
+        inOrder.verify(mockComposer, times(1)).end();
     }
 
     @Test
-    public void testNamespaceResponseIsAcceptable() throws Exception {
-        assertFalse(subject.isAcceptable(context.mock(ImapMessage.class)));
+    public void testNamespaceResponseIsAcceptable() {
+        assertFalse(subject.isAcceptable(mock(ImapMessage.class)));
         assertTrue(subject
                 .isAcceptable(new NamespaceResponse(null, null, null)));
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/SearchResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/SearchResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/SearchResponseEncoderTest.java
index 4f4d18c..72b13f8 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/SearchResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/SearchResponseEncoderTest.java
@@ -22,14 +22,13 @@ package org.apache.james.imap.encode;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.mock;
 
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.encode.base.ByteImapResponseWriter;
 import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.LSubResponse;
 import org.apache.james.imap.message.response.SearchResponse;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -46,11 +45,9 @@ public class SearchResponseEncoderTest {
     private ByteImapResponseWriter writer = new ByteImapResponseWriter();
     private ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
 
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
-        mockNextEncoder = context.mock(ImapEncoder.class);
+        mockNextEncoder = mock(ImapEncoder.class);
         response = new SearchResponse(IDS, null);
         encoder = new SearchResponseEncoder(mockNextEncoder);
     }
@@ -59,7 +56,7 @@ public class SearchResponseEncoderTest {
     public void testIsAcceptable() {
         assertTrue(encoder.isAcceptable(response));
         assertFalse(encoder.isAcceptable(new LSubResponse("name", true, '.')));
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
         assertFalse(encoder.isAcceptable(null));
     }
 

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/encode/XListResponseEncoderTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/encode/XListResponseEncoderTest.java b/protocols/imap/src/test/java/org/apache/james/imap/encode/XListResponseEncoderTest.java
index 04181bf..a3e212f 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/encode/XListResponseEncoderTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/encode/XListResponseEncoderTest.java
@@ -21,6 +21,7 @@ package org.apache.james.imap.encode;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.Assert.assertFalse;
+import static org.mockito.Mockito.mock;
 
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.process.MailboxType;
@@ -29,8 +30,6 @@ import org.apache.james.imap.encode.base.ImapResponseComposerImpl;
 import org.apache.james.imap.message.response.LSubResponse;
 import org.apache.james.imap.message.response.XListResponse;
 import org.apache.james.mailbox.model.MailboxMetaData;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -41,11 +40,9 @@ public class XListResponseEncoderTest {
     private ByteImapResponseWriter writer = new ByteImapResponseWriter();
     private ImapResponseComposer composer = new ImapResponseComposerImpl(writer);
 
-    private Mockery context = new JUnit4Mockery();
-    
     @Before
     public void setUp() throws Exception {
-        encoder = new XListResponseEncoder(context.mock(ImapEncoder.class));
+        encoder = new XListResponseEncoder(mock(ImapEncoder.class));
     }
 
     @Test
@@ -63,13 +60,13 @@ public class XListResponseEncoderTest {
     @Test
     public void encoderShouldNotAcceptLsubResponse() {
         assertThat(encoder.isAcceptable(new LSubResponse("name", true, '.'))).isFalse();
-        assertFalse(encoder.isAcceptable(context.mock(ImapMessage.class)));
+        assertFalse(encoder.isAcceptable(mock(ImapMessage.class)));
         assertFalse(encoder.isAcceptable(null));
     }
 
     @Test
     public void encoderShouldNotAcceptImapMessage() {
-        assertThat(encoder.isAcceptable(context.mock(ImapMessage.class))).isFalse();
+        assertThat(encoder.isAcceptable(mock(ImapMessage.class))).isFalse();
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/main/ImapRequestHandlerAdandonConnectionTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/main/ImapRequestHandlerAdandonConnectionTest.java b/protocols/imap/src/test/java/org/apache/james/imap/main/ImapRequestHandlerAdandonConnectionTest.java
index 0b3cb7a..dcd2818 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/main/ImapRequestHandlerAdandonConnectionTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/main/ImapRequestHandlerAdandonConnectionTest.java
@@ -19,6 +19,7 @@
 package org.apache.james.imap.main;
 
 import static org.junit.Assert.assertFalse;
+import static org.mockito.Mockito.mock;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -28,9 +29,6 @@ import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.decode.ImapDecoder;
 import org.apache.james.imap.decode.main.ImapRequestStreamHandler;
 import org.apache.james.imap.encode.ImapEncoder;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JUnit4Mockery;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -47,45 +45,27 @@ public class ImapRequestHandlerAdandonConnectionTest {
     ImapDecoder decoderStub;
     ImapProcessor processorStub;
     ImapEncoder encoderStub;
-    ImapSession sessionStub;    
-
-    private Mockery mockery = new JUnit4Mockery();
-    
+    ImapSession sessionStub;
     
     @Before
     public void setUp() throws Exception {
         // Fakes
         fakeOutput = new ByteArrayOutputStream();
         // Stubs
-        decoderStub = mockery.mock(ImapDecoder.class);
-        processorStub = mockery.mock(ImapProcessor.class);
-        encoderStub = mockery.mock(ImapEncoder.class);
-        sessionStub = mockery.mock(ImapSession.class);
+        decoderStub = mock(ImapDecoder.class);
+        processorStub = mock(ImapProcessor.class);
+        encoderStub = mock(ImapEncoder.class);
+        sessionStub = mock(ImapSession.class);
         // System under test
         subject = new ImapRequestStreamHandler(decoderStub, processorStub, encoderStub);
     }
     
     @Test
-    public void testWhenConsumeLineFailsShouldAbandonConnection() throws Exception {        
-        //
-        // Setup
-        //
-        
-        // Setup stubs
-        mockery.checking(new Expectations() {{
-                    ignoring(decoderStub);
-                    ignoring(processorStub);
-                    ignoring(encoderStub);
-                    ignoring(sessionStub);
-                }
-            }
-        );
-        
+    public void testWhenConsumeLineFailsShouldAbandonConnection() {
         // Create input stream that will throw IOException after first read
         byte[] endOfStreamAfterOneCharacter = {'0'};
         ByteArrayInputStream fakeInput = new ByteArrayInputStream(endOfStreamAfterOneCharacter);
         
-        
         // 
         // Exercise
         //

http://git-wip-us.apache.org/repos/asf/james-project/blob/6373f39a/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
----------------------------------------------------------------------
diff --git a/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java b/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
index 76323ba..db5e8c4 100644
--- a/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
+++ b/protocols/imap/src/test/java/org/apache/james/imap/processor/CopyProcessorTest.java
@@ -216,7 +216,7 @@ public class CopyProcessorTest {
     }
 
     @Test
-    public void processShouldNotHandleMoveRequests() throws Exception {
+    public void processShouldNotHandleMoveRequests() {
         MoveRequest moveRequest = new MoveRequest(ImapCommand.anyStateCommand("Name"), new IdRange[] {new IdRange(4, 6)}, ImapConstants.INBOX_NAME, true, TAG);
 
         testee.process(moveRequest, mockResponder, mockImapSession);


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org