Skip to content
Snippets Groups Projects
Unverified Commit 80b49ccd authored by Juraj Kusnier's avatar Juraj Kusnier Committed by GitHub
Browse files

Update DebugLogger (DEV) (#2906)

* update DebugLogger

* update DebugLogger

* check parent dirs for usable space

* update test
parent 80560075
No related branches found
No related tags found
No related merge requests found
......@@ -20,7 +20,15 @@ class DebugLogStorageCheck @Inject constructor(
private val availableSpace: Long
@SuppressLint("UsableSpace")
get() = targetPath.usableSpace
get() {
var eval: File = targetPath
var parent: File? = eval.parentFile
while (!eval.exists() && parent != null) {
eval = parent
parent = eval.parentFile
}
return eval.usableSpace
}
fun isLowStorage(forceCheck: Boolean = false): Boolean {
val now = timeProvider()
......
......@@ -8,6 +8,7 @@ import io.mockk.Runs
import io.mockk.every
import io.mockk.impl.annotations.MockK
import io.mockk.just
import io.mockk.mockk
import io.mockk.slot
import io.mockk.verify
import org.junit.jupiter.api.AfterEach
......@@ -28,6 +29,8 @@ class DebugLogStorageCheckTest : BaseTest() {
MockKAnnotations.init(this)
every { targetPath.usableSpace } returns 250 * 1000 * 1024L
every { targetPath.parentFile } returns null
every { targetPath.exists() } returns true
every { logWriter.write(any()) } just Runs
}
......@@ -68,7 +71,6 @@ class DebugLogStorageCheckTest : BaseTest() {
every { targetPath.usableSpace } returns 199 * 1000 * 1024L
val instance = createInstance()
instance.isLowStorage() shouldBe true
instance.isLowStorage() shouldBe true
currentTime += 60 * 1000L
instance.isLowStorage() shouldBe true
......@@ -77,6 +79,23 @@ class DebugLogStorageCheckTest : BaseTest() {
verify(exactly = 1) { logWriter.write(any()) }
}
@Test
fun `target path does not exists`() {
val parentPath = mockk<File>()
every { parentPath.exists() } returns true
every { parentPath.parentFile } returns null
every { parentPath.usableSpace } returns 250 * 1000 * 1024L
every { targetPath.exists() } returns false
every { targetPath.parentFile } returns parentPath
every { targetPath.usableSpace } returns 0L
val instance = createInstance()
instance.isLowStorage() shouldBe false
verify { logWriter wasNot Called }
}
@Test
fun `checks happen at most every 5 seconds`() {
val instance = createInstance()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment