X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Ftest%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fcore%2FFreenetInterfaceTest.kt;h=ffd5c60b8cca355967ab8cb1e312908c4accc784;hb=07643fdd510640d6c0b20963e4f4f36e06469fb5;hp=6647434d924488b893e759ef0b0359a306f33c14;hpb=22458ba912ec789646f387a7b25d12b5f45c907d;p=Sone.git diff --git a/src/test/kotlin/net/pterodactylus/sone/core/FreenetInterfaceTest.kt b/src/test/kotlin/net/pterodactylus/sone/core/FreenetInterfaceTest.kt index 6647434..ffd5c60 100644 --- a/src/test/kotlin/net/pterodactylus/sone/core/FreenetInterfaceTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/core/FreenetInterfaceTest.kt @@ -10,16 +10,17 @@ import freenet.keys.* import freenet.keys.InsertableClientSSK.* import freenet.node.* import freenet.node.RequestStarter.* -import freenet.support.Base64 import freenet.support.api.* import freenet.support.io.* import net.pterodactylus.sone.core.FreenetInterface.* import net.pterodactylus.sone.core.event.* import net.pterodactylus.sone.data.* import net.pterodactylus.sone.data.impl.* +import net.pterodactylus.sone.freenet.wot.DefaultIdentity import net.pterodactylus.sone.test.* import net.pterodactylus.sone.test.Matchers.* import net.pterodactylus.sone.test.TestUtil.* +import net.pterodactylus.sone.utils.* import org.hamcrest.MatcherAssert.* import org.hamcrest.Matchers.equalTo import org.hamcrest.Matchers.notNullValue @@ -43,16 +44,20 @@ class FreenetInterfaceTest { @JvmField val expectionException: ExpectedException = ExpectedException.none() + @Rule + @JvmField + val silencedLogging = silencedLogging() + @Suppress("UnstableApiUsage") private val eventBus = mock() private val node = mock() - private val nodeClientCore = mock() + private val clientContext = mock() private val highLevelSimpleClient: HighLevelSimpleClient = mock(HighLevelSimpleClient::class.java, withSettings().extraInterfaces(RequestClient::class.java)) private val randomSource = DummyRandomSource() private val uskManager = mock() private val sone = mock() private val callbackCaptor: ArgumentCaptor = forClass(USKCallback::class.java) - private val image = mock() + private val image: Image = ImageImpl() private val insertToken: InsertToken private val bucket = mock() private val clientGetCallback: ArgumentCaptor = forClass(ClientGetCallback::class.java) @@ -60,15 +65,12 @@ class FreenetInterfaceTest { private val fetchResult = mock() private val backgroundFetchCallback = mock() private val clientGetter = mock() + private val soneUriCreator = SoneUriCreator() private val freenetInterface: FreenetInterface init { - whenever(nodeClientCore.makeClient(anyShort(), anyBoolean(), anyBoolean())).thenReturn(highLevelSimpleClient) - setField(node, "clientCore", nodeClientCore) setField(node, "random", randomSource) - setField(nodeClientCore, "uskManager", uskManager) - setField(nodeClientCore, "clientContext", mock()) - freenetInterface = FreenetInterface(eventBus, node) + freenetInterface = FreenetInterface(eventBus, node, uskManager, clientContext, soneUriCreator) { _, _, _ -> highLevelSimpleClient } insertToken = freenetInterface.InsertToken(image) insertToken.setBucket(bucket) } @@ -82,8 +84,8 @@ class FreenetInterfaceTest { @Before fun setupSone() { val insertSsk = createRandom(randomSource, "test-0") - whenever(sone.id).thenReturn(Base64.encode(insertSsk.uri.routingKey)) - whenever(sone.requestUri).thenReturn(insertSsk.uri.uskForSSK()) + whenever(sone.id).thenReturn(insertSsk.uri.routingKey.asFreenetBase64) + whenever(sone.identity).thenReturn(DefaultIdentity("id", "name", insertSsk.uri.toString())) } @Before @@ -184,7 +186,6 @@ class FreenetInterfaceTest { @Test fun `sone with wrong request uri will not be subscribed`() { - whenever(sone.requestUri).thenReturn(FreenetURI("KSK@GPLv3.txt")) freenetInterface.registerUsk(FreenetURI("KSK@GPLv3.txt"), null) verify(uskManager, never()).subscribe(any(USK::class.java), any(USKCallback::class.java), anyBoolean(), any(RequestClient::class.java)) } @@ -258,16 +259,15 @@ class FreenetInterfaceTest { } @Test - fun `unregistering aregistered sone unregisters the sone`() { - freenetInterface.registerActiveUsk(sone.requestUri, mock()) + fun `unregistering a registered sone unregisters the sone`() { + freenetInterface.registerActiveUsk(soneUriCreator.getRequestUri(sone), mock()) freenetInterface.unregisterUsk(sone) verify(uskManager).unsubscribe(any(USK::class.java), any(USKCallback::class.java)) } @Test - fun `unregistering asone with awrong request key will not unsubscribe`() { - whenever(sone.requestUri).thenReturn(FreenetURI("KSK@GPLv3.txt")) - freenetInterface.registerUsk(sone.requestUri, null) + fun `unregistering a sone with a wrong request key will not unsubscribe`() { + freenetInterface.registerUsk(FreenetURI("KSK@GPLv3.txt"), null) freenetInterface.unregisterUsk(sone) verify(uskManager, never()).unsubscribe(any(USK::class.java), any(USKCallback::class.java)) }