X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ffcp%2FGetPostCommandTest.java;h=a6a6feac7cf211df1b645a24fa75d44b9d737c7b;hp=6cd74a1400a09a3ea04eaaeafb117ac6d657b825;hb=2d37242d19f2e726cd402b99f935a0eba282f630;hpb=d1e15185426a5a66a1d67fd0ba24fcacf17df556 diff --git a/src/test/java/net/pterodactylus/sone/fcp/GetPostCommandTest.java b/src/test/java/net/pterodactylus/sone/fcp/GetPostCommandTest.java index 6cd74a1..a6a6fea 100644 --- a/src/test/java/net/pterodactylus/sone/fcp/GetPostCommandTest.java +++ b/src/test/java/net/pterodactylus/sone/fcp/GetPostCommandTest.java @@ -17,13 +17,10 @@ package net.pterodactylus.sone.fcp; -import static com.google.common.base.Optional.of; -import static java.lang.String.format; import static java.util.Arrays.asList; -import static net.pterodactylus.sone.fcp.Verifiers.verifyAnswer; +import static net.pterodactylus.sone.Verifiers.verifyAnswer; +import static net.pterodactylus.sone.Verifiers.verifyPostWithReplies; import static net.pterodactylus.sone.freenet.fcp.Command.AccessType.DIRECT; -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.Matchers.is; import static org.mockito.Mockito.when; import net.pterodactylus.sone.data.Mocks; @@ -37,7 +34,6 @@ import net.pterodactylus.sone.freenet.fcp.FcpException; import freenet.node.FSParseException; import freenet.support.SimpleFieldSet; -import com.google.common.base.Optional; import org.junit.Test; /** @@ -53,34 +49,34 @@ public class GetPostCommandTest { @Test public void verifyThatGettingAPostWithoutRepliesAndRecipientWorks() throws FcpException, FSParseException { Sone sone = mocks.mockSone("SoneId").create(); - Post post = preparePostWithoutRecipient(sone); + Post post = mocks.mockPost(sone, "PostId").withTime(1000L).withText("Text of the post.").create(); SimpleFieldSet getPostFieldSet = new SimpleFieldSetBuilder() .put("Message", "GetPost") .put("Post", "PostId") .get(); Response response = getPostCommand.execute(getPostFieldSet, null, DIRECT); verifyAnswer(response, "Post"); - verifyPost(post, response); + verifyPostWithReplies(response.getReplyParameters(), "Post.", post); } @Test public void verifyThatGettingAPostWithoutRepliesAndWithRecipientWorks() throws FcpException, FSParseException { Sone sone = mocks.mockSone("SoneId").create(); Sone otherSone = mocks.mockSone("OtherSoneId").create(); - Post post = preparePostWithRecipient(sone, otherSone); + Post post = mocks.mockPost(sone, "PostId").withRecipient(otherSone.getId()).withTime(1000L).withText("Text of the post.").create(); SimpleFieldSet getPostFieldSet = new SimpleFieldSetBuilder() .put("Message", "GetPost") .put("Post", "PostId") .get(); Response response = getPostCommand.execute(getPostFieldSet, null, DIRECT); verifyAnswer(response, "Post"); - verifyPost(post, response); + verifyPostWithReplies(response.getReplyParameters(), "Post.", post); } @Test public void verifyThatGettingAPostWithRepliesWorks() throws FcpException, FSParseException { Sone sone = mocks.mockSone("SoneId").create(); - Post post = preparePostWithoutRecipient(sone); + Post post = mocks.mockPost(sone, "PostId").withTime(1000L).withText("Text of the post.").create(); PostReply postReply1 = mocks.mockPostReply(sone, "Reply1").create(); when(postReply1.getText()).thenReturn("Reply 1."); PostReply postReply2 = mocks.mockPostReply(sone, "Reply2").create(); @@ -93,10 +89,7 @@ public class GetPostCommandTest { .get(); Response response = getPostCommand.execute(getPostFieldSet, null, DIRECT); verifyAnswer(response, "Post"); - verifyPost(post, response); - assertThat(response.getReplyParameters().getInt("Post.Replies.Count"), is(post.getReplies().size())); - verifyReply(response.getReplyParameters(), "Post.Replies.0.", postReply1); - verifyReply(response.getReplyParameters(), "Post.Replies.1.", postReply2); + verifyPostWithReplies(response.getReplyParameters(), "Post.", post); } @Test(expected = FcpException.class) @@ -116,41 +109,4 @@ public class GetPostCommandTest { getPostCommand.execute(getPostFieldSet, null, DIRECT); } - private Post preparePostWithoutRecipient(Sone sone) { - Post post = preparePost(sone); - when(post.getRecipientId()).thenReturn(Optional.absent()); - when(post.getRecipient()).thenReturn(Optional.absent()); - return post; - } - - private Post preparePostWithRecipient(Sone sone, Sone otherSone) { - Post post = preparePost(sone); - String otherSoneId = otherSone.getId(); - when(post.getRecipientId()).thenReturn(of(otherSoneId)); - when(post.getRecipient()).thenReturn(of(otherSone)); - return post; - } - - private Post preparePost(Sone sone) { - Post post = mocks.mockPost(sone, "PostId").create(); - when(post.getText()).thenReturn("Text of the post."); - when(post.getTime()).thenReturn(1000L); - return post; - } - - private void verifyReply(SimpleFieldSet replyParameters, String prefix, PostReply postReply) throws FSParseException { - assertThat(replyParameters.get(format("%sID", prefix)), is(postReply.getId())); - assertThat(replyParameters.get(format("%sSone", prefix)), is(postReply.getSone().getId())); - assertThat(replyParameters.getLong(format("%sTime", prefix)), is(postReply.getTime())); - assertThat(replyParameters.get(format("%sText", prefix)), is(postReply.getText())); - } - - private void verifyPost(Post post, Response response) throws FSParseException { - assertThat(response.getReplyParameters().get("Post.ID"), is(post.getId())); - assertThat(response.getReplyParameters().get("Post.Sone"), is(post.getSone().getId())); - assertThat(response.getReplyParameters().get("Post.Recipient"), is(post.getRecipientId().orNull())); - assertThat(response.getReplyParameters().getLong("Post.Time"), is(post.getTime())); - assertThat(response.getReplyParameters().get("Post.Text"), is(post.getText())); - } - }