dc2b4a5b2ce6fcd13a7a93a62d3e74cfbf849082
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / page / SoneRequestTest.kt
1 package net.pterodactylus.sone.web.page
2
3 import freenet.clients.http.*
4 import freenet.support.api.*
5 import net.pterodactylus.sone.core.*
6 import net.pterodactylus.sone.test.*
7 import net.pterodactylus.util.web.*
8 import org.hamcrest.MatcherAssert.*
9 import org.hamcrest.Matchers.*
10 import org.junit.*
11 import org.mockito.*
12 import java.net.*
13
14 class SoneRequestTest {
15
16         private val uri = URI(".")
17         private val method = Method.GET
18         private val httpRequest = Mockito.mock(HTTPRequest::class.java)
19         private val toadletContext = Mockito.mock(ToadletContext::class.java)
20         private val core = mock<Core>()
21         private val soneRequest = SoneRequest(uri, method, httpRequest, toadletContext, core)
22
23         @Test
24         fun `freenet request properties are retained correctly`() {
25                 assertThat(soneRequest.uri, equalTo(uri))
26                 assertThat(soneRequest.method, equalTo(method))
27                 assertThat(soneRequest.httpRequest, equalTo(httpRequest))
28                 assertThat(soneRequest.toadletContext, equalTo(toadletContext))
29         }
30
31         @Test
32         fun `core is retained correctly`() {
33                 assertThat(soneRequest.core, sameInstance(core))
34         }
35
36         @Test
37         fun `freenet request is wrapped correctly`() {
38             val freenetRequest = FreenetRequest(uri, method, httpRequest, toadletContext)
39                 val wrappedSoneRequest = freenetRequest.toSoneRequest(core)
40                 assertThat(wrappedSoneRequest.uri, equalTo(uri))
41                 assertThat(wrappedSoneRequest.method, equalTo(method))
42                 assertThat(wrappedSoneRequest.httpRequest, equalTo(httpRequest))
43                 assertThat(wrappedSoneRequest.toadletContext, equalTo(toadletContext))
44                 assertThat(wrappedSoneRequest.core, sameInstance(core))
45         }
46
47 }