diff options
| author | 2017-10-03 14:37:44 -0700 | |
|---|---|---|
| committer | 2017-10-03 14:51:11 -0700 | |
| commit | cfd02742e46c069c5d700756b0fcbf502c90c7a5 (patch) | |
| tree | f2a7e43b69e844bbaf3cc859dc6790efdfa94867 | |
| parent | d96b97b855f4fbd22690b4f261d6c39f0f4d49f3 (diff) | |
Add helper method to override flag
Bug: 36222960
Test: atest FrameworksCoreFeatureFlagTests
Change-Id: I45edc5171e66e4ac8e84cfc58a9fdf9bae2b136a
| -rw-r--r-- | core/java/android/util/FeatureFlagUtils.java | 7 | ||||
| -rw-r--r-- | core/tests/featureflagtests/src/android/util/FeatureFlagUtilsTest.java | 13 |
2 files changed, 20 insertions, 0 deletions
diff --git a/core/java/android/util/FeatureFlagUtils.java b/core/java/android/util/FeatureFlagUtils.java index 5838f9590c9d..fc1d4873c9cb 100644 --- a/core/java/android/util/FeatureFlagUtils.java +++ b/core/java/android/util/FeatureFlagUtils.java @@ -50,6 +50,13 @@ public class FeatureFlagUtils { } /** + * Override feature flag to new state. + */ + public static void setEnabled(String feature, boolean enabled) { + SystemProperties.set(FFLAG_OVERRIDE_PREFIX + feature, enabled ? "true" : "false"); + } + + /** * Returns all feature flags in their raw form. */ public static Map<String, String> getAllFeatureFlags() { diff --git a/core/tests/featureflagtests/src/android/util/FeatureFlagUtilsTest.java b/core/tests/featureflagtests/src/android/util/FeatureFlagUtilsTest.java index 8fee1d11a954..ebfa45c9bbc6 100644 --- a/core/tests/featureflagtests/src/android/util/FeatureFlagUtilsTest.java +++ b/core/tests/featureflagtests/src/android/util/FeatureFlagUtilsTest.java @@ -16,6 +16,7 @@ package android.util; +import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertFalse; import static junit.framework.Assert.assertTrue; @@ -65,6 +66,18 @@ public class FeatureFlagUtilsTest { } @Test + public void testSetEnabled_shouldSetOverrideFlag() { + assertFalse(FeatureFlagUtils.isEnabled(TEST_FEATURE_NAME)); + + FeatureFlagUtils.setEnabled(TEST_FEATURE_NAME, true); + + assertEquals(SystemProperties.get(FeatureFlagUtils.FFLAG_PREFIX + TEST_FEATURE_NAME, null), + ""); + assertTrue(Boolean.parseBoolean(SystemProperties.get( + FeatureFlagUtils.FFLAG_OVERRIDE_PREFIX + TEST_FEATURE_NAME, ""))); + } + + @Test public void testGetFlag_notSet_shouldReturnFalse() { assertFalse(FeatureFlagUtils.isEnabled(TEST_FEATURE_NAME)); } |