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 96dd61e821cdbd91fbe39097fef12086188c93c6
Author: Benoit TELLIER <[email protected]>
AuthorDate: Tue Sep 30 07:56:11 2025 +0200

    [REMOVAL] Relocate useful tests into distributed-app
---
 .../AuthenticatedCassandraJamesServerTest.java     | 16 +++++++--
 .../apache/james/cassandra}/CacheSessionTest.java  | 22 +++++++++----
 .../james/cassandra}/CassandraNodeConfTest.java    | 14 ++++++--
 .../CassandraSchemaVersionStartUpCheckTest.java    | 21 +++++++-----
 .../CassandraWithOpenSearchDisabled.java           | 14 ++++++--
 .../james/cassandra}/CassandraWithTikaTest.java    | 13 ++++++--
 .../JamesServerWithRetryConnectionTest.java        | 12 +++++--
 ...esWithNonCompatibleElasticSearchServerTest.java | 13 ++++++--
 .../james/cassandra}/KeyspaceCreationTest.java     | 21 +++++++++---
 .../TestingDistributedJamesServerBuilder.java}     | 38 +++++++++-------------
 .../src/test/resources/eml/htmlMail.eml            |  0
 .../CassandraSchemaVersionStartUpCheck.java        |  2 +-
 .../test/java/org/apache/james/TikaExtension.java  |  4 +--
 13 files changed, 131 insertions(+), 59 deletions(-)

diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/AuthenticatedCassandraJamesServerTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/AuthenticatedCassandraJamesServerTest.java
similarity index 84%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/AuthenticatedCassandraJamesServerTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/AuthenticatedCassandraJamesServerTest.java
index d836f072c2..73f9a3f969 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/AuthenticatedCassandraJamesServerTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/AuthenticatedCassandraJamesServerTest.java
@@ -17,12 +17,20 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerConcreteContract;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
 import org.apache.james.backends.cassandra.DockerCassandra;
 import 
