+ fun `posts are unfiltered if no current Sone is set`() {
+ unsetCurrentSone()
+ val posts = listOf(createPost(id = "post1"), createPost(id = "post2"))
+ whenever(newElements.newPosts()).thenReturn(posts)
+ verifyNoRedirect {
+ assertThat(templateContext["posts"] as Collection<Post>, containsInAnyOrder(isPostWithId("post1"), isPostWithId("post2")))
+ }
+ }
+
+ @Test
+ fun `posts are filtered if a current Sone is set`() {
+ val posts = listOf(createPost(id = "post1"), createPost(id = "post2"))
+ whenever(newElements.newPosts(currentSone)).thenReturn(posts.last().asList())
+ verifyNoRedirect {
+ assertThat(templateContext["posts"] as Collection<Post>, contains(isPostWithId("post2")))
+ }
+ }
+
+ @Test
+ fun `replies are unfiltered if no current Sone is set`() {
+ unsetCurrentSone()
+ val replies = listOf(createPostReply(id = "reply1", post = createPost(id = "post1")), createPostReply(id = "reply2", post = createPost(id = "post2")))
+ whenever(newElements.newReplies()).thenReturn(replies)
+ verifyNoRedirect {
+ assertThat(templateContext["posts"] as Collection<Post>, containsInAnyOrder(isPostWithId("post1"), isPostWithId("post2")))
+ }
+ }
+
+ @Test
+ fun `replies are filtered if a current Sone is set`() {
+ val replies = listOf(createPostReply(id = "reply1", post = createPost(id = "post1")), createPostReply(id = "reply2", post = createPost(id = "post2")))
+ whenever(newElements.newReplies(currentSone)).thenReturn(replies.last().asList())
+ verifyNoRedirect {
+ assertThat(templateContext["posts"] as Collection<Post>, contains(isPostWithId("post2")))
+ }
+ }
+
+ @Test