X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FGetTimesAjaxPageTest.kt;h=62a34d1680b967e0ea0e7e94185d3e1fae91fa11;hp=fa868670b4c874b95e3f1b1f088c1b559dabdc5c;hb=fd852f7aee78ea04fb49920e698500c71321c6d4;hpb=d58ef344b43543fdcfca13c07df87e194f004376 diff --git a/src/test/kotlin/net/pterodactylus/sone/web/ajax/GetTimesAjaxPageTest.kt b/src/test/kotlin/net/pterodactylus/sone/web/ajax/GetTimesAjaxPageTest.kt index fa86867..62a34d1 100644 --- a/src/test/kotlin/net/pterodactylus/sone/web/ajax/GetTimesAjaxPageTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/web/ajax/GetTimesAjaxPageTest.kt @@ -6,19 +6,23 @@ import net.pterodactylus.sone.data.PostReply import net.pterodactylus.sone.freenet.L10nFilter import net.pterodactylus.sone.freenet.L10nText import net.pterodactylus.sone.test.get +import net.pterodactylus.sone.test.getInstance +import net.pterodactylus.sone.test.isProvidedByMock import net.pterodactylus.sone.test.mock import net.pterodactylus.sone.test.whenever import net.pterodactylus.sone.text.TimeText import net.pterodactylus.sone.text.TimeTextConverter import net.pterodactylus.sone.utils.jsonObject +import net.pterodactylus.sone.web.baseInjector import org.hamcrest.MatcherAssert.assertThat import org.hamcrest.Matchers.containsInAnyOrder import org.hamcrest.Matchers.emptyIterable -import org.hamcrest.Matchers.equalTo +import org.hamcrest.Matchers.notNullValue import org.junit.Before import org.junit.Test import org.mockito.ArgumentMatchers.any import org.mockito.ArgumentMatchers.anyLong +import java.util.TimeZone import java.util.TimeZone.getTimeZone /** @@ -54,7 +58,7 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f @Test fun `request without any parameters responds with empty post and reply times`() { - assertThat(json.isSuccess, equalTo(true)) + assertThatJsonIsSuccessful() assertThat(json["postTimes"]?.toList(), emptyIterable()) assertThat(json["replyTimes"]?.toList(), emptyIterable()) } @@ -63,7 +67,7 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f fun `request with single post parameter responds with post times and empty reply times`() { addPost(testPosts[0]) addRequestParameter("posts", "post1") - assertThat(json.isSuccess, equalTo(true)) + assertThatJsonIsSuccessful() assertThat(json["postTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder>( "post1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01") )) @@ -74,7 +78,7 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f fun `request with single reply parameter responds with reply times and empty post times`() { addReply(testReplies[0]) addRequestParameter("replies", "reply1") - assertThat(json.isSuccess, equalTo(true)) + assertThatJsonIsSuccessful() assertThat(json["postTimes"]?.toList(), emptyIterable()) assertThat(json["replyTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder>( "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01") @@ -86,7 +90,7 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f addPost(testPosts[0]) addPost(testPosts[1]) addRequestParameter("posts", "post1,post2,post3") - assertThat(json.isSuccess, equalTo(true)) + assertThatJsonIsSuccessful() assertThat(json["postTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder>( "post1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01"), "post2" to jsonObject("timeText" to "2000", "refreshTime" to 4L, "tooltip" to "Jan 1, 1970, 00:00:02") @@ -99,7 +103,7 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f addReply(testReplies[0]) addReply(testReplies[1]) addRequestParameter("replies", "reply1,reply2,reply3") - assertThat(json.isSuccess, equalTo(true)) + assertThatJsonIsSuccessful() assertThat(json["postTimes"]?.toList(), emptyIterable()) assertThat(json["replyTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder>( "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01"), @@ -107,4 +111,13 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f )) } + @Test + fun `page can be created by dependency injection`() { + assertThat(baseInjector.createChildInjector( + TimeTextConverter::class.isProvidedByMock(), + L10nFilter::class.isProvidedByMock(), + TimeZone::class.isProvidedByMock() + ).getInstance(), notNullValue()) + } + }