🔀 Merge “release/v81” into “master”
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / ajax / CreatePostAjaxPageTest.kt
index 8449453..b79e6df 100644 (file)
@@ -3,11 +3,14 @@ package net.pterodactylus.sone.web.ajax
 import com.google.common.base.Optional
 import net.pterodactylus.sone.data.Post
 import net.pterodactylus.sone.data.Sone
+import net.pterodactylus.sone.test.getInstance
 import net.pterodactylus.sone.test.mock
 import net.pterodactylus.sone.test.whenever
 import net.pterodactylus.sone.utils.asOptional
+import net.pterodactylus.sone.web.baseInjector
 import org.hamcrest.MatcherAssert.assertThat
 import org.hamcrest.Matchers.equalTo
+import org.hamcrest.Matchers.notNullValue
 import org.hamcrest.Matchers.nullValue
 import org.junit.Test
 
@@ -37,7 +40,7 @@ class CreatePostAjaxPageTest : JsonPageTest("createPost.ajax", pageSupplier = ::
        fun `request with valid data creates post`() {
                addRequestParameter("text", "test")
                val post = createPost()
-               whenever(core.createPost(currentSone, Optional.absent(), "test")).thenReturn(post)
+               whenever(core.createPost(currentSone, null, "test")).thenReturn(post)
                assertThatJsonIsSuccessful()
                assertThat(json["postId"]?.asText(), equalTo("id"))
                assertThat(json["sone"]?.asText(), equalTo(currentSone.id))
@@ -49,7 +52,7 @@ class CreatePostAjaxPageTest : JsonPageTest("createPost.ajax", pageSupplier = ::
                addRequestParameter("text", "test")
                addRequestParameter("recipient", "invalid")
                val post = createPost()
-               whenever(core.createPost(currentSone, Optional.absent(), "test")).thenReturn(post)
+               whenever(core.createPost(currentSone, null, "test")).thenReturn(post)
                assertThatJsonIsSuccessful()
                assertThat(json["postId"]?.asText(), equalTo("id"))
                assertThat(json["sone"]?.asText(), equalTo(currentSone.id))
@@ -63,7 +66,7 @@ class CreatePostAjaxPageTest : JsonPageTest("createPost.ajax", pageSupplier = ::
                val recipient = mock<Sone>().apply { whenever(id).thenReturn("valid") }
                addSone(recipient)
                val post = createPost("valid")
-               whenever(core.createPost(currentSone, Optional.of(recipient), "test")).thenReturn(post)
+               whenever(core.createPost(currentSone, recipient, "test")).thenReturn(post)
                assertThatJsonIsSuccessful()
                assertThat(json["postId"]?.asText(), equalTo("id"))
                assertThat(json["sone"]?.asText(), equalTo(currentSone.id))
@@ -75,7 +78,7 @@ class CreatePostAjaxPageTest : JsonPageTest("createPost.ajax", pageSupplier = ::
                addRequestParameter("text", "Link http://freenet.test:8888/KSK@foo is filtered")
                addRequestHeader("Host", "freenet.test:8888")
                val post = createPost()
-               whenever(core.createPost(currentSone, Optional.absent(), "Link KSK@foo is filtered")).thenReturn(post)
+               whenever(core.createPost(currentSone, null, "Link KSK@foo is filtered")).thenReturn(post)
                assertThatJsonIsSuccessful()
                assertThat(json["postId"]?.asText(), equalTo("id"))
                assertThat(json["sone"]?.asText(), equalTo(currentSone.id))
@@ -89,4 +92,9 @@ class CreatePostAjaxPageTest : JsonPageTest("createPost.ajax", pageSupplier = ::
                                whenever(this.recipientId).thenReturn(recipientId.asOptional())
                        }
 
+       @Test
+       fun `page can be created by dependency injection`() {
+           assertThat(baseInjector.getInstance<CreatePostAjaxPage>(), notNullValue())
+       }
+
 }