X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fmain%2FSoneModuleTest.kt;h=c6283347476efd47f7f1bf416082415ecce791c2;hp=6cac0a887096d9ac289ee008c99a2d333fb78dd4;hb=d673c44ae56fcaf8368bcf3488f417e3b947158e;hpb=33b58cb4388ee7ca267470c0d883653e1a16dff4 diff --git a/src/test/kotlin/net/pterodactylus/sone/main/SoneModuleTest.kt b/src/test/kotlin/net/pterodactylus/sone/main/SoneModuleTest.kt index 6cac0a8..c628334 100644 --- a/src/test/kotlin/net/pterodactylus/sone/main/SoneModuleTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/main/SoneModuleTest.kt @@ -1,28 +1,32 @@ package net.pterodactylus.sone.main +import com.codahale.metrics.* import com.google.common.base.* import com.google.common.eventbus.* import com.google.inject.Guice.* import com.google.inject.name.Names.* import freenet.l10n.* -import freenet.node.* -import freenet.pluginmanager.* import net.pterodactylus.sone.core.* import net.pterodactylus.sone.database.* import net.pterodactylus.sone.database.memory.* +import net.pterodactylus.sone.freenet.* +import net.pterodactylus.sone.freenet.plugin.* import net.pterodactylus.sone.freenet.wot.* import net.pterodactylus.sone.test.* import net.pterodactylus.util.config.* import net.pterodactylus.util.version.Version import org.hamcrest.MatcherAssert.* import org.hamcrest.Matchers.* +import org.junit.experimental.categories.* import org.mockito.Mockito.* import java.io.* +import java.util.concurrent.* import java.util.concurrent.atomic.* import kotlin.test.* const val versionString = "v80" +@Category(NotParallel::class) class SoneModuleTest { private val currentDir: File = File(".") @@ -41,7 +45,8 @@ class SoneModuleTest { createInjector( SoneModule(sonePlugin, EventBus()), FreenetInterface::class.isProvidedByDeepMock(), - PluginRespirator::class.isProvidedByDeepMock() + PluginRespiratorFacade::class.isProvidedByDeepMock(), + PluginConnector::class.isProvidedByDeepMock() ) } @@ -102,12 +107,6 @@ class SoneModuleTest { } @Test - fun `debug information flag is read from config`() { - File(currentDir, "sone.properties").writeText("Debug/ShowVersionInformation=true") - assertThat(injector.getInstance().debugInformation.showVersionInformation, equalTo(true)) - } - - @Test fun `event bus is bound`() { assertThat(injector.getInstance(), notNullValue()) } @@ -153,8 +152,8 @@ class SoneModuleTest { } @Test - fun `base l10n is bound correctly`() { - assertThat(injector.getInstance(), sameInstance(l10n.base)) + fun `translation is bound correctly`() { + assertThat(injector.getInstance(), notNullValue()) } @Test @@ -193,9 +192,7 @@ class SoneModuleTest { @Test fun `core is created as singleton`() { - val firstCore = injector.getInstance() - val secondCore = injector.getInstance() - assertThat(secondCore, sameInstance(firstCore)) + injector.verifySingletonInstance() } @Test @@ -204,10 +201,31 @@ class SoneModuleTest { val injector = createInjector( SoneModule(sonePlugin, eventBus), FreenetInterface::class.isProvidedByDeepMock(), - PluginRespirator::class.isProvidedByDeepMock() + PluginRespiratorFacade::class.isProvidedByDeepMock(), + PluginConnector::class.isProvidedByDeepMock() ) val core = injector.getInstance() verify(eventBus).register(core) } + @Test + fun `metrics registry is created as singleton`() { + injector.verifySingletonInstance() + } + + @Test + fun `wot connector is created as singleton`() { + injector.verifySingletonInstance() + } + + @Test + fun `notification ticker is created as singleton`() { + injector.verifySingletonInstance(named("notification")) + } + + @Test + fun `ticker shutdown is created as singleton`() { + injector.verifySingletonInstance() + } + }