Loading core/android/testing/build.gradle.kts +2 −2 Original line number Diff line number Diff line Loading @@ -10,9 +10,9 @@ dependencies { api(libs.junit) api(libs.robolectric) implementation(projects.core.logging.api) implementation(projects.core.preference.api) implementation(projects.legacy.core) implementation(projects.core.preference.impl) api(libs.koin.core) api(libs.mockito.core) Loading core/android/testing/src/main/kotlin/net/thunderbird/core/android/preferences/InMemoryStoragePersister.kt→core/android/testing/src/main/kotlin/net/thunderbird/core/android/preferences/TestStoragePersister.kt +9 −5 Original line number Diff line number Diff line package net.thunderbird.core.android.preferences import com.fsck.k9.preferences.DefaultStorage import net.thunderbird.core.logging.Logger import net.thunderbird.core.preference.storage.InMemoryStorage import net.thunderbird.core.preference.storage.Storage import net.thunderbird.core.preference.storage.StorageEditor import net.thunderbird.core.preference.storage.StoragePersister import net.thunderbird.core.preference.storage.StorageUpdater class InMemoryStoragePersister : StoragePersister { class TestStoragePersister( private val logger: Logger, ) : StoragePersister { private val values = mutableMapOf<String, Any?>() override fun loadValues(): Storage { return DefaultStorage( values.mapValues { (_, value) -> return InMemoryStorage( values = values.mapValues { (_, value) -> value?.toString() ?: "" }, logger, ) } Loading Loading @@ -65,7 +69,7 @@ class InMemoryStoragePersister : StoragePersister { } private fun writeValues(currentStorage: Storage): Storage { return DefaultStorage(currentStorage.getAll() - removals + changes) return InMemoryStorage(currentStorage.getAll() - removals + changes, logger) } } } core/preference/impl/build.gradle.kts +2 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ kotlin { sourceSets { commonMain.dependencies { api(projects.core.preference.api) implementation(projects.core.logging.api) } } } legacy/core/src/main/java/com/fsck/k9/preferences/DefaultStorage.kt→core/preference/impl/src/commonMain/kotlin/net/thunderbird/core/preference/storage/InMemoryStorage.kt +13 −9 Original line number Diff line number Diff line package com.fsck.k9.preferences package net.thunderbird.core.preference.storage import java.util.Collections import net.thunderbird.core.logging.legacy.Log import net.thunderbird.core.preference.storage.Storage import net.thunderbird.core.logging.Logger class DefaultStorage( values: Map<String, String>, class InMemoryStorage( private val values: Map<String, String>, private val logger: Logger, ) : Storage { private val values: Map<String, String> = Collections.unmodifiableMap(values) override fun isEmpty(): Boolean = values.isEmpty() Loading @@ -25,7 +23,10 @@ class DefaultStorage( return try { value.toInt() } catch (e: NumberFormatException) { Log.e(e, "Could not parse int") logger.error( message = { "Could not parse int" }, throwable = e, ) defValue } } Loading @@ -35,7 +36,10 @@ class DefaultStorage( return try { value.toLong() } catch (e: NumberFormatException) { Log.e(e, "Could not parse long") logger.error( message = { "Could not parse long" }, throwable = e, ) defValue } } Loading legacy/common/build.gradle.kts +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ dependencies { implementation(projects.backend.pop3) implementation(projects.core.featureflag) implementation(projects.core.logging.api) implementation(projects.feature.launcher) implementation(projects.feature.account.setup) Loading Loading
core/android/testing/build.gradle.kts +2 −2 Original line number Diff line number Diff line Loading @@ -10,9 +10,9 @@ dependencies { api(libs.junit) api(libs.robolectric) implementation(projects.core.logging.api) implementation(projects.core.preference.api) implementation(projects.legacy.core) implementation(projects.core.preference.impl) api(libs.koin.core) api(libs.mockito.core) Loading
core/android/testing/src/main/kotlin/net/thunderbird/core/android/preferences/InMemoryStoragePersister.kt→core/android/testing/src/main/kotlin/net/thunderbird/core/android/preferences/TestStoragePersister.kt +9 −5 Original line number Diff line number Diff line package net.thunderbird.core.android.preferences import com.fsck.k9.preferences.DefaultStorage import net.thunderbird.core.logging.Logger import net.thunderbird.core.preference.storage.InMemoryStorage import net.thunderbird.core.preference.storage.Storage import net.thunderbird.core.preference.storage.StorageEditor import net.thunderbird.core.preference.storage.StoragePersister import net.thunderbird.core.preference.storage.StorageUpdater class InMemoryStoragePersister : StoragePersister { class TestStoragePersister( private val logger: Logger, ) : StoragePersister { private val values = mutableMapOf<String, Any?>() override fun loadValues(): Storage { return DefaultStorage( values.mapValues { (_, value) -> return InMemoryStorage( values = values.mapValues { (_, value) -> value?.toString() ?: "" }, logger, ) } Loading Loading @@ -65,7 +69,7 @@ class InMemoryStoragePersister : StoragePersister { } private fun writeValues(currentStorage: Storage): Storage { return DefaultStorage(currentStorage.getAll() - removals + changes) return InMemoryStorage(currentStorage.getAll() - removals + changes, logger) } } }
core/preference/impl/build.gradle.kts +2 −0 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ kotlin { sourceSets { commonMain.dependencies { api(projects.core.preference.api) implementation(projects.core.logging.api) } } }
legacy/core/src/main/java/com/fsck/k9/preferences/DefaultStorage.kt→core/preference/impl/src/commonMain/kotlin/net/thunderbird/core/preference/storage/InMemoryStorage.kt +13 −9 Original line number Diff line number Diff line package com.fsck.k9.preferences package net.thunderbird.core.preference.storage import java.util.Collections import net.thunderbird.core.logging.legacy.Log import net.thunderbird.core.preference.storage.Storage import net.thunderbird.core.logging.Logger class DefaultStorage( values: Map<String, String>, class InMemoryStorage( private val values: Map<String, String>, private val logger: Logger, ) : Storage { private val values: Map<String, String> = Collections.unmodifiableMap(values) override fun isEmpty(): Boolean = values.isEmpty() Loading @@ -25,7 +23,10 @@ class DefaultStorage( return try { value.toInt() } catch (e: NumberFormatException) { Log.e(e, "Could not parse int") logger.error( message = { "Could not parse int" }, throwable = e, ) defValue } } Loading @@ -35,7 +36,10 @@ class DefaultStorage( return try { value.toLong() } catch (e: NumberFormatException) { Log.e(e, "Could not parse long") logger.error( message = { "Could not parse long" }, throwable = e, ) defValue } } Loading
legacy/common/build.gradle.kts +1 −0 Original line number Diff line number Diff line Loading @@ -11,6 +11,7 @@ dependencies { implementation(projects.backend.pop3) implementation(projects.core.featureflag) implementation(projects.core.logging.api) implementation(projects.feature.launcher) implementation(projects.feature.account.setup) Loading