import net.pterodactylus.sone.core.Core
import net.pterodactylus.sone.data.Post
import net.pterodactylus.sone.data.PostReply
-import net.pterodactylus.sone.freenet.fcp.FcpException
import net.pterodactylus.sone.test.mock
import net.pterodactylus.sone.test.whenever
import org.hamcrest.MatcherAssert.assertThat
}
private fun addValidLocalSoneParameter() {
- parameters.putSingle("Sone", "LocalSoneId")
- whenever(core.getSone("LocalSoneId")).thenReturn(of(localSone))
+ parameters += "Sone" to "LocalSoneId"
+ whenever(core.getSone("LocalSoneId")).thenReturn(localSone)
}
@Test
fun `request without post parameter results in fcp exception`() {
addValidLocalSoneParameter()
- expectedException.expect(FcpException::class.java)
- command.execute(parameters, null, null)
+ executeCommandAndExpectFcpException()
}
@Test
fun `request with invalid post parameter results in fcp exception`() {
addValidLocalSoneParameter()
- parameters.putSingle("Post", "InvalidPostId")
- expectedException.expect(FcpException::class.java)
- command.execute(parameters, null, null)
+ parameters += "Post" to "InvalidPostId"
+ executeCommandAndExpectFcpException()
}
private fun addValidPostParameter() {
- parameters.putSingle("Post", "ValidPostId")
- whenever(core.getPost("ValidPostId")).thenReturn(of(post))
+ parameters += "Post" to "ValidPostId"
+ whenever(core.getPost("ValidPostId")).thenReturn(post)
}
@Test
fun `request without text results in fcp exception`() {
addValidLocalSoneParameter()
addValidPostParameter()
- expectedException.expect(FcpException::class.java)
- command.execute(parameters, null, null)
+ executeCommandAndExpectFcpException()
}
@Test
fun `complete request creates reply`() {
addValidLocalSoneParameter()
addValidPostParameter()
- parameters.putSingle("Text", "Test")
+ parameters += "Text" to "Test"
val postReply = mock<PostReply>().apply { whenever(id).thenReturn("ReplyId") }
whenever(core.createReply(localSone, post, "Test")).thenReturn(postReply)
- val response = command.execute(parameters, null, null)
+ val response = command.execute(parameters)
assertThat(response.replyParameters["Message"], equalTo("ReplyCreated"))
assertThat(response.replyParameters["Reply"], equalTo("ReplyId"))
}