JAMES-2553 Rewrite CassandraMessageIdManagerInjectionTest test in JUNIT 5
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/4fa7952f Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/4fa7952f Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/4fa7952f Branch: refs/heads/master Commit: 4fa7952f8d5543f72a606b4950e5591e8627517d Parents: 8080ee4 Author: Benoit Tellier <[email protected]> Authored: Mon Oct 1 10:42:37 2018 +0700 Committer: Benoit Tellier <[email protected]> Committed: Thu Oct 4 17:48:43 2018 +0700 ---------------------------------------------------------------------- .../CassandraMessageIdManagerInjectionTest.java | 74 +++++++------------- 1 file changed, 27 insertions(+), 47 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/4fa7952f/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraMessageIdManagerInjectionTest.java ---------------------------------------------------------------------- diff --git a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraMessageIdManagerInjectionTest.java b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraMessageIdManagerInjectionTest.java index a2135a7..da58fad 100644 --- a/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraMessageIdManagerInjectionTest.java +++ b/server/container/guice/cassandra-guice/src/test/java/org/apache/james/CassandraMessageIdManagerInjectionTest.java @@ -19,60 +19,48 @@ package org.apache.james; +import static org.apache.james.CassandraJamesServerMain.ALL_BUT_JMX_CASSANDRA_MODULE; +import static org.assertj.core.api.Assertions.assertThatCode; + import java.util.List; import javax.inject.Inject; -import org.apache.commons.configuration.ConfigurationException; -import org.apache.commons.configuration.HierarchicalConfiguration; import org.apache.james.lifecycle.api.Configurable; import org.apache.james.mailbox.MessageIdManager; +import org.apache.james.mailbox.extractor.TextExtractor; +import org.apache.james.mailbox.store.search.PDFTextExtractor; +import org.apache.james.modules.TestJMAPServerModule; import org.apache.james.utils.ConfigurationPerformer; -import org.junit.After; -import org.junit.Before; -import org.junit.ClassRule; -import org.junit.Rule; -import org.junit.Test; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; import com.google.common.collect.ImmutableList; -import com.google.inject.AbstractModule; -import com.google.inject.Module; import com.google.inject.multibindings.Multibinder; -public class CassandraMessageIdManagerInjectionTest { - - @ClassRule - public static DockerCassandraRule cassandra = new DockerCassandraRule(); - - @Rule - public CassandraJmapTestRule cassandraJmap = CassandraJmapTestRule.defaultTestRule(); - - private GuiceJamesServer server; - - @Before - public void setup() throws Exception { - Module module = new AbstractModule() { - @Override - protected void configure() { - Multibinder.newSetBinder(binder(), ConfigurationPerformer.class).addBinding().to(CallMe.class); - } - }; - server = cassandraJmap.jmapServer(module, cassandra.getModule()); - server.start(); - } +class CassandraMessageIdManagerInjectionTest { + private static final int LIMIT_TO_10_MESSAGES = 10; + + @RegisterExtension + static JamesServerExtension testExtension = new JamesServerExtensionBuilder() + .extension(new EmbeddedElasticSearchExtension()) + .extension(new CassandraExtension()) + .server(configuration -> GuiceJamesServer.forConfiguration(configuration) + .combineWith(ALL_BUT_JMX_CASSANDRA_MODULE) + .overrideWith(binder -> binder.bind(TextExtractor.class).to(PDFTextExtractor.class)) + .overrideWith(new TestJMAPServerModule(LIMIT_TO_10_MESSAGES)) + .overrideWith(binder -> Multibinder.newSetBinder(binder, ConfigurationPerformer.class) + .addBinding() + .to(CallMe.class))) + .disableAutoStart() + .build(); @Test - public void messageIdManagerShouldBeInjected() { - - } - - @After - public void tearDown() { - server.stop(); + void messageIdManagerShouldBeInjected(GuiceJamesServer server) { + assertThatCode(server::start).doesNotThrowAnyException(); } public static class CallMe implements ConfigurationPerformer { - @Inject public CallMe(MessageIdManager messageIdManager) { } @@ -84,15 +72,7 @@ public class CassandraMessageIdManagerInjectionTest { @Override public List<Class<? extends Configurable>> forClasses() { - return ImmutableList.of(MyConfigurable.class); + return ImmutableList.of(); } } - - public static class MyConfigurable implements Configurable { - @Override - public void configure(HierarchicalConfiguration config) throws ConfigurationException { - - } - } - } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
