Skip to content

Commit 5955a08

Browse files
committed
Add tests for always showing selected providers
1 parent 39388cf commit 5955a08

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/FilterScreenTest.kt

+19
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,25 @@ class FilterScreenTest {
137137
verify { mockClickListener() }
138138
}
139139

140+
@Test
141+
fun ensureSelectedProviderIsShowEvenThoughItIsNotInAllProviders() =
142+
composeExtension.use {
143+
// Arrange
144+
initScreen(
145+
state =
146+
RelayFilterUiState(
147+
providerToOwnerships = DUMMY_RELAY_ALL_PROVIDERS,
148+
selectedOwnership = null,
149+
selectedProviders = listOf(ProviderId("1RemovedProvider")),
150+
)
151+
)
152+
153+
// Act
154+
onNodeWithText("Providers").performClick()
155+
// Asset
156+
onNodeWithText("1RemovedProvider (removed)").assertExists()
157+
}
158+
140159
companion object {
141160
private val DUMMY_RELAY_ALL_PROVIDERS =
142161
mapOf(

android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/FilterChipUseCaseTest.kt

+23
Original file line numberDiff line numberDiff line change
@@ -184,4 +184,27 @@ class FilterChipUseCaseTest {
184184

185185
filterChipUseCase(RelayListType.EXIT).test { assertLists(emptyList(), awaitItem()) }
186186
}
187+
188+
@Test
189+
fun `ensure that a selected provider that is not in the provider list is still counted`() =
190+
runTest {
191+
// Arrange
192+
val expectedProviders = Providers(providers = setOf(ProviderId("1")))
193+
val expectedOwnership = Ownership.MullvadOwned
194+
selectedProviders.value = Constraint.Only(expectedProviders)
195+
selectedOwnership.value = Constraint.Only(expectedOwnership)
196+
providerToOwnerships.value =
197+
mapOf(
198+
ProviderId("2") to setOf(Ownership.MullvadOwned),
199+
ProviderId("3") to setOf(Ownership.Rented),
200+
)
201+
202+
// Act, Assert
203+
filterChipUseCase(RelayListType.EXIT).test {
204+
assertLists(
205+
listOf(FilterChip.Ownership(expectedOwnership), FilterChip.Provider(1)),
206+
awaitItem(),
207+
)
208+
}
209+
}
187210
}

0 commit comments

Comments
 (0)