org.apache.james.backends.cassandra.init.configuration.ClusterConfiguration;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
@@ -43,7 +51,8 @@ class AuthenticatedCassandraJamesServerTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(cassandraExtension)
-            .server(CassandraJamesServerMain::createServer)
+            .extension(new RabbitMQExtension())
+            .server(CassandraRabbitMQJamesServerMain::createServer)
             .overrideServerModule(binder -> 
binder.bind(ClusterConfiguration.class)
                 
.toInstance(DockerCassandra.configurationBuilder(cassandraExtension.getCassandra().getHost())
                     .username(CASSANDRA_USER)
@@ -58,8 +67,9 @@ class AuthenticatedCassandraJamesServerTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(cassandraExtension)
+            .extension(new RabbitMQExtension())
             .disableAutoStart()
-            .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+            .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
                 .overrideWith(new TestJMAPServerModule()))
             .overrideServerModule(binder -> 
binder.bind(ClusterConfiguration.class)
                 
.toInstance(DockerCassandra.configurationBuilder(cassandraExtension.getCassandra().getHost())
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CacheSessionTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CacheSessionTest.java
similarity index 82%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/CacheSessionTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CacheSessionTest.java
index 632f54a6be..4d32221851 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CacheSessionTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CacheSessionTest.java
@@ -17,16 +17,25 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static com.datastax.oss.driver.api.core.type.DataTypes.BIGINT;
 import static com.datastax.oss.driver.api.core.type.DataTypes.TIMEUUID;
 import static com.datastax.oss.driver.api.querybuilder.QueryBuilder.selectFrom;
 import static org.assertj.core.api.Assertions.assertThatCode;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesConfiguration;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerBuilder;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
 import org.apache.james.backends.cassandra.components.CassandraDataDefinition;
 import org.apache.james.backends.cassandra.init.configuration.InjectionNames;
 import org.apache.james.lifecycle.api.StartUpCheck;
+import org.apache.james.modules.RabbitMQExtension;
+import org.apache.james.modules.blobstore.BlobStoreConfiguration;
 import org.apache.james.modules.mailbox.CassandraCacheSessionModule;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.RegisterExtension;
@@ -73,15 +82,16 @@ class CacheSessionTest {
     }
 
     @RegisterExtension
-    static JamesServerExtension testExtension = new 
JamesServerBuilder<CassandraJamesServerConfiguration>(tmpDir ->
-        CassandraJamesServerConfiguration.builder()
+    static JamesServerExtension testExtension = new 
JamesServerBuilder<CassandraRabbitMQJamesConfiguration>(tmpDir ->
+        CassandraRabbitMQJamesConfiguration.builder()
             .workingDirectory(tmpDir)
             .configurationFromClasspath()
-            .searchConfiguration(SearchConfiguration.openSearch())
+            
.blobStore(BlobStoreConfiguration.cassandra().deduplication().noCryptoConfig())
+            .searchConfiguration(SearchConfiguration.scanning())
             .build())
-        .extension(new DockerOpenSearchExtension())
         .extension(new CassandraExtension())
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .combineWith(new CassandraCacheSessionModule()))
         .overrideServerModule(binder -> Multibinder.newSetBinder(binder, 
CassandraDataDefinition.class, Names.named(InjectionNames.CACHE))
             .addBinding()
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraNodeConfTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraNodeConfTest.java
similarity index 89%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/CassandraNodeConfTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraNodeConfTest.java
index 76d6d178df..eab6970c81 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraNodeConfTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraNodeConfTest.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations      *
  * under the License.                                           *
  ****************************************************************/
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -26,8 +26,17 @@ import java.nio.ByteBuffer;
 import java.nio.channels.SocketChannel;
 import java.nio.charset.StandardCharsets;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerCassandraRule;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerBuilder;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
 import org.apache.james.backends.cassandra.DockerCassandra;
 import 
org.apache.james.backends.cassandra.init.configuration.ClusterConfiguration;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.modules.protocols.ImapGuiceProbe;
 import org.apache.james.util.Host;
@@ -45,7 +54,8 @@ class CassandraNodeConfTest {
         return 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(new CassandraExtension())
-            .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+            .extension(new RabbitMQExtension())
+            .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
                 .overrideWith(new TestJMAPServerModule()))
             .disableAutoStart();
     }
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheckTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraSchemaVersionStartUpCheckTest.java
similarity index 89%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheckTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraSchemaVersionStartUpCheckTest.java
index bb6248eda7..e31df6b038 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheckTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraSchemaVersionStartUpCheckTest.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations      *
  * under the License.                                           *
  ****************************************************************/
-package org.apache.james.modules.mailbox;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
@@ -31,9 +31,8 @@ import java.nio.charset.StandardCharsets;
 import java.util.Optional;
 
 import org.apache.james.CassandraExtension;
-import org.apache.james.CassandraJamesServerConfiguration;
-import org.apache.james.CassandraJamesServerMain;
-import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.CassandraRabbitMQJamesConfiguration;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
 import org.apache.james.GuiceJamesServer;
 import org.apache.james.JamesServerBuilder;
 import org.apache.james.JamesServerExtension;
@@ -42,6 +41,9 @@ import 
org.apache.james.StartUpChecksPerformer.StartUpChecksException;
 import org.apache.james.backends.cassandra.versions.CassandraSchemaVersionDAO;
 import 
org.apache.james.backends.cassandra.versions.CassandraSchemaVersionManager;
 import org.apache.james.backends.cassandra.versions.SchemaVersion;
+import org.apache.james.modules.RabbitMQExtension;
+import org.apache.james.modules.blobstore.BlobStoreConfiguration;
+import org.apache.james.modules.mailbox.CassandraSchemaVersionStartUpCheck;
 import org.apache.james.modules.protocols.ImapGuiceProbe;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
@@ -59,15 +61,16 @@ class CassandraSchemaVersionStartUpCheckTest {
     private static CassandraSchemaVersionDAO versionDAO = 
mock(CassandraSchemaVersionDAO.class);
 
     @RegisterExtension
-    static JamesServerExtension testExtension = new 
JamesServerBuilder<CassandraJamesServerConfiguration>(tmpDir ->
-        CassandraJamesServerConfiguration.builder()
+    static JamesServerExtension testExtension = new 
JamesServerBuilder<CassandraRabbitMQJamesConfiguration>(tmpDir ->
+        CassandraRabbitMQJamesConfiguration.builder()
             .workingDirectory(tmpDir)
             .configurationFromClasspath()
-            .searchConfiguration(SearchConfiguration.openSearch())
+            
.blobStore(BlobStoreConfiguration.cassandra().deduplication().noCryptoConfig())
+            .searchConfiguration(SearchConfiguration.scanning())
             .build())
-        .extension(new DockerOpenSearchExtension())
         .extension(new CassandraExtension())
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .overrideWith(binder -> 
binder.bind(CassandraSchemaVersionDAO.class)
                 .toInstance(versionDAO))
             .overrideWith(binder -> 
binder.bind(CassandraSchemaVersionManager.class)
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithOpenSearchDisabled.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithOpenSearchDisabled.java
similarity index 90%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithOpenSearchDisabled.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithOpenSearchDisabled.java
index 7168fc2855..a5ed812f0a 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithOpenSearchDisabled.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithOpenSearchDisabled.java
@@ -17,18 +17,25 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
 import java.nio.charset.StandardCharsets;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.MailsShouldBeWellReceivedConcreteContract;
+import org.apache.james.SearchConfiguration;
 import org.apache.james.backends.opensearch.OpenSearchConfiguration;
 import org.apache.james.core.Domain;
 import org.apache.james.mailbox.DefaultMailboxes;
 import 
org.apache.james.mailbox.opensearch.events.OpenSearchListeningMessageSearchIndex;
 import org.apache.james.modules.EventDeadLettersProbe;
 import org.apache.james.modules.MailboxProbeImpl;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.util.Host;
 import org.apache.james.util.Port;
@@ -41,11 +48,12 @@ import org.junit.jupiter.api.extension.RegisterExtension;
 import com.google.common.collect.ImmutableList;
 import com.google.common.io.Resources;
 
-class CassandraWithOpenSearchDisabled implements 
MailsShouldBeWellReceivedConcreteContract  {
+class CassandraWithOpenSearchDisabled implements 
MailsShouldBeWellReceivedConcreteContract {
     @RegisterExtension
     static JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearchDisabled())
         .extension(new CassandraExtension())
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .overrideWith(new TestJMAPServerModule())
             .overrideWith(binder -> binder.bind(OpenSearchConfiguration.class)
                 .toInstance(OpenSearchConfiguration.builder()
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithTikaTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithTikaTest.java
similarity index 76%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithTikaTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithTikaTest.java
index e9021c556b..bcdac32c22 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/CassandraWithTikaTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/CassandraWithTikaTest.java
@@ -17,8 +17,16 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.JamesServerConcreteContract;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
+import org.apache.james.TikaExtension;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.junit.jupiter.api.extension.RegisterExtension;
 
@@ -28,7 +36,8 @@ class CassandraWithTikaTest implements 
JamesServerConcreteContract {
         .extension(new CassandraExtension())
         .extension(new TikaExtension())
         .extension(new DockerOpenSearchExtension())
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .overrideWith(new TestJMAPServerModule()))
         .lifeCycle(JamesServerExtension.Lifecycle.PER_CLASS)
         .build();
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/JamesServerWithRetryConnectionTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesServerWithRetryConnectionTest.java
similarity index 90%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/JamesServerWithRetryConnectionTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesServerWithRetryConnectionTest.java
index f5afa48acb..4fdbd11fe8 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/JamesServerWithRetryConnectionTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesServerWithRetryConnectionTest.java
@@ -17,7 +17,7 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -31,6 +31,13 @@ import java.util.concurrent.Executors;
 import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.TimeUnit;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.modules.protocols.ImapGuiceProbe;
 import org.apache.james.util.concurrent.NamedThreadFactory;
@@ -49,7 +56,8 @@ class JamesServerWithRetryConnectionTest {
     static JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
         .extension(dockerOpenSearch)
         .extension(dockerCassandra)
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .overrideWith(new TestJMAPServerModule()))
         .disableAutoStart()
         .build();
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/JamesWithNonCompatibleElasticSearchServerTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesWithNonCompatibleElasticSearchServerTest.java
similarity index 85%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/JamesWithNonCompatibleElasticSearchServerTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesWithNonCompatibleElasticSearchServerTest.java
index 543a0f941e..c0ed20f769 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/JamesWithNonCompatibleElasticSearchServerTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/JamesWithNonCompatibleElasticSearchServerTest.java
@@ -17,14 +17,22 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
+import org.apache.james.StartUpChecksPerformer;
 import org.apache.james.backends.opensearch.DockerOpenSearch;
 import org.apache.james.lifecycle.api.StartUpCheck;
 import org.apache.james.lifecycle.api.StartUpCheck.CheckResult;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.TestJMAPServerModule;
 import org.apache.james.modules.mailbox.OpenSearchStartUpCheck;
 import org.apache.james.util.docker.Images;
@@ -41,7 +49,8 @@ class JamesWithNonCompatibleElasticSearchServerTest {
     static JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
         .extension(new DockerOpenSearchExtension(dockerES6))
         .extension(new CassandraExtension())
-        .server(configuration -> 
CassandraJamesServerMain.createServer(configuration)
+        .extension(new RabbitMQExtension())
+        .server(configuration -> 
CassandraRabbitMQJamesServerMain.createServer(configuration)
             .overrideWith(new TestJMAPServerModule()))
         .disableAutoStart()
         .build();
diff --git 
a/server/apps/cassandra-app/src/test/java/org/apache/james/KeyspaceCreationTest.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/KeyspaceCreationTest.java
similarity index 87%
rename from 
server/apps/cassandra-app/src/test/java/org/apache/james/KeyspaceCreationTest.java
rename to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/KeyspaceCreationTest.java
index f3a81e7473..0af75d8bcc 100644
--- 
a/server/apps/cassandra-app/src/test/java/org/apache/james/KeyspaceCreationTest.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/KeyspaceCreationTest.java
@@ -17,13 +17,20 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
 import static org.assertj.core.api.Assertions.assertThatCode;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
+import org.apache.james.CassandraExtension;
+import org.apache.james.CassandraRabbitMQJamesServerMain;
+import org.apache.james.DockerOpenSearchExtension;
+import org.apache.james.GuiceJamesServer;
+import org.apache.james.JamesServerExtension;
+import org.apache.james.SearchConfiguration;
 import org.apache.james.backends.cassandra.DockerCassandraSingleton;
 import 
org.apache.james.backends.cassandra.init.configuration.ClusterConfiguration;
+import org.apache.james.modules.RabbitMQExtension;
 import org.apache.james.modules.mailbox.KeyspacesConfiguration;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
@@ -36,7 +43,8 @@ class KeyspaceCreationTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(new CassandraExtension())
-            .server(CassandraJamesServerMain::createServer)
+            .extension(new RabbitMQExtension())
+            .server(CassandraRabbitMQJamesServerMain::createServer)
             .overrideServerModule(binder -> 
binder.bind(ClusterConfiguration.class)
                 
.toInstance(DockerCassandraSingleton.singleton.configurationBuilder()
                     .createKeyspace()
@@ -57,7 +65,8 @@ class KeyspaceCreationTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(new CassandraExtension())
-            .server(CassandraJamesServerMain::createServer)
+            .extension(new RabbitMQExtension())
+            .server(CassandraRabbitMQJamesServerMain::createServer)
             .overrideServerModule(binder -> 
binder.bind(KeyspacesConfiguration.class).toInstance(KeyspacesConfiguration.builder()
                 .keyspace("non_existing_keyspace")
                 .cacheKeyspace("cache_non_existing_keyspace")
@@ -84,7 +93,8 @@ class KeyspaceCreationTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(new CassandraExtension())
-            .server(CassandraJamesServerMain::createServer)
+            .extension(new RabbitMQExtension())
+            .server(CassandraRabbitMQJamesServerMain::createServer)
             .overrideServerModule(binder -> 
binder.bind(ClusterConfiguration.class)
                 
.toInstance(DockerCassandraSingleton.singleton.configurationBuilder()
                     .createKeyspace()
@@ -111,7 +121,8 @@ class KeyspaceCreationTest {
         JamesServerExtension testExtension = 
TestingDistributedJamesServerBuilder.withSearchConfiguration(SearchConfiguration.openSearch())
             .extension(new DockerOpenSearchExtension())
             .extension(new CassandraExtension())
-            .server(CassandraJamesServerMain::createServer)
+            .extension(new RabbitMQExtension())
+            .server(CassandraRabbitMQJamesServerMain::createServer)
             .overrideServerModule(binder -> 
binder.bind(ClusterConfiguration.class)
                 
.toInstance(DockerCassandraSingleton.singleton.configurationBuilder()
                     .build()))
diff --git 
a/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/TestingDistributedJamesServerBuilder.java
similarity index 52%
copy from 
server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
copy to 
server/apps/distributed-app/src/test/java/org/apache/james/cassandra/TestingDistributedJamesServerBuilder.java
index 525c9a4d64..d34264caef 100644
--- 
a/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
+++ 
b/server/apps/distributed-app/src/test/java/org/apache/james/cassandra/TestingDistributedJamesServerBuilder.java
@@ -17,33 +17,27 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james;
+package org.apache.james.cassandra;
 
-import org.apache.james.mailbox.tika.TikaContainer;
-import org.apache.james.modules.TestTikaModule;
-import org.junit.jupiter.api.extension.ExtensionContext;
+import org.apache.james.CassandraRabbitMQJamesConfiguration;
+import org.apache.james.JamesServerBuilder;
+import org.apache.james.SearchConfiguration;
 
-import com.google.inject.Module;
-
-class TikaExtension implements GuiceModuleTestExtension {
-    private final TikaContainer tika;
-
-    TikaExtension() {
-        this.tika = new TikaContainer();
-    }
-
-    @Override
-    public void beforeAll(ExtensionContext extensionContext) {
-        tika.start();
+public class TestingDistributedJamesServerBuilder {
+    @FunctionalInterface
+    interface ConfigurationSpecification {
+        CassandraRabbitMQJamesConfiguration.Builder 
customize(CassandraRabbitMQJamesConfiguration.Builder configuration);
     }
 
-    @Override
-    public void afterAll(ExtensionContext extensionContext) {
-        tika.stop();
+    public static JamesServerBuilder<CassandraRabbitMQJamesConfiguration> 
forConfiguration(ConfigurationSpecification configurationSpecification) {
+        return new JamesServerBuilder<>(tmpDir ->
+            
configurationSpecification.customize(CassandraRabbitMQJamesConfiguration.builder()
+                .workingDirectory(tmpDir)
+                .configurationFromClasspath())
+                .build());
     }
 
-    @Override
-    public Module getModule() {
-        return new TestTikaModule(tika);
+    public static JamesServerBuilder<CassandraRabbitMQJamesConfiguration> 
withSearchConfiguration(SearchConfiguration searchConfiguration) {
+        return forConfiguration(configuration -> 
configuration.searchConfiguration(searchConfiguration));
     }
 }
diff --git a/server/apps/cassandra-app/src/test/resources/eml/htmlMail.eml 
b/server/apps/distributed-app/src/test/resources/eml/htmlMail.eml
similarity index 100%
rename from server/apps/cassandra-app/src/test/resources/eml/htmlMail.eml
rename to server/apps/distributed-app/src/test/resources/eml/htmlMail.eml
diff --git 
a/server/container/guice/cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheck.java
 
b/server/container/guice/cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheck.java
index 1cf5ebb31b..2665029a26 100644
--- 
a/server/container/guice/cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheck.java
+++ 
b/server/container/guice/cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraSchemaVersionStartUpCheck.java
@@ -29,7 +29,7 @@ import com.google.inject.Inject;
 public class CassandraSchemaVersionStartUpCheck implements StartUpCheck {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(CassandraSchemaVersionStartUpCheck.class);
-    static final String CHECK_NAME = "CassandraSchemaVersionStartUpCheck";
+    public static final String CHECK_NAME = 
"CassandraSchemaVersionStartUpCheck";
 
     private final CassandraSchemaVersionManager versionManager;
 
diff --git 
a/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
 
b/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
index 525c9a4d64..12c9958d00 100644
--- 
a/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
+++ 
b/server/container/guice/opensearch/src/test/java/org/apache/james/TikaExtension.java
@@ -25,10 +25,10 @@ import org.junit.jupiter.api.extension.ExtensionContext;
 
 import com.google.inject.Module;
 
-class TikaExtension implements GuiceModuleTestExtension {
+public class TikaExtension implements GuiceModuleTestExtension {
     private final TikaContainer tika;
 
-    TikaExtension() {
+    public TikaExtension() {
         this.tika = new TikaContainer();
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to