X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fmain%2FFreenetModuleTest.kt;h=84cb5673deac2a39b35d3e5553722dfbd8fff04c;hb=07643fdd510640d6c0b20963e4f4f36e06469fb5;hp=e94e34e939a3e313a64fed48fcdc84d52e651ed0;hpb=bef6f13608606a114101dc937cff3b982d7333e0;p=Sone.git diff --git a/src/test/kotlin/net/pterodactylus/sone/main/FreenetModuleTest.kt b/src/test/kotlin/net/pterodactylus/sone/main/FreenetModuleTest.kt index e94e34e..84cb567 100644 --- a/src/test/kotlin/net/pterodactylus/sone/main/FreenetModuleTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/main/FreenetModuleTest.kt @@ -2,9 +2,12 @@ package net.pterodactylus.sone.main import com.google.inject.* import freenet.client.* +import freenet.client.async.ClientContext +import freenet.client.async.USKManager import freenet.clients.http.* import freenet.node.* import freenet.pluginmanager.* +import net.pterodactylus.sone.freenet.HighLevelSimpleClientCreator import net.pterodactylus.sone.freenet.plugin.* import net.pterodactylus.sone.test.* import org.hamcrest.MatcherAssert.* @@ -24,22 +27,24 @@ class FreenetModuleTest { val expectedException = ExpectedException.none()!! private val sessionManager = mock() + private val uskManager = mock() + private val clientContext = mock() private val pluginRespirator = deepMock().apply { whenever(getSessionManager("Sone")).thenReturn(sessionManager) } - private val node = pluginRespirator.node!! + private val nodeClientCore = mock().also { + setField(it, "uskManager", uskManager) + setField(it, "clientContext", clientContext) + } + private val node = pluginRespirator.node!!.also { + setField(it, "clientCore", nodeClientCore) + } 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) - private inline fun verifySingletonInstance() { - val firstInstance = injector.getInstance() - val secondInstance = injector.getInstance() - assertThat(firstInstance, sameInstance(secondInstance)) - } - @Test fun `plugin respirator is not bound`() { expectedException.expect(Exception::class.java) @@ -53,7 +58,7 @@ class FreenetModuleTest { @Test fun `node is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() } @Test @@ -63,7 +68,7 @@ class FreenetModuleTest { @Test fun `high level simply client is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() } @Test @@ -73,7 +78,7 @@ class FreenetModuleTest { @Test fun `session manager is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() verify(pluginRespirator).getSessionManager("Sone") } @@ -84,7 +89,7 @@ class FreenetModuleTest { @Test fun `toadlet container is returned as singleten`() { - verifySingletonInstance() + injector.verifySingletonInstance() } @Test @@ -94,7 +99,7 @@ class FreenetModuleTest { @Test fun `page maker is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() } @Test @@ -106,7 +111,7 @@ class FreenetModuleTest { @Test fun `plugin respirator facade is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() } @Test @@ -116,7 +121,22 @@ class FreenetModuleTest { @Test fun `plugin connector facade is returned as singleton`() { - verifySingletonInstance() + injector.verifySingletonInstance() + } + + @Test + fun `high level simple client creator is returned correctly`() { + assertThat(injector.getInstance(), notNullValue()); + } + + @Test + fun `client context is returned correctly`() { + assertThat(injector.getInstance(), sameInstance(clientContext)) + } + + @Test + fun `usk manager is returned correctly`() { + assertThat(injector.getInstance(), sameInstance(uskManager)) } }