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 2020/03/02 03:16:08 UTC
[james-project] 11/29: JAMES-3061 Simplify FixingGhostMailboxTest
setup
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 9d9edcd8a820446f54d00db013051c83345eb0a9
Author: Tran Tien Duc <dt...@linagora.com>
AuthorDate: Tue Feb 25 17:10:08 2020 +0700
JAMES-3061 Simplify FixingGhostMailboxTest setup
---
.../org/apache/james/server/CassandraProbe.java | 4 ++--
.../java/org/apache/james/CassandraExtension.java | 24 ----------------------
.../rabbitmq/FixingGhostMailboxTest.java | 23 +++++++++------------
3 files changed, 12 insertions(+), 39 deletions(-)
diff --git a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/server/CassandraProbe.java b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/server/CassandraProbe.java
index 8bb6952..6483b16 100644
--- a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/server/CassandraProbe.java
+++ b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/server/CassandraProbe.java
@@ -32,7 +32,7 @@ public class CassandraProbe implements GuiceProbe {
this.clusterConfiguration = configuration;
}
- public String getKeyspace() {
- return clusterConfiguration.getKeyspace();
+ public ClusterConfiguration getConfiguration() {
+ return clusterConfiguration;
}
}
diff --git a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraExtension.java b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraExtension.java
index 2532c49..7808923 100644
--- a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraExtension.java
+++ b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraExtension.java
@@ -19,25 +19,12 @@
package org.apache.james;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-import org.apache.james.util.Host;
import org.junit.jupiter.api.extension.ExtensionContext;
-import org.junit.jupiter.api.extension.ParameterContext;
-import org.junit.jupiter.api.extension.ParameterResolutionException;
import com.google.inject.Module;
public class CassandraExtension implements GuiceModuleTestExtension {
- @Target(ElementType.PARAMETER)
- @Retention(RetentionPolicy.RUNTIME)
- public @interface CassandraHost {
- }
-
private final DockerCassandraRule cassandra;
public CassandraExtension() {
@@ -70,15 +57,4 @@ public class CassandraExtension implements GuiceModuleTestExtension {
public void unpause() {
cassandra.unpause();
}
-
- @Override
- public boolean supportsParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- return parameterContext.getParameter().getType() == Host.class
- && parameterContext.getParameter().isAnnotationPresent(CassandraHost.class);
- }
-
- @Override
- public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- return cassandra.getHost();
- }
}
diff --git a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/FixingGhostMailboxTest.java b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/FixingGhostMailboxTest.java
index 87529d2..49685df 100644
--- a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/FixingGhostMailboxTest.java
+++ b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/FixingGhostMailboxTest.java
@@ -43,12 +43,13 @@ import java.nio.charset.StandardCharsets;
import java.util.concurrent.TimeUnit;
import org.apache.james.CassandraExtension;
-import org.apache.james.CassandraExtension.CassandraHost;
import org.apache.james.CassandraRabbitMQJamesServerMain;
import org.apache.james.DockerElasticSearchExtension;
import org.apache.james.GuiceJamesServer;
import org.apache.james.JamesServerBuilder;
import org.apache.james.JamesServerExtension;
+import org.apache.james.backends.cassandra.init.ClusterFactory;
+import org.apache.james.backends.cassandra.init.configuration.ClusterConfiguration;
import org.apache.james.core.Username;
import org.apache.james.jmap.AccessToken;
import org.apache.james.jmap.draft.JmapGuiceProbe;
@@ -71,7 +72,6 @@ import org.apache.james.modules.RabbitMQExtension;
import org.apache.james.modules.TestJMAPServerModule;
import org.apache.james.server.CassandraProbe;
import org.apache.james.task.TaskManager;
-import org.apache.james.util.Host;
import org.apache.james.util.Port;
import org.apache.james.utils.DataProbeImpl;
import org.apache.james.utils.WebAdminGuiceProbe;
@@ -122,7 +122,6 @@ class FixingGhostMailboxTest {
private AccessToken accessToken;
private MailboxProbeImpl mailboxProbe;
private ACLProbe aclProbe;
- private Session session;
private ComposedMessageId message1;
private MailboxId aliceGhostInboxId;
private MailboxPath aliceInboxPath;
@@ -130,7 +129,7 @@ class FixingGhostMailboxTest {
private RequestSpecification webadminSpecification;
@BeforeEach
- void setup(GuiceJamesServer server, @CassandraHost Host cassandraHost) throws Throwable {
+ void setup(GuiceJamesServer server) throws Throwable {
WebAdminGuiceProbe webAdminProbe = server.getProbe(WebAdminGuiceProbe.class);
mailboxProbe = server.getProbe(MailboxProbeImpl.class);
aclProbe = server.getProbe(ACLProbeImpl.class);
@@ -152,17 +151,15 @@ class FixingGhostMailboxTest {
.addUser(BOB, BOB_SECRET);
accessToken = authenticateJamesUser(baseUri(jmapPort), Username.of(ALICE), ALICE_SECRET);
- session = Cluster.builder()
- .withoutJMXReporting()
- .addContactPoint(cassandraHost.getHostName())
- .withPort(cassandraHost.getPort())
- .build()
- .connect(server.getProbe(CassandraProbe.class).getKeyspace());
-
- simulateGhostMailboxBug();
+ ClusterConfiguration cassandraConfiguration = server.getProbe(CassandraProbe.class).getConfiguration();
+ try (Cluster cluster = ClusterFactory.create(cassandraConfiguration)) {
+ try (Session session = cluster.connect(cassandraConfiguration.getKeyspace())) {
+ simulateGhostMailboxBug(session);
+ }
+ }
}
- private void simulateGhostMailboxBug() throws MailboxException, IOException {
+ private void simulateGhostMailboxBug(Session session) throws MailboxException, IOException {
// State before ghost mailbox bug
// Alice INBOX is delegated to Bob and contains one message
aliceInboxPath = MailboxPath.inbox(Username.of(ALICE));
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org