Remove obsolete loading animation
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / UnlikePageTest.kt
1 package net.pterodactylus.sone.web
2
3 import net.pterodactylus.util.web.Method
4 import net.pterodactylus.util.web.Method.POST
5 import org.junit.Test
6 import org.mockito.ArgumentMatchers
7 import org.mockito.ArgumentMatchers.any
8 import org.mockito.Mockito
9 import org.mockito.Mockito.never
10 import org.mockito.Mockito.verify
11
12 /**
13  * Unit test for [UnlikePage].
14  */
15 class UnlikePageTest : WebPageTest() {
16
17         private val page = UnlikePage(template, webInterface)
18
19         override fun getPage() = page
20
21         @Test
22         fun `get request does not redirect`() {
23                 page.handleRequest(freenetRequest, templateContext)
24         }
25
26         @Test
27         fun `post request does not remove any likes but redirects`() {
28             request("", POST)
29                 addHttpRequestParameter("returnPage", "return.html")
30                 verifyRedirect("return.html") {
31                         verify(currentSone, never()).removeLikedPostId(any())
32                         verify(currentSone, never()).removeLikedReplyId(any())
33                 }
34         }
35
36         @Test
37         fun `post request removes post like and redirects`() {
38             request("", POST)
39                 addHttpRequestParameter("returnPage", "return.html")
40                 addHttpRequestParameter("type", "post")
41                 addHttpRequestParameter("id", "post-id")
42                 verifyRedirect("return.html") {
43                         verify(currentSone, never()).removeLikedPostId("post-id")
44                         verify(currentSone, never()).removeLikedReplyId(any())
45                 }
46         }
47
48         @Test
49         fun `post request removes reply like and redirects`() {
50             request("", POST)
51                 addHttpRequestParameter("returnPage", "return.html")
52                 addHttpRequestParameter("type", "reply")
53                 addHttpRequestParameter("id", "reply-id")
54                 verifyRedirect("return.html") {
55                         verify(currentSone, never()).removeLikedPostId(any())
56                         verify(currentSone, never()).removeLikedReplyId("reply-id")
57                 }
58         }
59
60 }