diff options
| author | David Göransson <david.goransson@mullvad.net> | 2025-07-09 15:27:03 +0200 |
|---|---|---|
| committer | David Göransson <david.goransson@mullvad.net> | 2025-07-09 16:14:00 +0200 |
| commit | 3dc372d8de2a6af3b571c54675fb666c031ed9f7 (patch) | |
| tree | 7d7b2407a79ff0a9f28497d8af549d35533e4ea1 /android | |
| parent | 92f6e03753f465d21d1577de2a297b6455429772 (diff) | |
| download | mullvadvpn-3dc372d8de2a6af3b571c54675fb666c031ed9f7.tar.xz mullvadvpn-3dc372d8de2a6af3b571c54675fb666c031ed9f7.zip | |
Fix more flakiness
Diffstat (limited to 'android')
| -rw-r--r-- | android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt index a40d1f02a2..7093df2e2f 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt @@ -79,12 +79,14 @@ class AddTimeViewModelTest { @Test fun `when paymentAvailability emits ErrorOther uiState should be null`() = runTest { - // Arrange - paymentAvailability.emit(PaymentAvailability.Error.Other(mockk())) // Act, Assert viewModel.uiState.test { awaitItem() // Default state + + // Emit an error with a mock exception + paymentAvailability.emit(PaymentAvailability.Error.Other(mockk())) + val result = awaitItem() assertIs<Lc.Content<AddTimeUiState>>(result) assertIs<PaymentState.Error.Generic>(result.value.billingPaymentState) @@ -123,7 +125,7 @@ class AddTimeViewModelTest { } @Test - fun `startBillingPayment should invoke purchaseProduct on PaymentUseCase`() { + fun `startBillingPayment should invoke purchaseProduct on PaymentUseCase`() = runTest { // Arrange val mockProductId = ProductId("MOCK") val mockActivityProvider = mockk<() -> Activity>() @@ -180,11 +182,12 @@ class AddTimeViewModelTest { PaymentProduct(productId = productId, price = ProductPrice("€5.00"), status = null) val result = PurchaseState.Success(productId) val purchaseResultData = PurchaseResult.Completed.Success(ProductId("one_month")) - paymentAvailability.emit(PaymentAvailability.ProductsAvailable(listOf(paymentProduct))) // Act, Assert viewModel.uiState.test { awaitItem() // Default state + paymentAvailability.emit(PaymentAvailability.ProductsAvailable(listOf(paymentProduct))) + awaitItem() purchaseResult.emit(purchaseResultData) val item = awaitItem() assertIs<Lc.Content<AddTimeUiState>>(item) |
