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:23 UTC

[10/20] james-project git commit: JAMES-2506 Remove jmock from mpt

JAMES-2506 Remove jmock from mpt


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

Branch: refs/heads/master
Commit: 37829b367a4e3ee6df42b3a0b92130a1f4f2dbd1
Parents: dffc54e
Author: duc <dt...@linagora.com>
Authored: Mon Jul 30 17:36:33 2018 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Fri Aug 3 15:51:21 2018 +0700

----------------------------------------------------------------------
 mpt/all/pom.xml                                 |  5 --
 mpt/antlib/pom.xml                              |  5 --
 mpt/app/pom.xml                                 |  5 --
 mpt/core/pom.xml                                | 10 +--
 .../james/mpt/TestExternalHostSystem.java       | 47 +++++++-------
 .../mpt/TestFileProtocolSessionBuilder.java     | 67 +++++++++++---------
 mpt/impl/imap-mailbox/core/pom.xml              |  8 ---
 mpt/impl/imap-mailbox/external-james/pom.xml    |  4 --
 mpt/pom.xml                                     |  1 -
 9 files changed, 66 insertions(+), 86 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/all/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/all/pom.xml b/mpt/all/pom.xml
index 9b7fa22..615f41a 100644
--- a/mpt/all/pom.xml
+++ b/mpt/all/pom.xml
@@ -40,11 +40,6 @@ MPT is a functional test framework specialised for the ASCII line-base protocols
             <artifactId>commons-logging</artifactId>
         </dependency>
         <dependency>
-            <groupId>jmock</groupId>
-            <artifactId>jmock</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/antlib/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/antlib/pom.xml b/mpt/antlib/pom.xml
index d2d1ebc..352fba5 100644
--- a/mpt/antlib/pom.xml
+++ b/mpt/antlib/pom.xml
@@ -51,11 +51,6 @@ to the library requiring no extra coding.</description>
             <artifactId>commons-logging</artifactId>
         </dependency>
         <dependency>
-            <groupId>jmock</groupId>
-            <artifactId>jmock</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/app/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/app/pom.xml b/mpt/app/pom.xml
index 28239ac..993f1da 100644
--- a/mpt/app/pom.xml
+++ b/mpt/app/pom.xml
@@ -56,11 +56,6 @@ interfaces to the MPT library.</description>
             <artifactId>commons-logging</artifactId>
         </dependency>
         <dependency>
-            <groupId>jmock</groupId>
-            <artifactId>jmock</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/core/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/core/pom.xml b/mpt/core/pom.xml
index 1ebad5a..a946cc5 100644
--- a/mpt/core/pom.xml
+++ b/mpt/core/pom.xml
@@ -44,11 +44,6 @@
             <artifactId>commons-io</artifactId>
         </dependency>
         <dependency>
-            <groupId>jmock</groupId>
-            <artifactId>jmock</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <scope>compile</scope>
@@ -67,6 +62,11 @@
             <artifactId>awaitility</artifactId>
         </dependency>
         <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-core</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/core/src/test/java/org/apache/james/mpt/TestExternalHostSystem.java
----------------------------------------------------------------------
diff --git a/mpt/core/src/test/java/org/apache/james/mpt/TestExternalHostSystem.java b/mpt/core/src/test/java/org/apache/james/mpt/TestExternalHostSystem.java
index d914af2..8705a6b 100644
--- a/mpt/core/src/test/java/org/apache/james/mpt/TestExternalHostSystem.java
+++ b/mpt/core/src/test/java/org/apache/james/mpt/TestExternalHostSystem.java
@@ -19,6 +19,12 @@
 
 package org.apache.james.mpt;
 
+import static org.assertj.core.api.Assertions.assertThat;
+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 org.apache.james.mpt.api.Continuation;
 import org.apache.james.mpt.api.ImapFeatures;
 import org.apache.james.mpt.api.ImapFeatures.Feature;
@@ -27,11 +33,11 @@ import org.apache.james.mpt.api.UserAdder;
 import org.apache.james.mpt.host.ExternalHostSystem;
 import org.apache.james.mpt.monitor.NullMonitor;
 import org.apache.james.mpt.session.ExternalSessionFactory;
