diff --git a/app/src/main/java/com/tangem/tap/TapApplication.kt b/app/src/main/java/com/tangem/tap/TapApplication.kt index 599ad22aa3..8d56db3a2b 100644 --- a/app/src/main/java/com/tangem/tap/TapApplication.kt +++ b/app/src/main/java/com/tangem/tap/TapApplication.kt @@ -45,7 +45,6 @@ import com.tangem.tap.common.analytics.handlers.appsFlyer.AppsFlyerAnalyticsHand import com.tangem.tap.common.analytics.handlers.firebase.FirebaseAnalyticsHandler import com.tangem.tap.common.analytics.topup.TopUpController import com.tangem.tap.common.chat.ChatManager -import com.tangem.tap.common.extensions.dispatchOnMain import com.tangem.tap.common.feedback.AdditionalFeedbackInfo import com.tangem.tap.common.feedback.FeedbackManager import com.tangem.tap.common.images.createCoilImageLoader @@ -240,10 +239,10 @@ internal class TapApplication : Application(), ImageLoaderFactory { // TODO: Try to performance and user experience. // [REDACTED_JIRA] runBlocking { + walletsRepository.initialize() initUserWalletsListManager() featureTogglesManager.init() appRatingRepository.initialize() - walletsRepository.initialize() // learn2earnInteractor.init() } @@ -416,6 +415,6 @@ internal class TapApplication : Application(), ImageLoaderFactory { UserWalletsListManager.provideRuntimeImplementation() } - store.dispatchOnMain(GlobalAction.UpdateUserWalletsListManager(manager)) + store.dispatch(GlobalAction.UpdateUserWalletsListManager(manager)) } } \ No newline at end of file diff --git a/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/operations/CurrenciesStatusesOperations.kt b/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/operations/CurrenciesStatusesOperations.kt index 4271ce732e..7037cb1458 100644 --- a/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/operations/CurrenciesStatusesOperations.kt +++ b/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/operations/CurrenciesStatusesOperations.kt @@ -217,9 +217,12 @@ internal class CurrenciesStatusesOperations( private fun getQuotes(tokensIds: NonEmptySet): Flow>> { return quotesRepository.getQuotesUpdates(tokensIds) - .map, Either>> { it.right() } - .catch { emit(Error.DataError(it).left()) } - .onEmpty { emit(Error.EmptyQuotes.left()) } + .map, Either>> { quotes -> + if (quotes.isEmpty()) Error.EmptyQuotes.left() else quotes.right() + } + .catch { + emit(Error.DataError(it).left()) + } } private fun getNetworksStatuses(networks: NonEmptySet): Flow>> { diff --git a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetPrimaryCurrencyStatusUpdatesUseCaseTest.kt b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetPrimaryCurrencyStatusUpdatesUseCaseTest.kt index 4abddd57fa..6cdc76877c 100644 --- a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetPrimaryCurrencyStatusUpdatesUseCaseTest.kt +++ b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetPrimaryCurrencyStatusUpdatesUseCaseTest.kt @@ -101,7 +101,7 @@ internal class GetPrimaryCurrencyStatusUpdatesUseCaseTest { fun `when quotes flow is empty then no quote status should be received`() = runTest { val expectedResult = MockTokensStates.noQuotesTokensStatuses.first().right() - val useCase = getUseCase(quotes = flowOf()) + val useCase = getUseCase(quotes = flowOf(emptySet().right())) // When val result = useCase(userWalletId).first() diff --git a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetTokenListUseCaseTest.kt b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetTokenListUseCaseTest.kt index 7736efaf5c..7702463cf6 100644 --- a/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetTokenListUseCaseTest.kt +++ b/domain/tokens/src/test/kotlin/com/tangem/domain/tokens/GetTokenListUseCaseTest.kt @@ -269,7 +269,7 @@ internal class GetTokenListUseCaseTest { val useCase = getUseCase( statuses = flowOf(MockNetworks.verifiedNetworksStatuses.right()), - quotes = flowOf(), + quotes = flowOf(emptySet().right()), ) // When