X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FDeleteSonePageTest.kt;h=b4031b1247fc0a0c44c88bbb43bf8d3e3197defb;hp=b94c3faa5858a9d728a0968565242d16d087a7c8;hb=3db634e425d3482bcf00dfd82e4b0d46785d5959;hpb=de7568a82eb4150bf6d2b0553841b7b69f84c968 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/pages/DeleteSonePageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/pages/DeleteSonePageTest.kt index b94c3fa..b4031b1 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/pages/DeleteSonePageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/pages/DeleteSonePageTest.kt @@ -1,15 +1,13 @@ package net.pterodactylus.sone.web.pages +import net.pterodactylus.sone.test.getInstance import net.pterodactylus.sone.test.whenever -import net.pterodactylus.sone.web.pages.WebPageTest -import net.pterodactylus.sone.web.pages.DeleteSonePage -import net.pterodactylus.util.web.Method.GET +import net.pterodactylus.sone.web.baseInjector import net.pterodactylus.util.web.Method.POST import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.equalTo +import org.hamcrest.Matchers.notNullValue import org.junit.Test -import org.mockito.ArgumentMatchers -import org.mockito.ArgumentMatchers.any import org.mockito.Mockito.any import org.mockito.Mockito.never import org.mockito.Mockito.verify @@ -17,11 +15,7 @@ import org.mockito.Mockito.verify /** * Unit test for [DeleteSonePage]. */ -class DeleteSonePageTest : WebPageTest() { - - private val page = DeleteSonePage(template, webInterface) - - override fun getPage() = page +class DeleteSonePageTest: WebPageTest(::DeleteSonePage) { @Test fun `page returns correct path`() { @@ -36,18 +30,17 @@ class DeleteSonePageTest : WebPageTest() { @Test fun `page returns correct title`() { whenever(l10n.getString("Page.DeleteSone.Title")).thenReturn("delete sone page") - assertThat(page.getPageTitle(freenetRequest), equalTo("delete sone page")) + assertThat(page.getPageTitle(soneRequest), equalTo("delete sone page")) } @Test fun `get request does not redirect`() { - request("", GET) page.processTemplate(freenetRequest, templateContext) } @Test fun `post request without delete confirmation redirects to index`() { - request("", POST) + setMethod(POST) verifyRedirect("index.html") { verify(core, never()).deleteSone(any()) } @@ -55,11 +48,16 @@ class DeleteSonePageTest : WebPageTest() { @Test fun `post request with delete confirmation deletes sone and redirects to index`() { - request("", POST) - addHttpRequestParameter("deleteSone", "true") + setMethod(POST) + addHttpRequestPart("deleteSone", "true") verifyRedirect("index.html") { verify(core).deleteSone(currentSone) } } + @Test + fun `page can be created by dependency injection`() { + assertThat(baseInjector.getInstance(), notNullValue()) + } + }