package net.pterodactylus.sone.fcp
-import com.google.common.base.Optional.of
-import net.pterodactylus.sone.core.Core
-import net.pterodactylus.sone.data.Post
-import net.pterodactylus.sone.freenet.fcp.FcpException
-import net.pterodactylus.sone.test.mock
-import net.pterodactylus.sone.test.whenever
-import org.hamcrest.MatcherAssert.assertThat
-import org.hamcrest.Matchers.equalTo
-import org.junit.Test
-import org.mockito.Mockito
-import org.mockito.Mockito.verify
+import net.pterodactylus.sone.core.*
+import net.pterodactylus.sone.data.*
+import net.pterodactylus.sone.test.*
+import org.hamcrest.MatcherAssert.*
+import org.hamcrest.Matchers.*
+import org.junit.*
+import org.mockito.Mockito.*
/**
* Unit test for [DeletePostCommand].
@Test
fun `command requires write access`() {
- assertThat(command.requiresWriteAccess(), equalTo(true))
+ assertThat(command.requiresWriteAccess, equalTo(true))
}
@Test
@Test
fun `request with invalid post parameter results in fcp exception`() {
- parameters.putSingle("Post", "InvalidPostId")
- expectedException.expect(FcpException::class.java)
- command.execute(parameters, null, null)
+ parameters += "Post" to "InvalidPostId"
+ executeCommandAndExpectFcpException()
}
@Test
fun `request with post from remote sone returns error response`() {
- parameters.putSingle("Post", "RemotePostId")
- whenever(core.getPost("RemotePostId")).thenReturn(of(postFromRemoteSone))
- val response = command.execute(parameters, null, null)
+ parameters += "Post" to "RemotePostId"
+ whenever(core.getPost("RemotePostId")).thenReturn(postFromRemoteSone)
+ val response = command.execute(parameters)
assertThat(response.replyParameters["Message"], equalTo("Error"))
assertThat(response.replyParameters["ErrorCode"], equalTo("401"))
}
@Test
fun `request with post from local sone deletes posts`() {
- parameters.putSingle("Post", "LocalPostId")
- whenever(core.getPost("LocalPostId")).thenReturn(of(postFromLocalSone))
- val response = command.execute(parameters, null, null)
+ parameters += "Post" to "LocalPostId"
+ whenever(core.getPost("LocalPostId")).thenReturn(postFromLocalSone)
+ val response = command.execute(parameters)
assertThat(response.replyParameters["Message"], equalTo("PostDeleted"))
verify(core).deletePost(postFromLocalSone)
}