X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FWebInterfaceModuleTest.kt;h=4d8fc839b903b6892fecf0bbf2e685f7a57a0a2d;hb=d5cd41949b7e62fdc40ef7390661dcda8c18a139;hp=fc8964a56aa0107c5d742d5afaf84b56130f4054;hpb=b5fed0f19bfb57f96574b65f0180a8ebb81c043b;p=Sone.git diff --git a/src/test/kotlin/net/pterodactylus/sone/web/WebInterfaceModuleTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/WebInterfaceModuleTest.kt index fc8964a..4d8fc83 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/WebInterfaceModuleTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/WebInterfaceModuleTest.kt @@ -1,6 +1,8 @@ package net.pterodactylus.sone.web import com.google.inject.Guice.* +import freenet.client.* +import freenet.clients.http.* import freenet.l10n.* import freenet.support.api.* import net.pterodactylus.sone.core.* @@ -12,23 +14,32 @@ import net.pterodactylus.sone.main.* import net.pterodactylus.sone.template.* import net.pterodactylus.sone.test.* import net.pterodactylus.sone.text.* +import net.pterodactylus.sone.web.page.* import net.pterodactylus.util.template.* +import net.pterodactylus.util.web.* import org.hamcrest.MatcherAssert.* import org.hamcrest.Matchers.* import org.junit.* +import java.util.* +import kotlin.test.Test class WebInterfaceModuleTest { private val webInterfaceModule = WebInterfaceModule() - private val l10n = mock() private val loaders = mock() + private val translation = object : Translation { + override val currentLocale = Locale.ENGLISH + override fun translate(key: String) = if (key == "View.Sone.Text.UnknownDate") "unknown" else key + } private val additionalModules = arrayOf( Core::class.isProvidedByMock(), SoneProvider::class.isProvidedByMock(), - BaseL10n::class.isProvidedBy(l10n), + Translation::class.isProvidedBy(translation), SoneTextParser::class.isProvidedByMock(), ElementLoader::class.isProvidedByMock(), - Loaders::class.isProvidedBy(loaders) + Loaders::class.isProvidedBy(loaders), + HighLevelSimpleClient::class.isProvidedByMock(), + SessionManager::class.isProvidedByMock() ) private val injector = createInjector(webInterfaceModule, *additionalModules)!! private val templateContext by lazy { injector.getInstance().createTemplateContext()!! } @@ -184,7 +195,6 @@ class WebInterfaceModuleTest { @Test fun `unknown date filter uses correct l10n key`() { - whenever(l10n.getString("View.Sone.Text.UnknownDate")).thenReturn("unknown") assertThat(getFilter("unknown")!!.format(null, 0L, emptyMap()), equalTo("unknown")) } @@ -194,6 +204,11 @@ class WebInterfaceModuleTest { } @Test + fun `template context contains duration format filter`() { + verifyFilter("duration") + } + + @Test fun `template context contains collection sort filter`() { verifyFilter("sort") } @@ -257,4 +272,10 @@ class WebInterfaceModuleTest { assertThat(templateContext.getTemplate("testTemplate"), sameInstance(template)) } + @Test + fun `page toadlet factory is created with correct prefix`() { + val page = mock>() + assertThat(injector.getInstance().createPageToadlet(page).path(), startsWith("/Sone/")) + } + }