Use new redirect verification
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / DeleteSonePageTest.kt
1 package net.pterodactylus.sone.web
2
3 import net.pterodactylus.util.web.Method.GET
4 import net.pterodactylus.util.web.Method.POST
5 import org.junit.Test
6 import org.mockito.Mockito.verify
7
8 /**
9  * Unit test for [DeleteSonePage].
10  */
11 class DeleteSonePageTest : WebPageTest() {
12
13         private val page = DeleteSonePage(template, webInterface)
14
15         override fun getPage() = page
16
17         @Test
18         fun `get request does not redirect`() {
19                 request("", GET)
20                 page.handleRequest(freenetRequest, templateContext)
21         }
22
23         @Test
24         fun `post request without delete confirmation redirects to index`() {
25                 request("", POST)
26                 verifyRedirect("index.html")
27         }
28
29         @Test
30         fun `post request with delete confirmation deletes sone and redirects to index`() {
31                 request("", POST)
32                 addHttpRequestParameter("deleteSone", "true")
33                 verifyRedirect("index.html") {
34                         verify(core).deleteSone(currentSone)
35                 }
36         }
37
38 }