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

Unverified Commit 1178324e authored by Wolf-Martell Montwé's avatar Wolf-Martell Montwé Committed by GitHub
Browse files

Merge pull request #9358 from wmontwe/refactor-search-to-kotlin-part2

Refactor search to kotlin - part 2
parents 7e0de746 dfbbdf8d
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -6,9 +6,9 @@ import kotlinx.coroutines.flow.map
import net.thunderbird.feature.navigation.drawer.dropdown.domain.DomainContract
import net.thunderbird.feature.navigation.drawer.dropdown.domain.entity.DisplayUnifiedFolder
import net.thunderbird.feature.navigation.drawer.dropdown.domain.entity.DisplayUnifiedFolderType
import net.thunderbird.feature.search.LocalSearch
import net.thunderbird.feature.search.LocalMessageSearch
import net.thunderbird.feature.search.api.MessageSearchField
import net.thunderbird.feature.search.api.SearchAttribute
import net.thunderbird.feature.search.api.SearchField

internal class UnifiedFolderRepository(
    private val messageCountsProvider: MessageCountsProvider,
@@ -25,16 +25,16 @@ internal class UnifiedFolderRepository(
        }
    }

    private fun createUnifiedFolderSearch(unifiedFolderType: DisplayUnifiedFolderType): LocalSearch {
    private fun createUnifiedFolderSearch(unifiedFolderType: DisplayUnifiedFolderType): LocalMessageSearch {
        return when (unifiedFolderType) {
            DisplayUnifiedFolderType.INBOX -> return createUnifiedInboxSearch()
        }
    }

    private fun createUnifiedInboxSearch(): LocalSearch {
        return LocalSearch().apply {
    private fun createUnifiedInboxSearch(): LocalMessageSearch {
        return LocalMessageSearch().apply {
            id = UNIFIED_INBOX_ID
            and(SearchField.INTEGRATE, "1", SearchAttribute.EQUALS)
            and(MessageSearchField.INTEGRATE, "1", SearchAttribute.EQUALS)
        }
    }

+5 −5
Original line number Diff line number Diff line
@@ -5,14 +5,14 @@ import app.k9mail.legacy.message.controller.MessageCountsProvider
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flowOf
import net.thunderbird.core.android.account.LegacyAccount
import net.thunderbird.feature.search.LocalSearch
import net.thunderbird.feature.search.LocalMessageSearch
import net.thunderbird.feature.search.SearchAccount

internal class FakeMessageCountsProvider(
    private val messageCounts: MessageCounts,
) : MessageCountsProvider {
    var recordedSearch: LocalSearch =
        LocalSearch()
    var recordedSearch: LocalMessageSearch =
        LocalMessageSearch()

    override fun getMessageCounts(account: LegacyAccount): MessageCounts {
        TODO("Not yet implemented")
@@ -22,11 +22,11 @@ internal class FakeMessageCountsProvider(
        TODO("Not yet implemented")
    }

    override fun getMessageCounts(search: LocalSearch): MessageCounts {
    override fun getMessageCounts(search: LocalMessageSearch): MessageCounts {
        TODO("Not yet implemented")
    }

    override fun getMessageCountsFlow(search: LocalSearch): Flow<MessageCounts> {
    override fun getMessageCountsFlow(search: LocalMessageSearch): Flow<MessageCounts> {
        recordedSearch = search
        return flowOf(messageCounts)
    }
+4 −4
Original line number Diff line number Diff line
@@ -8,8 +8,8 @@ import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest
import net.thunderbird.feature.navigation.drawer.dropdown.domain.entity.DisplayUnifiedFolder
import net.thunderbird.feature.navigation.drawer.dropdown.domain.entity.DisplayUnifiedFolderType
import net.thunderbird.feature.search.api.MessageSearchField
import net.thunderbird.feature.search.api.SearchAttribute
import net.thunderbird.feature.search.api.SearchField

internal class UnifiedFolderRepositoryTest {

@@ -40,8 +40,8 @@ internal class UnifiedFolderRepositoryTest {
        val search = messageCountsProvider.recordedSearch
        assertThat(search.id).isEqualTo("unified_inbox")
        val condition = search.conditions.condition
        assertThat(condition.value).isEqualTo("1")
        assertThat(condition.attribute).isEqualTo(SearchAttribute.EQUALS)
        assertThat(condition.field).isEqualTo(SearchField.INTEGRATE)
        assertThat(condition?.value).isEqualTo("1")
        assertThat(condition?.attribute).isEqualTo(SearchAttribute.EQUALS)
        assertThat(condition?.field).isEqualTo(MessageSearchField.INTEGRATE)
    }
}
+6 −6
Original line number Diff line number Diff line
@@ -6,9 +6,9 @@ import kotlinx.coroutines.flow.map
import net.thunderbird.feature.navigation.drawer.siderail.domain.DomainContract
import net.thunderbird.feature.navigation.drawer.siderail.domain.entity.DisplayUnifiedFolder
import net.thunderbird.feature.navigation.drawer.siderail.domain.entity.DisplayUnifiedFolderType
import net.thunderbird.feature.search.LocalSearch
import net.thunderbird.feature.search.LocalMessageSearch
import net.thunderbird.feature.search.api.MessageSearchField
import net.thunderbird.feature.search.api.SearchAttribute
import net.thunderbird.feature.search.api.SearchField

internal class UnifiedFolderRepository(
    private val messageCountsProvider: MessageCountsProvider,
@@ -25,16 +25,16 @@ internal class UnifiedFolderRepository(
        }
    }

    private fun createUnifiedFolderSearch(unifiedFolderType: DisplayUnifiedFolderType): LocalSearch {
    private fun createUnifiedFolderSearch(unifiedFolderType: DisplayUnifiedFolderType): LocalMessageSearch {
        return when (unifiedFolderType) {
            DisplayUnifiedFolderType.INBOX -> return createUnifiedInboxSearch()
        }
    }

    private fun createUnifiedInboxSearch(): LocalSearch {
        return LocalSearch().apply {
    private fun createUnifiedInboxSearch(): LocalMessageSearch {
        return LocalMessageSearch().apply {
            id = UNIFIED_INBOX_ID
            and(SearchField.INTEGRATE, "1", SearchAttribute.EQUALS)
            and(MessageSearchField.INTEGRATE, "1", SearchAttribute.EQUALS)
        }
    }

+4 −4
Original line number Diff line number Diff line
@@ -5,13 +5,13 @@ import app.k9mail.legacy.message.controller.MessageCountsProvider
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flowOf
import net.thunderbird.core.android.account.LegacyAccount
import net.thunderbird.feature.search.LocalSearch
import net.thunderbird.feature.search.LocalMessageSearch
import net.thunderbird.feature.search.SearchAccount

internal class FakeMessageCountsProvider(
    private val messageCounts: MessageCounts,
) : MessageCountsProvider {
    var recordedSearch: LocalSearch = LocalSearch()
    var recordedSearch: LocalMessageSearch = LocalMessageSearch()

    override fun getMessageCounts(account: LegacyAccount): MessageCounts {
        TODO("Not yet implemented")
@@ -21,11 +21,11 @@ internal class FakeMessageCountsProvider(
        TODO("Not yet implemented")
    }

    override fun getMessageCounts(search: LocalSearch): MessageCounts {
    override fun getMessageCounts(search: LocalMessageSearch): MessageCounts {
        TODO("Not yet implemented")
    }

    override fun getMessageCountsFlow(search: LocalSearch): Flow<MessageCounts> {
    override fun getMessageCountsFlow(search: LocalMessageSearch): Flow<MessageCounts> {
        recordedSearch = search
        return flowOf(messageCounts)
    }
Loading