X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FAboutPageTest.kt;h=5201704c7b05cf0ace1c926bca1beda83874d6c2;hp=93672a1d576e224099ab86ee96db8d6dd8e64158;hb=110a933c2724aba6a604fc5eed6372ff1e1e6144;hpb=de7568a82eb4150bf6d2b0553841b7b69f84c968 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt index 93672a1..5201704 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/pages/AboutPageTest.kt @@ -1,23 +1,25 @@ package net.pterodactylus.sone.web.pages -import net.pterodactylus.sone.main.SonePlugin.PluginHomepage -import net.pterodactylus.sone.main.SonePlugin.PluginVersion -import net.pterodactylus.sone.main.SonePlugin.PluginYear -import net.pterodactylus.sone.web.pages.WebPageTest -import net.pterodactylus.sone.web.pages.AboutPage +import net.pterodactylus.sone.main.* +import net.pterodactylus.sone.test.getInstance +import net.pterodactylus.sone.test.isProvidedByMock +import net.pterodactylus.sone.web.baseInjector +import net.pterodactylus.sone.web.page.* import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.equalTo +import org.hamcrest.Matchers.notNullValue import org.junit.Test /** * Unit test for [AboutPage]. */ -class AboutPageTest: WebPageTest() { +class AboutPageTest : WebPageTest({ webInterface, loaders, templateRenderer -> AboutPage(webInterface, loaders, templateRenderer, PluginVersion(version), PluginYear(year), PluginHomepage(homepage)) }) { - private val version = "0.1.2" - private val year = 1234 - private val homepage = "home://page" - private val page = AboutPage(template, webInterface, PluginVersion(version), PluginYear(year), PluginHomepage(homepage)) + companion object { + private const val version = "0.1.2" + private const val year = 1234 + private const val homepage = "home://page" + } @Test fun `page returns correct path`() { @@ -47,4 +49,24 @@ class AboutPageTest: WebPageTest() { assertThat(templateContext["year"], equalTo(year)) } + @Test + fun `about page can be created by dependency injection`() { + val injector = baseInjector.createChildInjector( + PluginVersion::class.isProvidedByMock(), + PluginYear::class.isProvidedByMock(), + PluginHomepage::class.isProvidedByMock() + ) + assertThat(injector.getInstance(), notNullValue()) + } + + @Test + fun `page is annotated with correct menuname`() { + assertThat(page.menuName, equalTo("About")) + } + + @Test + fun `page is annotated with correct template path`() { + assertThat(page.templatePath, equalTo("/templates/about.html")) + } + }