-import org.jmock.Mock;
-import org.jmock.MockObjectTestCase;
-
-public class TestExternalHostSystem extends MockObjectTestCase {
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
 
+public class TestExternalHostSystem {
     
     private static final String USER = "USER NAME";
 
@@ -41,46 +47,41 @@ public class TestExternalHostSystem extends MockObjectTestCase {
 
     private static final ImapFeatures SUPPORTED_FEATURES = ImapFeatures.of(Feature.NAMESPACE_SUPPORT);
 
-    
     private DiscardProtocol protocol;
-    
     private DiscardProtocol.Record record;
-
     private Continuation continuation;
-
     private UserAdder userAdder;
 
-    private Mock mockUserAdder;
-    
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
+    @Before
+    public void setUp() throws Exception {
         protocol = new DiscardProtocol();
         protocol.start();
         record = protocol.recordNext();
-        continuation = (Continuation) mock(Continuation.class).proxy();
-        mockUserAdder = mock(UserAdder.class);
-        userAdder = (UserAdder) mockUserAdder.proxy();
+        continuation = mock(Continuation.class);
+        userAdder = mock(UserAdder.class);
     }
 
-    @Override
-    protected void tearDown() throws Exception {
+    @After
+    public void tearDown() {
         protocol.stop();
-        super.tearDown();
     }
-    
+
+    @Test
     public void testWrite() throws Exception {
         Session session = newSession(SHABANG);
         final String in = "Hello, World";
         session.writeLine(in);
         session.stop();
-        assertEquals(in + "\r\n", record.complete());
+
+        assertThat(record.complete()).isEqualTo(in + "\r\n");
     }
-    
+
+    @Test
     public void testAddUser() throws Exception {
-        mockUserAdder.expects(once()).method("addUser").with(eq(USER), eq(PASSWORD));
         ExternalHostSystem system = buildSystem(SHABANG);
         system.addUser(USER, PASSWORD);
+        verify(userAdder, times(1)).addUser(USER, PASSWORD);
+        verifyNoMoreInteractions(userAdder);
     }
 
     private Session newSession(String shabang) throws Exception {

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/core/src/test/java/org/apache/james/mpt/TestFileProtocolSessionBuilder.java
----------------------------------------------------------------------
diff --git a/mpt/core/src/test/java/org/apache/james/mpt/TestFileProtocolSessionBuilder.java b/mpt/core/src/test/java/org/apache/james/mpt/TestFileProtocolSessionBuilder.java
index 4d6edcd..bacb76c 100644
--- a/mpt/core/src/test/java/org/apache/james/mpt/TestFileProtocolSessionBuilder.java
+++ b/mpt/core/src/test/java/org/apache/james/mpt/TestFileProtocolSessionBuilder.java
@@ -19,14 +19,19 @@
 
 package org.apache.james.mpt;
 
+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.StringReader;
 
 import org.apache.james.mpt.api.ProtocolInteractor;
 import org.apache.james.mpt.protocol.ProtocolSessionBuilder;
-import org.jmock.Mock;
-import org.jmock.MockObjectTestCase;
+import org.junit.Before;
+import org.junit.Test;
 
-public class TestFileProtocolSessionBuilder extends MockObjectTestCase {
+public class TestFileProtocolSessionBuilder {
 
     private static final String SCRIPT_WITH_VARIABLES = "HELLO ${not} ${foo} WORLD ${bar}";
     private static final String SCRIPT_WITH_FOO_REPLACED_BY_WHATEVER = "HELLO ${not} whatever WORLD ${bar}";
@@ -35,54 +40,56 @@ public class TestFileProtocolSessionBuilder extends MockObjectTestCase {
     ProtocolSessionBuilder builder;
     ProtocolInteractor session;
 
-    private Mock mockSession;
-    
-    @Override
-    protected void setUp() throws Exception {
-        super.setUp();
+    @Before
+    public void setUp() throws Exception {
         builder = new ProtocolSessionBuilder();
-        mockSession = mock(ProtocolInteractor.class);
-        session = (ProtocolInteractor) mockSession.proxy();
-    }
-
-    @Override
-    protected void tearDown() throws Exception {
-        super.tearDown();
+        session = mock(ProtocolInteractor.class);
     }
 
-    private void addLines() throws Exception {
-        builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + SCRIPT_WITH_VARIABLES), session);
-    }
-    
+    @Test
     public void testShouldPreserveContentsWhenNoVariablesSet() throws Exception {
-        mockSession.expects(once()).method("cl").with(eq(-1), eq(SCRIPT_WITH_VARIABLES));
-        addLines();
+        builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + SCRIPT_WITH_VARIABLES), session);
+
+        verify(session, times(1)).cl(-1, SCRIPT_WITH_VARIABLES);
+        verifyNoMoreInteractions(session);
     }
 
+    @Test
     public void testShouldReplaceVariableWhenSet() throws Exception {
-        mockSession.expects(once()).method("cl").with(eq(-1), eq(SCRIPT_WITH_FOO_REPLACED_BY_WHATEVER));
         builder.setVariable("foo", "whatever");
-        addLines();
+        builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + SCRIPT_WITH_VARIABLES), session);
+
+        verify(session, times(1)).cl(-1, SCRIPT_WITH_FOO_REPLACED_BY_WHATEVER);
+        verifyNoMoreInteractions(session);
     }
-    
+
+    @Test
     public void testShouldReplaceAllVariablesWhenSet() throws Exception {
-        mockSession.expects(once()).method("cl").with(eq(-1), eq(SCRIPT_WITH_VARIABLES_INLINED));
         builder.setVariable("bar", "bar");
         builder.setVariable("foo", "foo");
         builder.setVariable("not", "not");
-        addLines();
+        builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + SCRIPT_WITH_VARIABLES), session);
+
+        verify(session, times(1)).cl(-1, SCRIPT_WITH_VARIABLES_INLINED);
+        verifyNoMoreInteractions(session);
     }
-    
+
+    @Test
     public void testShouldReplaceVariableAtBeginningAndEnd() throws Exception {
-        mockSession.expects(once()).method("cl").with(eq(-1), eq("whatever Some Other Scriptwhateverwhatever"));
         builder.setVariable("foo", "whatever");
         builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + "${foo} Some Other Script${foo}${foo}"), session);
