X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FReloadingPageTest.kt;h=007e481babf6c9cfc0152f8e97287b08e4025018;hp=2d44010658ee4cdf14f44569d70c5a35ca7a9397;hb=3db634e425d3482bcf00dfd82e4b0d46785d5959;hpb=de7568a82eb4150bf6d2b0553841b7b69f84c968 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/pages/ReloadingPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/pages/ReloadingPageTest.kt index 2d44010..007e481 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/pages/ReloadingPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/pages/ReloadingPageTest.kt @@ -1,10 +1,11 @@ package net.pterodactylus.sone.web.pages -import net.pterodactylus.sone.web.pages.ReloadingPage +import net.pterodactylus.sone.test.getInstance +import net.pterodactylus.sone.web.baseInjector import net.pterodactylus.sone.web.page.FreenetRequest -import net.pterodactylus.util.web.Method.GET import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.equalTo +import org.hamcrest.Matchers.notNullValue import org.junit.Rule import org.junit.Test import org.junit.rules.TemporaryFolder @@ -15,11 +16,15 @@ import kotlin.text.Charsets.UTF_8 /** * Unit test for [ReloadingPage]. */ -class ReloadingPageTest : WebPageTest() { +class ReloadingPageTest { @Rule @JvmField val tempFolder = TemporaryFolder() - private val folder by lazy { tempFolder.newFolder() } + private val folder by lazy { tempFolder.newFolder()!! } private val page by lazy { ReloadingPage("/prefix/", folder.path, "text/plain") } + private val webPageTest = WebPageTest() + private val freenetRequest = webPageTest.freenetRequest + private val responseBytes = webPageTest.responseContent + private val response = webPageTest.response @Test fun `page returns correct path prefix`() { @@ -33,19 +38,26 @@ class ReloadingPageTest : WebPageTest() { @Test fun `requesting invalid file results in 404`() { - request("/prefix/path/file.txt", GET) + webPageTest.request("/prefix/path/file.txt") page.handleRequest(freenetRequest, response) assertThat(response.statusCode, equalTo(404)) + assertThat(response.statusText, equalTo("Not found")) } @Test fun `requesting valid file results in 200 and delivers file`() { Files.write(Paths.get(folder.path, "file.txt"), listOf("Hello", "World"), UTF_8) - request("/prefix/path/file.txt", GET) + webPageTest.request("/prefix/path/file.txt") page.handleRequest(freenetRequest, response) assertThat(response.statusCode, equalTo(200)) + assertThat(response.statusText, equalTo("OK")) assertThat(response.contentType, equalTo("text/plain")) - assertThat(responseBytes, equalTo("Hello\nWorld\n".toByteArray())) + assertThat(responseBytes.toByteArray(), equalTo("Hello\nWorld\n".toByteArray())) + } + + @Test + fun `page can be created by dependency injection`() { + assertThat(baseInjector.getInstance>(), notNullValue()) } }