Clean up imports
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / ajax / GetTimesAjaxPageTest.kt
index 585316d..d6b5aa0 100644 (file)
@@ -14,11 +14,11 @@ import net.pterodactylus.sone.utils.jsonObject
 import org.hamcrest.MatcherAssert.assertThat
 import org.hamcrest.Matchers.containsInAnyOrder
 import org.hamcrest.Matchers.emptyIterable
-import org.hamcrest.Matchers.equalTo
 import org.junit.Before
 import org.junit.Test
 import org.mockito.ArgumentMatchers.any
 import org.mockito.ArgumentMatchers.anyLong
+import java.util.TimeZone.getTimeZone
 
 /**
  * Unit test for [GetTimesAjaxPage].
@@ -27,9 +27,9 @@ class GetTimesAjaxPageTest : JsonPageTest("getTimes.ajax", needsFormPassword = f
 
        private val timeTextConverter = mock<TimeTextConverter>()
        private val l10nFilter = mock<L10nFilter>()
-       override val page: JsonPage by lazy { GetTimesAjaxPage(webInterface, timeTextConverter, l10nFilter) }
-       private val posts = listOf(createPost(1), createPost(2))
-       private val replies = listOf(createReply(1), createReply(2))
+       override val page: JsonPage by lazy { GetTimesAjaxPage(webInterface, timeTextConverter, l10nFilter, getTimeZone("UTC")) }
+       private val testPosts = listOf(createPost(1), createPost(2))
+       private val testReplies = listOf(createReply(1), createReply(2))
 
        private fun createPost(index: Int): Post {
                return mock<Post>().apply {
@@ -53,56 +53,56 @@ 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))
-               assertThat(json["postTimes"].toList(), emptyIterable())
-               assertThat(json["replyTimes"].toList(), emptyIterable())
+               assertThatJsonIsSuccessful()
+               assertThat(json["postTimes"]?.toList(), emptyIterable())
+               assertThat(json["replyTimes"]?.toList(), emptyIterable())
        }
 
        @Test
        fun `request with single post parameter responds with post times and empty reply times`() {
-               addPost(posts[0])
+               addPost(testPosts[0])
                addRequestParameter("posts", "post1")
-               assertThat(json.isSuccess, equalTo(true))
-               assertThat(json["postTimes"].fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
-                               "post1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 01:00:01")
+               assertThatJsonIsSuccessful()
+               assertThat(json["postTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
+                               "post1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01")
                ))
-               assertThat(json["replyTimes"].toList(), emptyIterable())
+               assertThat(json["replyTimes"]?.toList(), emptyIterable())
        }
 
        @Test
        fun `request with single reply parameter responds with reply times and empty post times`() {
-               addReply(replies[0])
+               addReply(testReplies[0])
                addRequestParameter("replies", "reply1")
-               assertThat(json.isSuccess, equalTo(true))
-               assertThat(json["postTimes"].toList(), emptyIterable())
-               assertThat(json["replyTimes"].fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
-                               "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 01:00:01")
+               assertThatJsonIsSuccessful()
+               assertThat(json["postTimes"]?.toList(), emptyIterable())
+               assertThat(json["replyTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
+                               "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01")
                ))
        }
 
        @Test
        fun `request with multiple post parameter responds with post times and empty reply times`() {
-               addPost(posts[0])
-               addPost(posts[1])
+               addPost(testPosts[0])
+               addPost(testPosts[1])
                addRequestParameter("posts", "post1,post2,post3")
-               assertThat(json.isSuccess, equalTo(true))
-               assertThat(json["postTimes"].fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
-                               "post1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 01:00:01"),
-                               "post2" to jsonObject("timeText" to "2000", "refreshTime" to 4L, "tooltip" to "Jan 1, 1970, 01:00:02")
+               assertThatJsonIsSuccessful()
+               assertThat(json["postTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
+                               "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")
                ))
-               assertThat(json["replyTimes"].toList(), emptyIterable())
+               assertThat(json["replyTimes"]?.toList(), emptyIterable())
        }
 
        @Test
        fun `request with multiple reply parameters responds with reply times and empty post times`() {
-               addReply(replies[0])
-               addReply(replies[1])
+               addReply(testReplies[0])
+               addReply(testReplies[1])
                addRequestParameter("replies", "reply1,reply2,reply3")
-               assertThat(json.isSuccess, equalTo(true))
-               assertThat(json["postTimes"].toList(), emptyIterable())
-               assertThat(json["replyTimes"].fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
-                               "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 01:00:01"),
-                               "reply2" to jsonObject("timeText" to "2000", "refreshTime" to 4L, "tooltip" to "Jan 1, 1970, 01:00:02")
+               assertThatJsonIsSuccessful()
+               assertThat(json["postTimes"]?.toList(), emptyIterable())
+               assertThat(json["replyTimes"]!!.fields().asSequence().map { it.key to it.value }.toList(), containsInAnyOrder<Pair<String, JsonNode>>(
+                               "reply1" to jsonObject("timeText" to "1000", "refreshTime" to 2L, "tooltip" to "Jan 1, 1970, 00:00:01"),
+                               "reply2" to jsonObject("timeText" to "2000", "refreshTime" to 4L, "tooltip" to "Jan 1, 1970, 00:00:02")
                ))
        }