JAMES-2242 Make sure JMS based mail queue preserves state
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/8e606529 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/8e606529 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/8e606529 Branch: refs/heads/master Commit: 8e606529b623cb896b47b287f66997de8ce3ad7e Parents: be236f0 Author: benwa <btell...@linagora.com> Authored: Wed Nov 29 15:21:55 2017 +0700 Committer: Antoine Duprat <adup...@linagora.com> Committed: Mon Dec 4 14:42:19 2017 +0100 ---------------------------------------------------------------------- server/queue/queue-activemq/pom.xml | 5 +++++ server/queue/queue-jms/pom.xml | 5 +++++ .../james/queue/jms/AbstractJMSMailQueueTest.java | 17 +++++++++++++++++ 3 files changed, 27 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/8e606529/server/queue/queue-activemq/pom.xml ---------------------------------------------------------------------- diff --git a/server/queue/queue-activemq/pom.xml b/server/queue/queue-activemq/pom.xml index 952d425..48cfeec 100644 --- a/server/queue/queue-activemq/pom.xml +++ b/server/queue/queue-activemq/pom.xml @@ -94,6 +94,11 @@ <artifactId>geronimo-annotation_1.1_spec</artifactId> </dependency> <dependency> + <groupId>org.assertj</groupId> + <artifactId>assertj-core</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/james-project/blob/8e606529/server/queue/queue-jms/pom.xml ---------------------------------------------------------------------- diff --git a/server/queue/queue-jms/pom.xml b/server/queue/queue-jms/pom.xml index a033819..f809620 100644 --- a/server/queue/queue-jms/pom.xml +++ b/server/queue/queue-jms/pom.xml @@ -93,6 +93,11 @@ <artifactId>protocols-smtp</artifactId> </dependency> <dependency> + <groupId>org.assertj</groupId> + <artifactId>assertj-core</artifactId> + <scope>test</scope> + </dependency> + <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> http://git-wip-us.apache.org/repos/asf/james-project/blob/8e606529/server/queue/queue-jms/src/test/java/org/apache/james/queue/jms/AbstractJMSMailQueueTest.java ---------------------------------------------------------------------- diff --git a/server/queue/queue-jms/src/test/java/org/apache/james/queue/jms/AbstractJMSMailQueueTest.java b/server/queue/queue-jms/src/test/java/org/apache/james/queue/jms/AbstractJMSMailQueueTest.java index 56211d8..ccb32f2 100644 --- a/server/queue/queue-jms/src/test/java/org/apache/james/queue/jms/AbstractJMSMailQueueTest.java +++ b/server/queue/queue-jms/src/test/java/org/apache/james/queue/jms/AbstractJMSMailQueueTest.java @@ -18,6 +18,7 @@ ****************************************************************/ package org.apache.james.queue.jms; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -115,6 +116,22 @@ public abstract class AbstractJMSMailQueueTest { } @Test + public void dequeueShouldPreserveState() throws Exception { + Mail mail = createMail(); + String state = "state"; + mail.setState(state); + + queue.enQueue(mail); + + MailQueueItem item = queue.deQueue(); + try { + assertThat(item.getMail().getState()).isEqualTo(state); + } finally { + item.done(true); + } + } + + @Test public void testDelayedDeQueue() throws Exception { // should be empty assertEquals(0, queue.getSize()); --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org