🔀 Merge next
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / pages / RescuePageTest.kt
index 85e1f6b..d11352f 100644 (file)
@@ -54,10 +54,33 @@ class RescuePageTest : WebPageTest(::RescuePage) {
        }
 
        @Test
-       fun `post request with fetch starts next fetch`() {
+       fun `post request with fetch and invalid edition starts next fetch`() {
                setMethod(POST)
                addHttpRequestPart("fetch", "true")
                verifyRedirect("rescue.html") {
+                       verify(soneRescuer, never()).setEdition(anyLong())
+                       verify(soneRescuer).startNextFetch()
+               }
+       }
+
+       @Test
+       fun `post request with fetch and valid edition sets edition and starts next fetch`() {
+               setMethod(POST)
+               addHttpRequestPart("fetch", "true")
+               addHttpRequestPart("edition", "123")
+               verifyRedirect("rescue.html") {
+                       verify(soneRescuer).setEdition(123L)
+                       verify(soneRescuer).startNextFetch()
+               }
+       }
+
+       @Test
+       fun `post request with negative edition will not set edition`() {
+               setMethod(POST)
+               addHttpRequestPart("fetch", "true")
+               addHttpRequestPart("edition", "-123")
+               verifyRedirect("rescue.html") {
+                       verify(soneRescuer, never()).setEdition(anyLong())
                        verify(soneRescuer).startNextFetch()
                }
        }