import freenet.clients.http.*
import freenet.node.*
import freenet.pluginmanager.*
+import net.pterodactylus.sone.freenet.plugin.*
import net.pterodactylus.sone.test.*
import org.hamcrest.MatcherAssert.*
import org.hamcrest.Matchers.*
import org.junit.*
+import org.junit.rules.*
+import org.mockito.*
import org.mockito.Mockito.*
/**
*/
class FreenetModuleTest {
+ @Rule
+ @JvmField
+ val expectedException = ExpectedException.none()!!
+
private val sessionManager = mock<SessionManager>()
private val pluginRespirator = deepMock<PluginRespirator>().apply {
whenever(getSessionManager("Sone")).thenReturn(sessionManager)
}
@Test
- fun `plugin respirator is returned correctly`() {
- assertThat(injector.getInstance(), sameInstance(pluginRespirator))
- }
-
- @Test
- fun `plugin respirator is returned as singleton`() {
- verifySingletonInstance<PluginRespirator>()
+ fun `plugin respirator is not bound`() {
+ expectedException.expect(Exception::class.java)
+ injector.getInstance<PluginRespirator>()
}
@Test
}
@Test
- fun `page maker is returned as singleten`() {
+ fun `page maker is returned as singleton`() {
verifySingletonInstance<PageMaker>()
}
+ @Test
+ fun `plugin respirator facade is returned correctly`() {
+ val pluginRespiratorFacade = injector.getInstance<PluginRespiratorFacade>()
+ pluginRespiratorFacade.getPluginTalker(mock(), "test.plugin", "test-request-1")
+ verify(pluginRespirator).getPluginTalker(any(), ArgumentMatchers.eq("test.plugin"), ArgumentMatchers.eq("test-request-1"))
+ }
+
+ @Test
+ fun `plugin respirator facade is returned as singleton`() {
+ verifySingletonInstance<PluginRespiratorFacade>()
+ }
+
+ @Test
+ fun `plugin connector is returned correctly`() {
+ assertThat(injector.getInstance<PluginConnector>(), notNullValue())
+ }
+
+ @Test
+ fun `plugin connector facade is returned as singleton`() {
+ verifySingletonInstance<PluginConnector>()
+ }
+
}