+ assertThat(postRequest.isGET, equalTo(false))
+ assertThat(postRequest.isPOST, equalTo(true))
+ }
+
+ @Test
+ fun `correct parameter of GET request is returned`() {
+ whenever(httpGetRequest.getParam("test-param")).thenAnswer { "test-value" }
+ assertThat(freenetGetRequest.parameters["test-param"], equalTo("test-value"))
+ }
+
+ @Test
+ fun `correct parameter of POST request is returned`() {
+ whenever(httpPostRequest.getPartAsStringFailsafe(eq("test-param"), anyInt())).thenAnswer { "test-value" }
+ assertThat(freenetPostRequest.parameters["test-param"], equalTo("test-value"))
+ }
+
+ @Test
+ fun `parameter of unknown request is not returned`() {
+ val request = mock<FreenetRequest>()
+ val httpRequest = mock<HTTPRequest>()
+ whenever(request.httpRequest).thenReturn(httpRequest)
+ assertThat(request.parameters["test-param"], nullValue())
+ }
+
+ @Test
+ fun `parameter of GET request is checked for presence correctly`() {
+ whenever(httpGetRequest.isParameterSet("test-param")).thenAnswer { true }
+ assertThat("test-param" in freenetGetRequest.parameters, equalTo(true))
+ }
+
+ @Test
+ fun `parameter of POST request is checked for presence correctly`() {
+ whenever(httpPostRequest.isPartSet("test-param")).thenAnswer { true }
+ assertThat("test-param" in freenetPostRequest.parameters, equalTo(true))
+ }
+
+ @Test
+ fun `parameter of unknown request is not set`() {
+ val request = mock<FreenetRequest>()
+ val httpRequest = mock<HTTPRequest>()
+ whenever(request.httpRequest).thenReturn(httpRequest)
+ assertThat("test-param" in request.parameters, equalTo(false))
+ }
+
+ @Test
+ fun `http header of freenet request can be retrieved`() {
+ whenever(httpGetRequest.getHeader("foo")).thenReturn("bar")
+ assertThat(freenetGetRequest.headers["foo"], equalTo("bar"))
+ }
+
+ @Test
+ fun `http header of freenet request is case-insensitive`() {
+ whenever(httpGetRequest.getHeader("foo")).thenReturn("bar")
+ assertThat(freenetGetRequest.headers["FOO"], equalTo("bar"))
+ }
+
+ @Test
+ fun `value of non-existant http header of freenet request is null`() {
+ assertThat(freenetGetRequest.headers["Foo"], nullValue())
+ }
+
+ @Test
+ fun `http header of http request can be retrieved`() {
+ whenever(httpGetRequest.getHeader("foo")).thenReturn("bar")
+ assertThat(httpGetRequest.headers["foo"], equalTo("bar"))
+ }
+
+ @Test
+ fun `http header of http request is case-insensitive`() {
+ whenever(httpGetRequest.getHeader("foo")).thenReturn("bar")
+ assertThat(httpGetRequest.headers["FOO"], equalTo("bar"))
+ }
+
+ @Test
+ fun `value of non-existant http header of http request is null`() {
+ assertThat(httpGetRequest.headers["Foo"], nullValue())