PM-17797 and PM-17798 set onboarding features to be remotely configurable (#4662)

This commit is contained in:
Dave Severns
2025-01-31 10:49:56 -05:00
committed by GitHub
parent 2b79cc9a17
commit 925db01b44
2 changed files with 6 additions and 9 deletions

View File

@@ -70,7 +70,7 @@ sealed class FlagKey<out T : Any> {
data object OnboardingCarousel : FlagKey<Boolean>() {
override val keyName: String = "native-carousel-flow"
override val defaultValue: Boolean = false
override val isRemotelyConfigured: Boolean = false
override val isRemotelyConfigured: Boolean = true
}
/**
@@ -79,7 +79,7 @@ sealed class FlagKey<out T : Any> {
data object OnboardingFlow : FlagKey<Boolean>() {
override val keyName: String = "native-create-account-flow"
override val defaultValue: Boolean = false
override val isRemotelyConfigured: Boolean = false
override val isRemotelyConfigured: Boolean = true
}
/**

View File

@@ -13,13 +13,11 @@ import io.mockk.every
import io.mockk.just
import io.mockk.mockk
import io.mockk.runs
import io.mockk.unmockkStatic
import io.mockk.verify
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.test.runTest
import kotlinx.serialization.json.JsonPrimitive
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertFalse
import org.junit.jupiter.api.Assertions.assertNull
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
@@ -128,7 +126,7 @@ class DebugMenuRepositoryTest {
val mockServerData = mockk<ConfigResponseJson>(relaxed = true) {
every { featureStates } returns mapOf(
FlagKey.EmailVerification.keyName to JsonPrimitive(true),
FlagKey.OnboardingCarousel.keyName to JsonPrimitive(false),
FlagKey.OnboardingCarousel.keyName to JsonPrimitive(true),
FlagKey.OnboardingFlow.keyName to JsonPrimitive(true),
)
}
@@ -140,16 +138,16 @@ class DebugMenuRepositoryTest {
debugMenuRepository.resetFeatureFlagOverrides()
assertTrue(FlagKey.EmailVerification.isRemotelyConfigured)
assertFalse(FlagKey.OnboardingCarousel.isRemotelyConfigured)
assertTrue(FlagKey.OnboardingCarousel.isRemotelyConfigured)
verify(exactly = 1) {
mockFeatureFlagOverrideDiskSource.saveFeatureFlag(FlagKey.EmailVerification, true)
mockFeatureFlagOverrideDiskSource.saveFeatureFlag(
FlagKey.OnboardingCarousel,
false,
true,
)
mockFeatureFlagOverrideDiskSource.saveFeatureFlag(
FlagKey.OnboardingFlow,
false,
true,
)
}
@@ -158,7 +156,6 @@ class DebugMenuRepositoryTest {
awaitItem()
cancel()
}
unmockkStatic(FlagKey.OnboardingFlow::class)
}
@Test