+
+        verify(session, times(1)).cl(-1, "whatever Some Other Scriptwhateverwhatever");
+        verifyNoMoreInteractions(session);
     }
-    
+
+    @Test
     public void testShouldIgnoreNotQuiteVariables() throws Exception {
         final String NEARLY = "{foo}${}${foo Some Other Script${foo}";
-        mockSession.expects(once()).method("cl").with(eq(-1), eq(NEARLY));
         builder.setVariable("foo", "whatever");
         builder.addProtocolLines("A Script", new StringReader(ProtocolSessionBuilder.CLIENT_TAG + " " + NEARLY), session);
+
+        verify(session, times(1)).cl(-1, NEARLY);
+        verifyNoMoreInteractions(session);
     }
 }

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/impl/imap-mailbox/core/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/impl/imap-mailbox/core/pom.xml b/mpt/impl/imap-mailbox/core/pom.xml
index b8075ff..a99084c 100644
--- a/mpt/impl/imap-mailbox/core/pom.xml
+++ b/mpt/impl/imap-mailbox/core/pom.xml
@@ -84,14 +84,6 @@
             <groupId>${james.protocols.groupId}</groupId>
             <artifactId>protocols-imap</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.jmock</groupId>
-            <artifactId>jmock</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jmock</groupId>
-            <artifactId>jmock-junit4</artifactId>
-        </dependency>
         <!-- As mime4j use commons-logging we need to specify the binding here -->
         <dependency>
             <groupId>org.slf4j</groupId>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/impl/imap-mailbox/external-james/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/impl/imap-mailbox/external-james/pom.xml b/mpt/impl/imap-mailbox/external-james/pom.xml
index 95132ec..2077d22 100644
--- a/mpt/impl/imap-mailbox/external-james/pom.xml
+++ b/mpt/impl/imap-mailbox/external-james/pom.xml
@@ -67,9 +67,5 @@
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.jmock</groupId>
-            <artifactId>jmock</artifactId>
-        </dependency>
     </dependencies>
 </project>

http://git-wip-us.apache.org/repos/asf/james-project/blob/37829b36/mpt/pom.xml
----------------------------------------------------------------------
diff --git a/mpt/pom.xml b/mpt/pom.xml
index c2f6595..12b341c 100644
--- a/mpt/pom.xml
+++ b/mpt/pom.xml
@@ -57,7 +57,6 @@
         <guice.version>4.0</guice.version>
         <hadoop.version>1.0.1</hadoop.version>
         <hbase.version>0.94.27</hbase.version>
-        <jmock.version>2.6.0</jmock.version>
         <junit.version>4.11</junit.version>
         <lucene-core.version>3.6.0</lucene-core.version>
         <slf4j.version>1.7.25</slf4j.version>


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