| Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
|
| index b734118c408d87ddac2423230b3722512dc0cbb6..528b7092c29df8872ec4a79d9d13028525a3b71a 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
|
| @@ -8,7 +8,7 @@
|
| import org.chromium.base.annotations.JNINamespace;
|
| import org.chromium.base.annotations.MainDex;
|
|
|
| -import java.util.Set;
|
| +import java.util.Map;
|
|
|
| /**
|
| * Java accessor for base/feature_list.h state.
|
| @@ -17,21 +17,21 @@
|
| @MainDex
|
| public abstract class ChromeFeatureList {
|
| /** Map that stores substitution feature flags for tests. */
|
| - private static Set<String> sTestEnabledFeatures;
|
| + private static Map<String, Boolean> sTestFeatures;
|
|
|
| // Prevent instantiation.
|
| private ChromeFeatureList() {}
|
|
|
| /**
|
| * Sets the feature flags to use in JUnit tests, since native calls are not available there.
|
| - * Do not use directly, prefer using the {@link EnableFeatures} annotation.
|
| + * Do not use directly, prefer using the {@link Features} annotation.
|
| *
|
| - * @see EnableFeatures
|
| - * @see EnableFeatures.Processor
|
| + * @see Features
|
| + * @see Features.Processor
|
| */
|
| @VisibleForTesting
|
| - public static void setTestEnabledFeatures(Set<String> featureList) {
|
| - sTestEnabledFeatures = featureList;
|
| + public static void setTestFeatures(Map<String, Boolean> features) {
|
| + sTestFeatures = features;
|
| }
|
|
|
| /**
|
| @@ -44,8 +44,9 @@ public static void setTestEnabledFeatures(Set<String> featureList) {
|
| * @return Whether the feature is enabled or not.
|
| */
|
| public static boolean isEnabled(String featureName) {
|
| - if (sTestEnabledFeatures == null) return nativeIsEnabled(featureName);
|
| - return sTestEnabledFeatures.contains(featureName);
|
| + if (sTestFeatures == null) return nativeIsEnabled(featureName);
|
| + if (sTestFeatures.containsKey(featureName)) return sTestFeatures.get(featureName);
|
| + throw new IllegalArgumentException(featureName);
|
| }
|
|
|
| /**
|
|
|