➕ Make Fred’s PageMaker available to Guice
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Fri, 17 May 2019 08:48:33 +0000 (10:48 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Fri, 17 May 2019 08:48:33 +0000 (10:48 +0200)
src/main/kotlin/net/pterodactylus/sone/main/FreenetModule.kt
src/test/kotlin/net/pterodactylus/sone/main/FreenetModuleTest.kt

index d8349ba..89d164d 100644 (file)
@@ -20,6 +20,7 @@ class FreenetModule(private val pluginRespirator: PluginRespirator): Module {
                pluginRespirator.node!!.let { node -> bind(Node::class.java).toProvider(Provider<Node> { node }) }
                bind(HighLevelSimpleClient::class.java).toProvider(Provider<HighLevelSimpleClient> { pluginRespirator.hlSimpleClient!! })
                bind(ToadletContainer::class.java).toProvider(Provider<ToadletContainer> { pluginRespirator.toadletContainer })
+               bind(PageMaker::class.java).toProvider(Provider<PageMaker> { pluginRespirator.pageMaker })
        }
 
        @Provides @Singleton
index ed2037d..d51da92 100644 (file)
@@ -26,6 +26,7 @@ class FreenetModuleTest {
        private val node = pluginRespirator.node!!
        private val highLevelSimpleClient = pluginRespirator.hlSimpleClient!!
        private val toadletContainer: ToadletContainer = pluginRespirator.toadletContainer
+       private val pageMaker: PageMaker = pluginRespirator.pageMaker
        private val module = FreenetModule(pluginRespirator)
        private val injector = Guice.createInjector(module)
 
@@ -86,4 +87,14 @@ class FreenetModuleTest {
                verifySingletonInstance<ToadletContainer>()
        }
 
+       @Test
+       fun `page maker is returned correctly`() {
+               assertThat(injector.getInstance(), sameInstance(pageMaker))
+       }
+
+       @Test
+       fun `page maker is returned as singleten`() {
+               verifySingletonInstance<PageMaker>()
+       }
+
 }