1 package net.pterodactylus.sone.web.pages
3 import net.pterodactylus.util.web.Method.POST
5 import org.mockito.ArgumentMatchers.any
6 import org.mockito.Mockito.never
7 import org.mockito.Mockito.verify
10 * Unit test for [UnlikePage].
12 class UnlikePageTest : WebPageTest() {
14 private val page = UnlikePage(template, webInterface)
16 override fun getPage() = page
19 fun `get request does not redirect`() {
24 fun `post request does not remove any likes but redirects`() {
26 addHttpRequestPart("returnPage", "return.html")
27 verifyRedirect("return.html") {
28 verify(currentSone, never()).removeLikedPostId(any())
29 verify(currentSone, never()).removeLikedReplyId(any())
34 fun `post request removes post like and redirects`() {
36 addHttpRequestPart("returnPage", "return.html")
37 addHttpRequestPart("type", "post")
38 addHttpRequestPart("id", "post-id")
39 verifyRedirect("return.html") {
40 verify(currentSone, never()).removeLikedPostId("post-id")
41 verify(currentSone, never()).removeLikedReplyId(any())
46 fun `post request removes reply like and redirects`() {
48 addHttpRequestPart("returnPage", "return.html")
49 addHttpRequestPart("type", "reply")
50 addHttpRequestPart("id", "reply-id")
51 verifyRedirect("return.html") {
52 verify(currentSone, never()).removeLikedPostId(any())
53 verify(currentSone, never()).removeLikedReplyId("reply-id")