Skip to content

Commit

Permalink
Merge pull request #501 from gini/fix(health-sdk)-Fixes-for-IPC-304
Browse files Browse the repository at this point in the history
Fix(health sdk) fixes for ipc 304
  • Loading branch information
danicretu authored Jul 23, 2024
2 parents 58f3fdc + 54cfb77 commit 35ff8cb
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -614,8 +614,15 @@ class ReviewFragment private constructor(
viewModel.onPayment()
}
}
ReviewViewModel.PaymentNextStep.ShowOpenWithSheet -> viewModel.paymentProviderApp.value?.let { showOpenWithDialog(it) }
ReviewViewModel.PaymentNextStep.ShowInstallApp -> viewModel.paymentProviderApp.value?.let { showInstallAppDialog(it) }
ReviewViewModel.PaymentNextStep.ShowOpenWithSheet -> {
if (viewModel.validatePaymentDetails()) {
viewModel.paymentProviderApp.value?.let { showOpenWithDialog(it) }
}
}
ReviewViewModel.PaymentNextStep.ShowInstallApp ->
if (viewModel.validatePaymentDetails()) {
viewModel.paymentProviderApp.value?.let { showInstallAppDialog(it) }
}
is ReviewViewModel.PaymentNextStep.OpenSharePdf -> {
binding.loading.isVisible = false
startSharePdfIntent(paymentNextStep.file)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,8 @@ internal class ReviewViewModel(
_paymentDetails.value = paymentDetails.value.copy(purpose = purpose)
}

fun validatePaymentDetails(): Boolean = validatePaymentDetails(paymentDetails.value)

private fun validatePaymentDetails(paymentDetails: PaymentDetails): Boolean {
val items = paymentDetails.validate()
_paymentValidation.tryEmit(items)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.flowOf
import kotlinx.coroutines.test.advanceTimeBy
import kotlinx.coroutines.test.runTest
import net.gini.android.health.api.models.PaymentProvider
import net.gini.android.health.sdk.GiniHealth
Expand Down Expand Up @@ -212,6 +211,7 @@ class ReviewFragmentTest {
every { viewModel.isPaymentButtonEnabled } returns flowOf(true)
every { viewModel.paymentProviderApp } returns MutableStateFlow(paymentProviderApp)
every { viewModel.paymentNextStep } returns paymentNextStepSharedFlow
every { viewModel.validatePaymentDetails() } returns true

val listener = mockk<ReviewFragmentListener>(relaxed = true)

Expand Down Expand Up @@ -256,6 +256,7 @@ class ReviewFragmentTest {
every { viewModel.paymentProviderApp } returns MutableStateFlow(paymentProviderApp)
every { viewModel.isPaymentButtonEnabled } returns flowOf(true)
every { viewModel.paymentNextStep } returns paymentNextStepSharedFlow
every { viewModel.validatePaymentDetails() } returns true

launchFragmentInContainer(themeResId = R.style.GiniHealthTheme) {
ReviewFragment.newInstance(
Expand Down

0 comments on commit 35ff8cb

Please sign in to comment.