Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 47254056 authored by Rafael Tonholo's avatar Rafael Tonholo
Browse files

chore(unit-test): add DI module verification unit test

chore(archive): rename module property name
parent d0f8a860
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ import app.k9mail.feature.migration.launcher.featureMigrationModule
import app.k9mail.feature.onboarding.migration.onboardingMigrationModule
import app.k9mail.feature.telemetry.telemetryModule
import net.thunderbird.feature.account.settings.featureAccountSettingsModule
import net.thunderbird.feature.mail.message.list.featureMessageModule
import net.thunderbird.feature.mail.message.list.featureMessageListModule
import org.koin.dsl.module

val featureModule = module {
@@ -15,7 +15,7 @@ val featureModule = module {
    includes(featureFundingModule)
    includes(onboardingMigrationModule)
    includes(featureMigrationModule)
    includes(featureMessageModule)
    includes(featureMessageListModule)

    single<FundingSettings> { K9FundingSettings() }
}
+2 −2
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ import app.k9mail.feature.migration.launcher.featureMigrationModule
import app.k9mail.feature.onboarding.migration.onboardingMigrationModule
import app.k9mail.feature.telemetry.telemetryModule
import net.thunderbird.feature.account.settings.featureAccountSettingsModule
import net.thunderbird.feature.mail.message.list.featureMessageModule
import net.thunderbird.feature.mail.message.list.featureMessageListModule
import org.koin.dsl.module

internal val featureModule = module {
@@ -15,7 +15,7 @@ internal val featureModule = module {
    includes(featureFundingModule)
    includes(onboardingMigrationModule)
    includes(featureMigrationModule)
    includes(featureMessageModule)
    includes(featureMessageListModule)

    single<FundingSettings> { TbFundingSettings() }
}
+7 −10
Original line number Diff line number Diff line
package net.thunderbird.feature.mail.message.list

import net.thunderbird.backend.api.BackendStorageFactory
import net.thunderbird.feature.mail.account.api.AccountManager
import net.thunderbird.feature.mail.account.api.BaseAccount
import net.thunderbird.feature.mail.folder.api.SpecialFolderUpdater
import net.thunderbird.feature.mail.message.list.domain.DomainContract
import net.thunderbird.feature.mail.message.list.domain.usecase.BuildSwipeActions
import net.thunderbird.feature.mail.message.list.domain.usecase.CreateArchiveFolder
@@ -16,21 +13,21 @@ import org.koin.core.module.dsl.viewModel
import org.koin.core.qualifier.named
import org.koin.dsl.module

val featureMessageModule = module {
val featureMessageListModule = module {
    factory<DomainContract.UseCase.GetAccountFolders> { GetAccountFolders(folderRepository = get()) }
    factory<DomainContract.UseCase.CreateArchiveFolder> {
        CreateArchiveFolder(
            accountManager = get<AccountManager<BaseAccount>>(),
            backendStorageFactory = get<BackendStorageFactory<BaseAccount>>(),
            specialFolderUpdaterFactory = get<SpecialFolderUpdater.Factory<BaseAccount>>(),
            accountManager = get(),
            backendStorageFactory = get(),
            specialFolderUpdaterFactory = get(),
            remoteFolderCreatorFactory = get(named("imap")),
        )
    }
    factory<DomainContract.UseCase.SetArchiveFolder> {
        SetArchiveFolder(
            accountManager = get<AccountManager<BaseAccount>>(),
            backendStorageFactory = get<BackendStorageFactory<BaseAccount>>(),
            specialFolderUpdaterFactory = get<SpecialFolderUpdater.Factory<BaseAccount>>(),
            accountManager = get(),
            backendStorageFactory = get(),
            specialFolderUpdaterFactory = get(),
        )
    }
    factory<DomainContract.UseCase.BuildSwipeActions<BaseAccount>> { parameters ->
+23 −0
Original line number Diff line number Diff line
package net.thunderbird.feature.mail.message.list

import kotlin.test.Test
import net.thunderbird.core.common.resources.StringsResourceManager
import net.thunderbird.core.logging.Logger
import net.thunderbird.core.preference.GeneralSettingsManager
import org.koin.core.annotation.KoinExperimentalAPI
import org.koin.test.KoinTest
import org.koin.test.verify.verify

@OptIn(KoinExperimentalAPI::class)
class FeatureMessageListModuleKtTest : KoinTest {
    @Test
    fun `should have a valid di module`() {
        featureMessageListModule.verify(
            extraTypes = listOf(
                Logger::class,
                StringsResourceManager::class,
                GeneralSettingsManager::class,
            ),
        )
    }
}