Skip to content

Commit

Permalink
Fix tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jameswoo-stripe committed Jun 25, 2022
1 parent f6581fb commit bb93b61
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 19 deletions.
Expand Up @@ -44,7 +44,9 @@ import javax.inject.Singleton
@Singleton
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP)
class LpmRepository @Inject constructor(
resources: Resources?
resources: Resources?,
private val isFinancialConnectionsAvailable: IsFinancialConnectionsAvailable =
DefaultIsFinancialConnectionsAvailable()
) {
private val lpmSerializer: LpmSerializer = LpmSerializer()

Expand All @@ -63,11 +65,7 @@ class LpmRepository @Inject constructor(
}

@VisibleForTesting
fun initialize(
inputStream: InputStream?,
isFinancialConnectionsAvailable: IsFinancialConnectionsAvailable =
DefaultIsFinancialConnectionsAvailable()
) {
fun initialize(inputStream: InputStream?) {
val parsedSupportedPaymentMethod = parseLpms(inputStream)
?.filter { exposedPaymentMethods.contains(it.type) }
?.mapNotNull { convertToSupportedPaymentMethod(it) }
Expand Down
Expand Up @@ -13,7 +13,12 @@ import org.robolectric.RobolectricTestRunner
@RunWith(RobolectricTestRunner::class)
class LpmRepositoryTest {
private val lpmRepository = LpmRepository(
ApplicationProvider.getApplicationContext<Application>().resources
ApplicationProvider.getApplicationContext<Application>().resources,
object : IsFinancialConnectionsAvailable {
override fun invoke(): Boolean {
return true
}
}
)

@Test
Expand Down Expand Up @@ -121,32 +126,31 @@ class LpmRepositoryTest {
"type": "us_bank_account"
}
]
""".trimIndent().byteInputStream(),
isFinancialConnectionsAvailable = object : IsFinancialConnectionsAvailable {
override fun invoke(): Boolean {
return true
}
}
""".trimIndent().byteInputStream()
)

assertThat(lpmRepository.fromCode("us_bank_account")).isNotNull()
}

@Test
fun `Verify that us_bank_account not supported when financial connections sdk not available`() {
val lpmRepository = LpmRepository(
ApplicationProvider.getApplicationContext<Application>().resources,
object : IsFinancialConnectionsAvailable {
override fun invoke(): Boolean {
return false
}
}
)

lpmRepository.initialize(
"""
[
{
"type": "us_bank_account"
}
]
""".trimIndent().byteInputStream(),
isFinancialConnectionsAvailable = object : IsFinancialConnectionsAvailable {
override fun invoke(): Boolean {
return false
}
}
""".trimIndent().byteInputStream()
)

assertThat(lpmRepository.fromCode("us_bank_account")).isNull()
Expand Down

0 comments on commit bb93b61

Please sign in to comment.