diff options
| author | David Göransson <david.goransson@mullvad.net> | 2024-12-20 10:25:17 +0100 |
|---|---|---|
| committer | David Göransson <david.goransson@mullvad.net> | 2025-01-08 09:27:06 +0100 |
| commit | 0f33bd4bcbdf7fc3a9defb79b38f30a37038e89f (patch) | |
| tree | a1137f3331274dd85d27b057826a8dfdb1869ded /android/lib | |
| parent | 02c7148847246fc492948d8ffdb426792c5f1c64 (diff) | |
| download | mullvadvpn-0f33bd4bcbdf7fc3a9defb79b38f30a37038e89f.tar.xz mullvadvpn-0f33bd4bcbdf7fc3a9defb79b38f30a37038e89f.zip | |
Make UI state have constraints
Diffstat (limited to 'android/lib')
4 files changed, 16 insertions, 8 deletions
diff --git a/android/lib/common-test/src/main/java/net/mullvad/mullvadvpn/lib/common/test/TestUtils.kt b/android/lib/common-test/src/main/java/net/mullvad/mullvadvpn/lib/common/test/TestUtils.kt index 60f991fce6..d535019e57 100644 --- a/android/lib/common-test/src/main/java/net/mullvad/mullvadvpn/lib/common/test/TestUtils.kt +++ b/android/lib/common-test/src/main/java/net/mullvad/mullvadvpn/lib/common/test/TestUtils.kt @@ -14,3 +14,16 @@ fun <T> assertLists(expected: List<T>, actual: List<T>, message: String? = null) """ .trimMargin(), ) + +fun <T> assertSet(expected: Set<T>, actual: Set<T>, message: String? = null) = + assertTrue( + expected.size == actual.size && + expected.containsAll(actual) && + actual.containsAll(expected), + message + ?: """Expected list should have same size and contains same items. + | Expected(${expected.size}): $expected + | Actual(${actual.size}) : $actual + """ + .trimMargin(), + ) diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/FromDomain.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/FromDomain.kt index f62124a171..e4d3e84a4f 100644 --- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/FromDomain.kt +++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/FromDomain.kt @@ -46,7 +46,7 @@ internal fun Constraint<RelayItemId>.fromDomain(): ManagementInterface.LocationC internal fun Constraint<Providers>.fromDomain(): List<String> = when (this) { is Constraint.Any -> emptyList() - is Constraint.Only -> value.providers.map { it.value } + is Constraint.Only -> value.map { it.value } } internal fun DnsOptions.fromDomain(): ManagementInterface.DnsOptions = diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt index 91399b48b6..daa04fc8d9 100644 --- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt +++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/mapper/ToDomain.kt @@ -365,7 +365,7 @@ internal fun ManagementInterface.GeographicLocationConstraint.toDomain(): GeoLoc } internal fun List<String>.toDomain(): Constraint<Providers> = - if (isEmpty()) Constraint.Any else Constraint.Only(Providers(map { ProviderId(it) }.toSet())) + if (isEmpty()) Constraint.Any else Constraint.Only(map { ProviderId(it) }.toSet()) internal fun ManagementInterface.WireguardConstraints.toDomain(): WireguardConstraints = WireguardConstraints( diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Providers.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Providers.kt index 73cf9facdb..0e511c9407 100644 --- a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Providers.kt +++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/Providers.kt @@ -1,8 +1,3 @@ package net.mullvad.mullvadvpn.lib.model -import arrow.optics.optics - -@optics -data class Providers(val providers: Set<ProviderId>) { - companion object -} +typealias Providers = Set<ProviderId> |
