🚧 Add notification handler to web interface module
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / web / WebInterfaceModuleTest.kt
index 14427ef..2bb31c9 100644 (file)
@@ -14,7 +14,9 @@ import net.pterodactylus.sone.main.*
 import net.pterodactylus.sone.template.*
 import net.pterodactylus.sone.test.*
 import net.pterodactylus.sone.text.*
+import net.pterodactylus.sone.web.notification.*
 import net.pterodactylus.sone.web.page.*
+import net.pterodactylus.util.notify.*
 import net.pterodactylus.util.template.*
 import net.pterodactylus.util.web.*
 import org.hamcrest.MatcherAssert.*
@@ -283,4 +285,23 @@ class WebInterfaceModuleTest {
            assertThat(injector.getInstance<PageToadletFactory>().createPageToadlet(page).path(), startsWith("/Sone/"))
        }
 
+       @Test
+       fun `notification manager is created as singleton`() {
+               val firstNotificationManager = injector.getInstance<NotificationManager>()
+               val secondNotificationManager = injector.getInstance<NotificationManager>()
+               assertThat(firstNotificationManager, sameInstance(secondNotificationManager))
+       }
+
+       @Test
+       fun `notification handler can be created`() {
+               assertThat(injector.getInstance<NotificationHandler>(), notNullValue())
+       }
+
+       @Test
+       fun `notification handler is created as singleton`() {
+               val firstNotificationHandler = injector.getInstance<NotificationHandler>()
+               val secondNotificationHandler = injector.getInstance<NotificationHandler>()
+               assertThat(firstNotificationHandler, sameInstance(secondNotificationHandler))
+       }
+
 }