+ assertThat(templateContext["repliedPostPagination"] as Pagination<Post>, isOnPage(0).hasPages(2))
+ }
+ }
+
+ @Test
+ @Suppress("UNCHECKED_CAST")
+ fun `second page of replies is shown correctly`() {
+ val reply1 = createReply("First Reply", 1500, foreignPost1)
+ val reply2 = createReply("Second Reply", 2500, foreignPost2)
+ val reply3 = createReply("Third Reply", 1750, post1)
+ val reply4 = createReply("Fourth Reply", 2250, post2)
+ val reply5 = createReply("Fifth Reply", 1600, post1)
+ val reply6 = createReply("Sixth Reply", 2100, directed1)
+ val reply7 = createReply("Seventh Reply", 2200, null)
+ val reply8 = createReply("Eigth Reply", 2300, foreignPost1)
+ val reply9 = createReply("Ninth Reply", 2050, foreignPost3)
+ whenever(currentSone.replies).thenReturn(setOf(reply1, reply2, reply3, reply4, reply5, reply6, reply7, reply8, reply9))
+ whenever(core.getReplies("post1")).thenReturn(listOf(reply3, reply5))
+ whenever(core.getReplies("post2")).thenReturn(listOf(reply4))
+ whenever(core.getReplies("foreign-post1")).thenReturn(listOf(reply8, reply1))
+ whenever(core.getReplies("foreign-post2")).thenReturn(listOf(reply2))
+ whenever(core.getReplies("post3")).thenReturn(listOf(reply6))
+ whenever(core.getReplies("foreign-post3")).thenReturn(listOf(reply9))
+ addSone("sone-id", currentSone)
+ addHttpRequestParameter("sone", "sone-id")
+ addHttpRequestParameter("repliedPostPage", "1")
+ verifyNoRedirect {
+ assertThat(templateContext["repliedPosts"] as Iterable<Post>, contains(foreignPost3))
+ assertThat(templateContext["repliedPostPagination"] as Pagination<Post>, isOnPage(1).hasPages(2))