Only store remote values for flags in a whitelist.

This commit is contained in:
Greyson Parrelli
2020-02-05 21:53:04 -05:00
parent e5fedb8163
commit 62814490b3
3 changed files with 68 additions and 29 deletions

View File

@@ -17,15 +17,17 @@ public class FeatureFlagsTest {
private static final String B = key("b");
@Test
public void updateInternal_newValue_ignoreMissingPrefix() {
UpdateResult result = FeatureFlags.updateInternal(mapOf("noprefix", true),
public void updateInternal_newValue_ignoreNotInRemoteCapable() {
UpdateResult result = FeatureFlags.updateInternal(mapOf("A", true,
"B", true),
mapOf(),
mapOf(),
setOf("A"),
setOf(),
setOf());
assertEquals(mapOf(), result.getMemory());
assertEquals(mapOf(), result.getDisk());
assertEquals(mapOf("A", true), result.getDisk());
}
@Test
@@ -33,6 +35,7 @@ public class FeatureFlagsTest {
UpdateResult result = FeatureFlags.updateInternal(mapOf(A, true),
mapOf(),
mapOf(),
setOf(A),
setOf(),
setOf());
@@ -46,6 +49,7 @@ public class FeatureFlagsTest {
mapOf(),
mapOf(),
setOf(A),
setOf(A),
setOf());
assertEquals(mapOf(A, true), result.getMemory());
@@ -57,6 +61,7 @@ public class FeatureFlagsTest {
UpdateResult result = FeatureFlags.updateInternal(mapOf(A, true),
mapOf(),
mapOf(),
setOf(A),
setOf(),
setOf(A));
@@ -70,6 +75,7 @@ public class FeatureFlagsTest {
mapOf(),
mapOf(),
setOf(A),
setOf(A),
setOf(A));
assertEquals(mapOf(A, true), result.getMemory());
@@ -79,8 +85,9 @@ public class FeatureFlagsTest {
@Test
public void updateInternal_replaceValue() {
UpdateResult result = FeatureFlags.updateInternal(mapOf(A, true),
mapOf(A, false),
mapOf(A, false),
mapOf(A, false),
mapOf(A, false),
setOf(A),
setOf(),
setOf());
@@ -94,6 +101,7 @@ public class FeatureFlagsTest {
mapOf(A, false),
mapOf(A, false),
setOf(A),
setOf(A),
setOf());
assertEquals(mapOf(A, true), result.getMemory());
@@ -106,6 +114,7 @@ public class FeatureFlagsTest {
mapOf(A, false),
mapOf(A, false),
setOf(A),
setOf(A),
setOf(A));
assertEquals(mapOf(A, true), result.getMemory());
@@ -118,6 +127,7 @@ public class FeatureFlagsTest {
mapOf(A, true),
mapOf(A, true),
setOf(A),
setOf(A),
setOf(A));
assertEquals(mapOf(A, true), result.getMemory());
@@ -127,8 +137,9 @@ public class FeatureFlagsTest {
@Test
public void updateInternal_removeValue() {
UpdateResult result = FeatureFlags.updateInternal(mapOf(),
mapOf(A, true),
mapOf(A, true),
mapOf(A, true),
setOf(A),
setOf(),
setOf());
@@ -142,6 +153,7 @@ public class FeatureFlagsTest {
mapOf(A, true),
mapOf(A, true),
setOf(A),
setOf(A),
setOf());
assertEquals(mapOf(), result.getMemory());
@@ -151,8 +163,9 @@ public class FeatureFlagsTest {
@Test
public void updateInternal_removeValue_stickyAlreadyEnabled() {
UpdateResult result = FeatureFlags.updateInternal(mapOf(),
mapOf(A, true),
mapOf(A, true),
mapOf(A, true),
setOf(A),
setOf(),
setOf(A));
@@ -165,6 +178,7 @@ public class FeatureFlagsTest {
UpdateResult result = FeatureFlags.updateInternal(mapOf(),
mapOf(A, false),
mapOf(A, false),
setOf(A),
setOf(),
setOf(A));
@@ -178,6 +192,7 @@ public class FeatureFlagsTest {
mapOf(A, true),
mapOf(A, true),
setOf(A),
setOf(A),
setOf(A));
assertEquals(mapOf(A, true), result.getMemory());
@@ -190,6 +205,7 @@ public class FeatureFlagsTest {
mapOf(A, false),
mapOf(A, false),
setOf(A),
setOf(A),
setOf(A));
assertEquals(mapOf(), result.getMemory());
@@ -202,6 +218,7 @@ public class FeatureFlagsTest {
B, false),
mapOf(),
mapOf(),
setOf(A, B),
setOf(),
setOf());
@@ -217,6 +234,7 @@ public class FeatureFlagsTest {
B, true),
mapOf(A, true,
B, true),
setOf(A, B),
setOf(),
setOf());