diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2021-11-09 00:03:13 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2021-11-09 00:03:13 +0000 |
commit | 7ac3d9992c9b628d8c069acf0e41bca20016d153 (patch) | |
tree | 10cb2a2397a6d0af98a52c799054e9ab06f1b044 | |
parent | 990fec201e8363d1f7a5a6c68d53f4b66303c503 (diff) | |
parent | 49410e98e35ebcdd89c4718ed12f868efefe0d4a (diff) | |
download | libtextclassifier-android12L-d2-s1-release.tar.gz |
Snap for 7894766 from 49410e98e35ebcdd89c4718ed12f868efefe0d4a to sc-d2-releaseandroid-12.1.0_r26android-12.1.0_r25android-12.1.0_r24android-12.1.0_r23android-12.1.0_r18android-12.1.0_r17android-12.1.0_r16android-12.1.0_r15android-12.1.0_r14android-12.1.0_r13android-12.1.0_r12android12L-d2-s8-releaseandroid12L-d2-s7-releaseandroid12L-d2-s6-releaseandroid12L-d2-s5-releaseandroid12L-d2-s4-releaseandroid12L-d2-s3-releaseandroid12L-d2-s2-releaseandroid12L-d2-s1-releaseandroid12L-d2-release
Change-Id: I464ae3946aff5c6ee7cbdb7b7e1f39200696d065
2 files changed, 40 insertions, 34 deletions
diff --git a/java/tests/instrumentation/src/com/android/textclassifier/common/TextClassifierSettingsTest.java b/java/tests/instrumentation/src/com/android/textclassifier/common/TextClassifierSettingsTest.java index 21d6943..8072d72 100644 --- a/java/tests/instrumentation/src/com/android/textclassifier/common/TextClassifierSettingsTest.java +++ b/java/tests/instrumentation/src/com/android/textclassifier/common/TextClassifierSettingsTest.java @@ -18,12 +18,11 @@ package com.android.textclassifier.common; import static com.google.common.truth.Truth.assertThat; -import android.provider.DeviceConfig; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.SmallTest; import androidx.test.platform.app.InstrumentationRegistry; +import com.android.textclassifier.testing.TestingDeviceConfig; import com.google.common.collect.ImmutableMap; -import java.util.HashMap; import java.util.Map; import java.util.function.Consumer; import org.junit.After; @@ -157,26 +156,11 @@ public class TextClassifierSettingsTest { private static void assertSettings( Map<String, String> keyValueMap, Consumer<TextClassifierSettings> settingsConsumer) { - HashMap<String, String> keyOriginalValueMap = new HashMap<>(); + TestingDeviceConfig deviceConfig = new TestingDeviceConfig(); + TextClassifierSettings settings = new TextClassifierSettings(deviceConfig); for (String key : keyValueMap.keySet()) { - keyOriginalValueMap.put( - key, DeviceConfig.getProperty(DeviceConfig.NAMESPACE_TEXTCLASSIFIER, key)); + deviceConfig.setConfig(key, keyValueMap.get(key)); } - TextClassifierSettings settings = new TextClassifierSettings(); - try { - for (String key : keyValueMap.keySet()) { - setDeviceConfig(key, keyValueMap.get(key)); - } - settingsConsumer.accept(settings); - } finally { - for (String key : keyValueMap.keySet()) { - setDeviceConfig(key, keyOriginalValueMap.get(key)); - } - } - } - - private static void setDeviceConfig(String key, String value) { - DeviceConfig.setProperty( - DeviceConfig.NAMESPACE_TEXTCLASSIFIER, key, value, /* makeDefault */ false); + settingsConsumer.accept(settings); } } diff --git a/java/tests/instrumentation/src/com/android/textclassifier/testing/TestingDeviceConfig.java b/java/tests/instrumentation/src/com/android/textclassifier/testing/TestingDeviceConfig.java index 670e3d0..bdc422e 100644 --- a/java/tests/instrumentation/src/com/android/textclassifier/testing/TestingDeviceConfig.java +++ b/java/tests/instrumentation/src/com/android/textclassifier/testing/TestingDeviceConfig.java @@ -25,42 +25,64 @@ import javax.annotation.Nullable; /** A fake DeviceConfig implementation for testing purpose. */ public final class TestingDeviceConfig implements TextClassifierSettings.IDeviceConfig { - private final HashMap<String, String> strConfigs; - private final HashMap<String, Boolean> boolConfigs; + private final HashMap<String, String> configs; public TestingDeviceConfig() { - this.strConfigs = new HashMap<>(); - this.boolConfigs = new HashMap<>(); + this.configs = new HashMap<>(); } public void setConfig(String key, String value) { - strConfigs.put(key, value); + configs.put(key, value); } public void setConfig(String key, boolean value) { - boolConfigs.put(key, value); + configs.put(key, Boolean.toString(value)); + } + + public void setConfig(String key, int value) { + configs.put(key, Integer.toString(value)); + } + + public void setConfig(String key, float value) { + configs.put(key, Float.toString(value)); + } + + public void setConfig(String key, long value) { + configs.put(key, Long.toString(value)); } @Override public Properties getProperties(@NonNull String namespace, @NonNull String... names) { Properties.Builder builder = new Properties.Builder(namespace); - for (String key : strConfigs.keySet()) { - builder.setString(key, strConfigs.get(key)); - } - for (String key : boolConfigs.keySet()) { - builder.setBoolean(key, boolConfigs.get(key)); + for (String key : configs.keySet()) { + builder.setString(key, configs.get(key)); } return builder.build(); } @Override public boolean getBoolean(@NonNull String namespace, @NonNull String name, boolean defaultValue) { - return boolConfigs.containsKey(name) ? boolConfigs.get(name) : defaultValue; + return configs.containsKey(name) ? Boolean.parseBoolean(configs.get(name)) : defaultValue; } @Override public String getString( @NonNull String namespace, @NonNull String name, @Nullable String defaultValue) { - return strConfigs.containsKey(name) ? strConfigs.get(name) : defaultValue; + return configs.containsKey(name) ? configs.get(name) : defaultValue; + } + + @Override + public int getInt(@NonNull String namespace, @NonNull String name, int defaultValue) { + return configs.containsKey(name) ? Integer.parseInt(configs.get(name)) : defaultValue; + } + + @Override + public float getFloat(@NonNull String namespace, @NonNull String name, float defaultValue) { + return configs.containsKey(name) ? Float.parseFloat(configs.get(name)) : defaultValue; + } + + @Override + public long getLong(@NonNull String namespace, @NonNull String name, long defaultValue) { + return configs.containsKey(name) ? Long.parseLong(configs.get(name)) : defaultValue; } } |