Add test for DI constructability of DismissNotificationAjaxPage
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / ajax / DismissNotificationAjaxPageTest.kt
index a10c51c..72e048e 100644 (file)
@@ -1,10 +1,13 @@
 package net.pterodactylus.sone.web.ajax
 
+import net.pterodactylus.sone.test.getInstance
 import net.pterodactylus.sone.test.mock
 import net.pterodactylus.sone.test.whenever
+import net.pterodactylus.sone.web.baseInjector
 import net.pterodactylus.util.notify.Notification
 import org.hamcrest.MatcherAssert.assertThat
 import org.hamcrest.Matchers.equalTo
+import org.hamcrest.Matchers.notNullValue
 import org.junit.Test
 import org.mockito.Mockito.verify
 
@@ -15,8 +18,7 @@ class DismissNotificationAjaxPageTest : JsonPageTest("dismissNotification.ajax",
 
        @Test
        fun `request without notification returns invalid-notification-id`() {
-               assertThat(json.isSuccess, equalTo(false))
-               assertThat(json.error, equalTo("invalid-notification-id"))
+               assertThatJsonFailed("invalid-notification-id")
        }
 
        @Test
@@ -24,8 +26,7 @@ class DismissNotificationAjaxPageTest : JsonPageTest("dismissNotification.ajax",
                val notification = mock<Notification>()
                addNotification(notification, "foo")
                addRequestParameter("notification", "foo")
-               assertThat(json.isSuccess, equalTo(false))
-               assertThat(json.error, equalTo("not-dismissable"))
+               assertThatJsonFailed("not-dismissable")
        }
 
        @Test
@@ -33,8 +34,13 @@ class DismissNotificationAjaxPageTest : JsonPageTest("dismissNotification.ajax",
                val notification = mock<Notification>().apply { whenever(isDismissable).thenReturn(true) }
                addNotification(notification, "foo")
                addRequestParameter("notification", "foo")
-               assertThat(json.isSuccess, equalTo(true))
+               assertThatJsonIsSuccessful()
                verify(notification).dismiss()
        }
 
+       @Test
+       fun `page can be created by dependency injection`() {
+           assertThat(baseInjector.getInstance<DismissNotificationAjaxPage>(), notNullValue())
+       }
+
 }