From d9b601b229bbb9c06f17f60f6fac47a928c4a71a Mon Sep 17 00:00:00 2001 From: Sean Mac Gillicuddy Date: Thu, 19 Sep 2019 16:52:29 +0100 Subject: [PATCH] #1496 rely on older space checking api --- .../org/kiwix/kiwixmobile/KiwixBuildConfig.kt | 7 ------ .../kiwixmobile/settings/StorageCalculator.kt | 17 +++----------- .../settings/StorageCalculatorTest.kt | 22 +------------------ 3 files changed, 4 insertions(+), 42 deletions(-) delete mode 100644 app/src/main/java/org/kiwix/kiwixmobile/KiwixBuildConfig.kt diff --git a/app/src/main/java/org/kiwix/kiwixmobile/KiwixBuildConfig.kt b/app/src/main/java/org/kiwix/kiwixmobile/KiwixBuildConfig.kt deleted file mode 100644 index 6371781c2..000000000 --- a/app/src/main/java/org/kiwix/kiwixmobile/KiwixBuildConfig.kt +++ /dev/null @@ -1,7 +0,0 @@ -package org.kiwix.kiwixmobile - -import android.os.Build - -object KiwixBuildConfig { - val SDK_INT = Build.VERSION.SDK_INT -} diff --git a/app/src/main/java/org/kiwix/kiwixmobile/settings/StorageCalculator.kt b/app/src/main/java/org/kiwix/kiwixmobile/settings/StorageCalculator.kt index 3c5952af5..3d136e8b7 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/settings/StorageCalculator.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/settings/StorageCalculator.kt @@ -1,10 +1,6 @@ package org.kiwix.kiwixmobile.settings -import android.annotation.SuppressLint -import android.os.Build.VERSION_CODES -import android.os.storage.StorageManager import eu.mhutti1.utils.storage.Bytes -import org.kiwix.kiwixmobile.KiwixBuildConfig import java.io.File import javax.inject.Inject @@ -25,7 +21,7 @@ import javax.inject.Inject * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -class StorageCalculator @Inject constructor(private val storageManager: StorageManager) { +class StorageCalculator @Inject constructor() { fun calculateAvailableSpace(file: File): String = Bytes(availableBytes(file)).humanReadable @@ -33,16 +29,9 @@ class StorageCalculator @Inject constructor(private val storageManager: StorageM fun calculateTotalSpace(file: File): String = Bytes(totalBytes(file)).humanReadable - @SuppressLint("NewApi") fun availableBytes(file: File) = - if (file.exists()) { - if (KiwixBuildConfig.SDK_INT >= VERSION_CODES.O) - storageManager.getAllocatableBytes(storageManager.getUuidForPath(file)) - else - file.freeSpace - } else { - 0L - } + if (file.exists()) file.freeSpace + else 0L private fun totalBytes(file: File) = if (file.exists()) file.totalSpace else 0L } diff --git a/app/src/test/java/org/kiwix/kiwixmobile/settings/StorageCalculatorTest.kt b/app/src/test/java/org/kiwix/kiwixmobile/settings/StorageCalculatorTest.kt index 0c86241a8..f70ae1957 100644 --- a/app/src/test/java/org/kiwix/kiwixmobile/settings/StorageCalculatorTest.kt +++ b/app/src/test/java/org/kiwix/kiwixmobile/settings/StorageCalculatorTest.kt @@ -18,29 +18,19 @@ package org.kiwix.kiwixmobile.settings * along with this program. If not, see . */ -import android.os.storage.StorageManager import io.mockk.every import io.mockk.mockk -import io.mockk.mockkObject import org.assertj.core.api.Assertions.assertThat import org.junit.jupiter.api.Test -import org.kiwix.kiwixmobile.KiwixBuildConfig import java.io.File -import java.util.UUID internal class StorageCalculatorTest { - private val storageManager: StorageManager = mockk() - private val storageCalculator = StorageCalculator(storageManager) + private val storageCalculator = StorageCalculator() private val file: File = mockk() - init { - mockkObject(KiwixBuildConfig) - } - @Test fun `calculate available space with existing file`() { - every { KiwixBuildConfig.SDK_INT } returns 25 every { file.freeSpace } returns 1 every { file.exists() } returns true assertThat(storageCalculator.calculateAvailableSpace(file)).isEqualTo("1 Bytes") @@ -59,16 +49,6 @@ internal class StorageCalculatorTest { assertThat(storageCalculator.calculateTotalSpace(file)).isEqualTo("0 Bytes") } - @Test - fun `available bytes of existing file API 26`() { - val uuid: UUID = mockk() - every { KiwixBuildConfig.SDK_INT } returns 26 - every { storageManager.getUuidForPath(file) } returns uuid - every { storageManager.getAllocatableBytes(uuid) } returns 1 - every { file.exists() } returns true - assertThat(storageCalculator.availableBytes(file)).isEqualTo(1L) - } - @Test fun `available bytes of non existing file`() { every { file.exists() } returns false