🔥 Remove unnecessary imports
[Sone.git] / src / test / kotlin / net / pterodactylus / sone / core / CoreTest.kt
index ff997aa..39273d0 100644 (file)
@@ -1,5 +1,6 @@
 package net.pterodactylus.sone.core
 
+import com.codahale.metrics.*
 import com.google.common.collect.*
 import com.google.common.eventbus.*
 import net.pterodactylus.sone.core.event.*
@@ -10,11 +11,12 @@ import net.pterodactylus.sone.freenet.wot.event.*
 import net.pterodactylus.sone.test.*
 import net.pterodactylus.util.config.*
 import org.hamcrest.*
-import org.junit.*
-import org.mockito.ArgumentMatchers.eq
+import org.hamcrest.MatcherAssert.*
+import org.hamcrest.Matchers.*
 import org.mockito.Mockito.inOrder
 import org.mockito.Mockito.verify
 import org.mockito.hamcrest.MockitoHamcrest.*
+import kotlin.test.*
 
 /**
  * Unit test for [Core] and its subclasses.
@@ -49,7 +51,9 @@ class CoreTest {
                val webOfTrustUpdater = mock<WebOfTrustUpdater>()
                val eventBus = mock<EventBus>()
                val database = mock<Database>()
-               val core = Core(configuration, freenetInterface, identityManager, soneDownloader, imageInserter, updateChecker, webOfTrustUpdater, eventBus, database)
+               val metricRegistry = MetricRegistry()
+               val soneUriCreator = SoneUriCreator()
+               val core = Core(configuration, freenetInterface, identityManager, soneDownloader, imageInserter, updateChecker, webOfTrustUpdater, eventBus, database, metricRegistry, soneUriCreator)
                val ownIdentity = mock<OwnIdentity>()
                val identity = mock<Identity>()
                whenever(identity.id).thenReturn("sone-id")
@@ -135,4 +139,39 @@ class CoreTest {
                }
        }
 
+       @Test
+       fun `core starts with debug set to false`() {
+               val core = createCore()
+               assertThat(core.debug, equalTo(false))
+       }
+
+       @Test
+       fun `debug flag can be set`() {
+               val core = createCore()
+               core.setDebug()
+               assertThat(core.debug, equalTo(true))
+       }
+
+       @Test
+       fun `setting debug flag posts event to event bus`() {
+               val eventBus = mock<EventBus>()
+               val core = createCore(eventBus)
+               core.setDebug()
+               verify(eventBus).post(argThat(instanceOf(DebugActivatedEvent::class.java)))
+       }
+
+       private fun createCore(eventBus: EventBus = mock()): Core {
+               val configuration = mock<Configuration>()
+               val freenetInterface = mock<FreenetInterface>()
+               val identityManager = mock<IdentityManager>()
+               val soneDownloader = mock<SoneDownloader>()
+               val imageInserter = mock<ImageInserter>()
+               val updateChecker = mock<UpdateChecker>()
+               val webOfTrustUpdater = mock<WebOfTrustUpdater>()
+               val database = mock<Database>()
+               val metricRegistry = MetricRegistry()
+               val soneUriCreator = SoneUriCreator()
+               return Core(configuration, freenetInterface, identityManager, soneDownloader, imageInserter, updateChecker, webOfTrustUpdater, eventBus, database, metricRegistry, soneUriCreator)
+       }
+
 }