X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FCreateReplyAjaxPageTest.kt;h=dfbc1db2bb51e3e4bbf518bcf52c4b83b1010508;hp=ff48460e0bc1d7934788d695a3d66fa82a3658f0;hb=ea7ad5e87074576d17b7df74365a726bd95d7665;hpb=a57c17c9a431eeb5925cc8a4e7500c53c9b3f412 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt index ff48460..dfbc1db 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt @@ -3,10 +3,13 @@ package net.pterodactylus.sone.web.ajax import net.pterodactylus.sone.data.Post import net.pterodactylus.sone.data.PostReply 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.web.baseInjector import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.equalTo +import org.hamcrest.Matchers.notNullValue import org.junit.Test /** @@ -16,50 +19,54 @@ class CreateReplyAjaxPageTest : JsonPageTest("createReply.ajax", pageSupplier = @Test fun `invalid post ID results in error message`() { - assertThat(json.isSuccess, equalTo(false)) - assertThat(json.error, equalTo("invalid-post-id")) + assertThatJsonFailed("invalid-post-id") } @Test fun `valid post ID results in created reply`() { val post = mock() - addPost("post-id", post) + addPost(post, "post-id") val reply = mock().apply { whenever(id).thenReturn("reply-id") } whenever(core.createReply(currentSone, post, "")).thenReturn(reply) addRequestParameter("post", "post-id") - assertThat(json.isSuccess, equalTo(true)) - assertThat(json["reply"].asText(), equalTo("reply-id")) - assertThat(json["sone"].asText(), equalTo("soneId")) + assertThatJsonIsSuccessful() + assertThat(json["reply"]?.asText(), equalTo("reply-id")) + assertThat(json["sone"]?.asText(), equalTo("soneId")) } @Test fun `text is filtered when creating reply`() { val post = mock() - addPost("post-id", post) + addPost(post, "post-id") val reply = mock().apply { whenever(id).thenReturn("reply-id") } whenever(core.createReply(currentSone, post, "Text with KSK@foo.bar link")).thenReturn(reply) addRequestParameter("post", "post-id") addRequestParameter("text", "Text with http://127.0.0.1:8888/KSK@foo.bar link") addRequestHeader("Host", "127.0.0.1:8888") - assertThat(json.isSuccess, equalTo(true)) - assertThat(json["reply"].asText(), equalTo("reply-id")) - assertThat(json["sone"].asText(), equalTo("soneId")) + assertThatJsonIsSuccessful() + assertThat(json["reply"]?.asText(), equalTo("reply-id")) + assertThat(json["sone"]?.asText(), equalTo("soneId")) } @Test fun `sender can be chosen from local sones`() { val sone = mock().apply { whenever(id).thenReturn("local-sone") } - addLocalSone("local-sone", sone) + addLocalSone(sone) val post = mock() - addPost("post-id", post) + addPost(post, "post-id") val reply = mock().apply { whenever(id).thenReturn("reply-id") } whenever(core.createReply(sone, post, "Text")).thenReturn(reply) addRequestParameter("post", "post-id") addRequestParameter("text", "Text") addRequestParameter("sender", "local-sone") - assertThat(json.isSuccess, equalTo(true)) - assertThat(json["reply"].asText(), equalTo("reply-id")) - assertThat(json["sone"].asText(), equalTo("local-sone")) + assertThatJsonIsSuccessful() + assertThat(json["reply"]?.asText(), equalTo("reply-id")) + assertThat(json["sone"]?.asText(), equalTo("local-sone")) + } + + @Test + fun `page can be created by dependency injection`() { + assertThat(baseInjector.getInstance(), notNullValue()) } }