X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FCreateReplyAjaxPageTest.kt;h=829167ef41e681a296f640be9233a81431590e9e;hb=93a86ab418b9fda1a7c2cde90e0503bd3ca7b1ea;hp=9d9008bb7b2cc9dbc6d0f75cfccc03d82e850166;hpb=ec7a80c007d6d759823d6d922e6c680c04d334cd;p=Sone.git 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 9d9008b..829167e 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/ajax/CreateReplyAjaxPageTest.kt @@ -12,69 +12,53 @@ import org.junit.Test /** * Unit test for [CreateReplyAjaxPage]. */ -class CreateReplyAjaxPageTest : JsonPageTest(::CreateReplyAjaxPage) { - - @Test - fun `page returns correct path`() { - assertThat(page.path, equalTo("createReply.ajax")) - } - - @Test - fun `page needs form password`() { - assertThat(page.needsFormPassword(), equalTo(true)) - } - - @Test - fun `page requires login`() { - assertThat(page.requiresLogin(), equalTo(true)) - } +class CreateReplyAjaxPageTest : JsonPageTest("createReply.ajax", pageSupplier = ::CreateReplyAjaxPage) { @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")) } }