Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import androidx.lifecycle.viewModelScope
import com.simprints.core.DeviceID
import com.simprints.feature.setup.LocationStore
import com.simprints.infra.authstore.AuthStore
import com.simprints.infra.config.store.models.FaceConfiguration
import com.simprints.infra.config.store.models.FingerprintConfiguration
import com.simprints.infra.config.store.models.GeneralConfiguration
import com.simprints.infra.config.store.models.ProjectConfiguration
Expand Down Expand Up @@ -108,7 +109,7 @@ internal class SetupViewModel @Inject constructor(
private val ProjectConfiguration.requiredLicenses: List<Pair<Vendor, LicenseVersion>>
get() = general.modalities.mapNotNull {
when {
it == GeneralConfiguration.Modality.FACE -> {
it == GeneralConfiguration.Modality.FACE && shouldIncludeRankOne() -> {
Vendor.RankOne to LicenseVersion(face?.rankOne?.version.orEmpty())
}

Expand All @@ -121,3 +122,5 @@ private val ProjectConfiguration.requiredLicenses: List<Pair<Vendor, LicenseVers
}

private fun ProjectConfiguration.shouldIncludeNec() = fingerprint?.allowedSDKs?.contains(FingerprintConfiguration.BioSdk.NEC) == true

private fun ProjectConfiguration.shouldIncludeRankOne() = face?.allowedSDKs?.contains(FaceConfiguration.BioSdk.RANK_ONE) == true
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import androidx.arch.core.executor.testing.InstantTaskExecutorRule
import com.jraska.livedata.test
import com.simprints.feature.setup.LocationStore
import com.simprints.infra.authstore.AuthStore
import com.simprints.infra.config.store.models.FaceConfiguration
import com.simprints.infra.config.store.models.FingerprintConfiguration
import com.simprints.infra.config.store.models.GeneralConfiguration
import com.simprints.infra.config.sync.ConfigManager
Expand Down Expand Up @@ -153,7 +154,10 @@ class SetupViewModelTest {
every { allowedSDKs } returns listOf(FingerprintConfiguration.BioSdk.NEC)
every { nec?.version } returns "1"
}
every { face?.rankOne?.version } returns "1"
every { face } returns mockk {
every { allowedSDKs } returns listOf(FaceConfiguration.BioSdk.RANK_ONE)
every { rankOne?.version } returns "1"
}
}
every {
licenseRepository.getLicenseStates(any(), any(), any(), any())
Expand All @@ -180,7 +184,10 @@ class SetupViewModelTest {
every { allowedSDKs } returns listOf(FingerprintConfiguration.BioSdk.NEC)
every { nec?.version } returns null
}
every { face?.rankOne } returns null
every { face } returns mockk {
every { allowedSDKs } returns listOf(FaceConfiguration.BioSdk.RANK_ONE)
every { rankOne?.version } returns null
}
}
}
every {
Expand All @@ -200,7 +207,16 @@ class SetupViewModelTest {
// Given
coEvery { configManager.getProjectConfiguration() } returns mockk {
every { general } returns mockk {
every { modalities } returns emptyList()
every { modalities } returns listOf(
GeneralConfiguration.Modality.FINGERPRINT,
GeneralConfiguration.Modality.FACE,
)
every { fingerprint } returns mockk {
every { allowedSDKs } returns listOf(FingerprintConfiguration.BioSdk.SECUGEN_SIM_MATCHER)
}
every { face } returns mockk {
every { allowedSDKs } returns listOf(FaceConfiguration.BioSdk.SIM_FACE)
}
}
}

Expand All @@ -225,7 +241,10 @@ class SetupViewModelTest {
every { allowedSDKs } returns listOf(FingerprintConfiguration.BioSdk.NEC)
every { nec?.version } returns ""
}
every { face?.rankOne?.version } returns ""
every { face } returns mockk {
every { allowedSDKs } returns listOf(FaceConfiguration.BioSdk.RANK_ONE)
every { rankOne?.version } returns ""
}
}
coJustRun { saveLicenseCheckEvent(Vendor.RankOne, LicenseStatus.MISSING) }
every {
Expand Down