diff --git a/src/com/android/settings/search/SearchIndexableResources.java b/src/com/android/settings/search/SearchIndexableResources.java deleted file mode 100644 index c5243460eb3..00000000000 --- a/src/com/android/settings/search/SearchIndexableResources.java +++ /dev/null @@ -1,175 +0,0 @@ -/* - * Copyright (C) 2014 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.search; - -import android.support.annotation.VisibleForTesting; - -import com.android.settings.DateTimeSettings; -import com.android.settings.DeviceInfoSettings; -import com.android.settings.DisplaySettings; -import com.android.settings.LegalSettings; -import com.android.settings.ScreenPinningSettings; -import com.android.settings.accessibility.AccessibilitySettings; -import com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment; -import com.android.settings.accessibility.MagnificationPreferenceFragment; -import com.android.settings.accounts.UserAndAccountDashboardFragment; -import com.android.settings.applications.AppAndNotificationDashboardFragment; -import com.android.settings.applications.DefaultAppSettings; -import com.android.settings.applications.SpecialAccessSettings; -import com.android.settings.applications.assist.ManageAssist; -import com.android.settings.backup.BackupSettingsActivity; -import com.android.settings.backup.BackupSettingsFragment; -import com.android.settings.bluetooth.BluetoothSettings; -import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment; -import com.android.settings.datausage.DataUsageMeteredSettings; -import com.android.settings.datausage.DataUsageSummary; -import com.android.settings.deletionhelper.AutomaticStorageManagerSettings; -import com.android.settings.development.DevelopmentSettingsDashboardFragment; -import com.android.settings.deviceinfo.Status; -import com.android.settings.deviceinfo.StorageDashboardFragment; -import com.android.settings.deviceinfo.StorageSettings; -import com.android.settings.display.AmbientDisplaySettings; -import com.android.settings.display.ScreenZoomSettings; -import com.android.settings.dream.DreamSettings; -import com.android.settings.enterprise.EnterprisePrivacySettings; -import com.android.settings.fuelgauge.BatterySaverSettings; -import com.android.settings.fuelgauge.PowerUsageAdvanced; -import com.android.settings.fuelgauge.PowerUsageSummary; -import com.android.settings.gestures.AssistGestureSettings; -import com.android.settings.gestures.DoubleTapPowerSettings; -import com.android.settings.gestures.DoubleTapScreenSettings; -import com.android.settings.gestures.DoubleTwistGestureSettings; -import com.android.settings.gestures.GestureSettings; -import com.android.settings.gestures.PickupGestureSettings; -import com.android.settings.gestures.SwipeToNotificationSettings; -import com.android.settings.inputmethod.AvailableVirtualKeyboardFragment; -import com.android.settings.inputmethod.PhysicalKeyboardFragment; -import com.android.settings.inputmethod.VirtualKeyboardFragment; -import com.android.settings.language.LanguageAndInputSettings; -import com.android.settings.location.LocationSettings; -import com.android.settings.location.ScanningSettings; -import com.android.settings.network.NetworkDashboardFragment; -import com.android.settings.nfc.PaymentSettings; -import com.android.settings.notification.ConfigureNotificationSettings; -import com.android.settings.notification.SoundSettings; -import com.android.settings.notification.ZenModeAutomationSettings; -import com.android.settings.notification.ZenModeBehaviorSettings; -import com.android.settings.notification.ZenModeSettings; -import com.android.settings.print.PrintSettingsFragment; -import com.android.settings.security.EncryptionAndCredential; -import com.android.settings.security.LockscreenDashboardFragment; -import com.android.settings.security.SecuritySettings; -import com.android.settings.security.screenlock.ScreenLockSettings; -import com.android.settings.sim.SimSettings; -import com.android.settings.support.SupportDashboardActivity; -import com.android.settings.system.ResetDashboardFragment; -import com.android.settings.system.SystemDashboardFragment; -import com.android.settings.tts.TextToSpeechSettings; -import com.android.settings.tts.TtsEnginePreferenceFragment; -import com.android.settings.users.UserSettings; -import com.android.settings.wallpaper.WallpaperTypeSettings; -import com.android.settings.wifi.ConfigureWifiSettings; -import com.android.settings.wifi.WifiSettings; - -import java.util.Collection; -import java.util.HashSet; -import java.util.Set; - -public final class SearchIndexableResources { - - @VisibleForTesting - static final Set sProviders = new HashSet<>(); - - @VisibleForTesting - static void addIndex(Class indexClass) { - sProviders.add(indexClass); - } - - static { - addIndex(WifiSettings.class); - addIndex(NetworkDashboardFragment.class); - addIndex(ConfigureWifiSettings.class); - addIndex(BluetoothSettings.class); - addIndex(SimSettings.class); - addIndex(DataUsageSummary.class); - addIndex(DataUsageMeteredSettings.class); - addIndex(ScreenZoomSettings.class); - addIndex(DisplaySettings.class); - addIndex(AmbientDisplaySettings.class); - addIndex(WallpaperTypeSettings.class); - addIndex(AppAndNotificationDashboardFragment.class); - addIndex(SoundSettings.class); - addIndex(ZenModeSettings.class); - addIndex(StorageSettings.class); - addIndex(PowerUsageAdvanced.class); - addIndex(DefaultAppSettings.class); - addIndex(ManageAssist.class); - addIndex(SpecialAccessSettings.class); - addIndex(UserSettings.class); - addIndex(AssistGestureSettings.class); - addIndex(PickupGestureSettings.class); - addIndex(DoubleTapScreenSettings.class); - addIndex(DoubleTapPowerSettings.class); - addIndex(DoubleTwistGestureSettings.class); - addIndex(SwipeToNotificationSettings.class); - addIndex(GestureSettings.class); - addIndex(LanguageAndInputSettings.class); - addIndex(LocationSettings.class); - addIndex(ScanningSettings.class); - addIndex(SecuritySettings.class); - addIndex(ScreenLockSettings.class); - addIndex(EncryptionAndCredential.class); - addIndex(ScreenPinningSettings.class); - addIndex(UserAndAccountDashboardFragment.class); - addIndex(VirtualKeyboardFragment.class); - addIndex(AvailableVirtualKeyboardFragment.class); - addIndex(PhysicalKeyboardFragment.class); - addIndex(BackupSettingsActivity.class); - addIndex(BackupSettingsFragment.class); - addIndex(DateTimeSettings.class); - addIndex(AccessibilitySettings.class); - addIndex(PrintSettingsFragment.class); - addIndex(DevelopmentSettingsDashboardFragment.class); - addIndex(DeviceInfoSettings.class); - addIndex(Status.class); - addIndex(LegalSettings.class); - addIndex(SystemDashboardFragment.class); - addIndex(ResetDashboardFragment.class); - addIndex(StorageDashboardFragment.class); - addIndex(ConnectedDeviceDashboardFragment.class); - addIndex(EnterprisePrivacySettings.class); - addIndex(PaymentSettings.class); - addIndex(TextToSpeechSettings.class); - addIndex(TtsEnginePreferenceFragment.class); - addIndex(MagnificationPreferenceFragment.class); - addIndex(AccessibilityShortcutPreferenceFragment.class); - addIndex(DreamSettings.class); - addIndex(SupportDashboardActivity.class); - addIndex(AutomaticStorageManagerSettings.class); - addIndex(ConfigureNotificationSettings.class); - addIndex(PowerUsageSummary.class); - addIndex(BatterySaverSettings.class); - addIndex(LockscreenDashboardFragment.class); - addIndex(ZenModeBehaviorSettings.class); - addIndex(ZenModeAutomationSettings.class); - } - - private SearchIndexableResources() { - } - - public static Collection providerValues() { return sProviders;} -} \ No newline at end of file diff --git a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java index 968847b9b27..0422e67198f 100644 --- a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java +++ b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java @@ -46,21 +46,164 @@ import android.database.Cursor; import android.database.MatrixCursor; import android.provider.SearchIndexableResource; import android.provider.SearchIndexablesProvider; +import android.support.annotation.VisibleForTesting; import android.text.TextUtils; import android.util.ArraySet; import android.util.Log; +import com.android.settings.DateTimeSettings; +import com.android.settings.DeviceInfoSettings; +import com.android.settings.DisplaySettings; +import com.android.settings.LegalSettings; +import com.android.settings.ScreenPinningSettings; +import com.android.settings.accessibility.AccessibilitySettings; +import com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment; +import com.android.settings.accessibility.MagnificationPreferenceFragment; +import com.android.settings.accounts.UserAndAccountDashboardFragment; +import com.android.settings.applications.AppAndNotificationDashboardFragment; +import com.android.settings.applications.DefaultAppSettings; +import com.android.settings.applications.SpecialAccessSettings; +import com.android.settings.applications.assist.ManageAssist; +import com.android.settings.backup.BackupSettingsActivity; +import com.android.settings.backup.BackupSettingsFragment; +import com.android.settings.bluetooth.BluetoothSettings; +import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment; +import com.android.settings.datausage.DataUsageMeteredSettings; +import com.android.settings.datausage.DataUsageSummary; +import com.android.settings.deletionhelper.AutomaticStorageManagerSettings; +import com.android.settings.development.DevelopmentSettingsDashboardFragment; +import com.android.settings.deviceinfo.Status; +import com.android.settings.deviceinfo.StorageDashboardFragment; +import com.android.settings.deviceinfo.StorageSettings; +import com.android.settings.display.AmbientDisplaySettings; +import com.android.settings.display.ScreenZoomSettings; +import com.android.settings.dream.DreamSettings; +import com.android.settings.enterprise.EnterprisePrivacySettings; +import com.android.settings.fuelgauge.BatterySaverSettings; +import com.android.settings.fuelgauge.PowerUsageAdvanced; +import com.android.settings.fuelgauge.PowerUsageSummary; +import com.android.settings.gestures.AssistGestureSettings; +import com.android.settings.gestures.DoubleTapPowerSettings; +import com.android.settings.gestures.DoubleTapScreenSettings; +import com.android.settings.gestures.DoubleTwistGestureSettings; +import com.android.settings.gestures.GestureSettings; +import com.android.settings.gestures.PickupGestureSettings; +import com.android.settings.gestures.SwipeToNotificationSettings; +import com.android.settings.inputmethod.AvailableVirtualKeyboardFragment; +import com.android.settings.inputmethod.PhysicalKeyboardFragment; +import com.android.settings.inputmethod.VirtualKeyboardFragment; +import com.android.settings.language.LanguageAndInputSettings; +import com.android.settings.location.LocationSettings; +import com.android.settings.location.ScanningSettings; +import com.android.settings.network.NetworkDashboardFragment; +import com.android.settings.nfc.PaymentSettings; +import com.android.settings.notification.ConfigureNotificationSettings; +import com.android.settings.notification.SoundSettings; +import com.android.settings.notification.ZenModeAutomationSettings; +import com.android.settings.notification.ZenModeBehaviorSettings; +import com.android.settings.notification.ZenModeSettings; +import com.android.settings.print.PrintSettingsFragment; +import com.android.settings.security.EncryptionAndCredential; +import com.android.settings.security.LockscreenDashboardFragment; +import com.android.settings.security.SecuritySettings; +import com.android.settings.security.screenlock.ScreenLockSettings; +import com.android.settings.sim.SimSettings; +import com.android.settings.support.SupportDashboardActivity; +import com.android.settings.system.ResetDashboardFragment; +import com.android.settings.system.SystemDashboardFragment; +import com.android.settings.tts.TextToSpeechSettings; +import com.android.settings.tts.TtsEnginePreferenceFragment; +import com.android.settings.users.UserSettings; +import com.android.settings.wallpaper.WallpaperTypeSettings; +import com.android.settings.wifi.ConfigureWifiSettings; +import com.android.settings.wifi.WifiSettings; + import java.util.ArrayList; import java.util.Collection; +import java.util.HashSet; import java.util.List; +import java.util.Set; public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider { public static final boolean DEBUG = false; private static final String TAG = "SettingsSearchProvider"; + public static final Set INDEXABLES = new HashSet<>(); private static final Collection INVALID_KEYS; + @VisibleForTesting + static void addIndex(Class indexClass) { + INDEXABLES.add(indexClass); + } + static { + addIndex(WifiSettings.class); + addIndex(NetworkDashboardFragment.class); + addIndex(ConfigureWifiSettings.class); + addIndex(BluetoothSettings.class); + addIndex(SimSettings.class); + addIndex(DataUsageSummary.class); + addIndex(DataUsageMeteredSettings.class); + addIndex(ScreenZoomSettings.class); + addIndex(DisplaySettings.class); + addIndex(AmbientDisplaySettings.class); + addIndex(WallpaperTypeSettings.class); + addIndex(AppAndNotificationDashboardFragment.class); + addIndex(SoundSettings.class); + addIndex(ZenModeSettings.class); + addIndex(StorageSettings.class); + addIndex(PowerUsageAdvanced.class); + addIndex(DefaultAppSettings.class); + addIndex(ManageAssist.class); + addIndex(SpecialAccessSettings.class); + addIndex(UserSettings.class); + addIndex(AssistGestureSettings.class); + addIndex(PickupGestureSettings.class); + addIndex(DoubleTapScreenSettings.class); + addIndex(DoubleTapPowerSettings.class); + addIndex(DoubleTwistGestureSettings.class); + addIndex(SwipeToNotificationSettings.class); + addIndex(GestureSettings.class); + addIndex(LanguageAndInputSettings.class); + addIndex(LocationSettings.class); + addIndex(ScanningSettings.class); + addIndex(SecuritySettings.class); + addIndex(ScreenLockSettings.class); + addIndex(EncryptionAndCredential.class); + addIndex(ScreenPinningSettings.class); + addIndex(UserAndAccountDashboardFragment.class); + addIndex(VirtualKeyboardFragment.class); + addIndex(AvailableVirtualKeyboardFragment.class); + addIndex(PhysicalKeyboardFragment.class); + addIndex(BackupSettingsActivity.class); + addIndex(BackupSettingsFragment.class); + addIndex(DateTimeSettings.class); + addIndex(AccessibilitySettings.class); + addIndex(PrintSettingsFragment.class); + addIndex(DevelopmentSettingsDashboardFragment.class); + addIndex(DeviceInfoSettings.class); + addIndex(Status.class); + addIndex(LegalSettings.class); + addIndex(SystemDashboardFragment.class); + addIndex(ResetDashboardFragment.class); + addIndex(StorageDashboardFragment.class); + addIndex(ConnectedDeviceDashboardFragment.class); + addIndex(EnterprisePrivacySettings.class); + addIndex(PaymentSettings.class); + addIndex(TextToSpeechSettings.class); + addIndex(TtsEnginePreferenceFragment.class); + addIndex(MagnificationPreferenceFragment.class); + addIndex(AccessibilityShortcutPreferenceFragment.class); + addIndex(DreamSettings.class); + addIndex(SupportDashboardActivity.class); + addIndex(AutomaticStorageManagerSettings.class); + addIndex(ConfigureNotificationSettings.class); + addIndex(PowerUsageSummary.class); + addIndex(BatterySaverSettings.class); + addIndex(LockscreenDashboardFragment.class); + addIndex(ZenModeBehaviorSettings.class); + addIndex(ZenModeAutomationSettings.class); + INVALID_KEYS = new ArraySet<>(); INVALID_KEYS.add(null); INVALID_KEYS.add(""); @@ -135,10 +278,9 @@ public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider { } private List getNonIndexableKeysFromProvider(Context context) { - final Collection values = SearchIndexableResources.providerValues(); final List nonIndexableKeys = new ArrayList<>(); - for (Class clazz : values) { + for (Class clazz : INDEXABLES) { final long startTime = System.currentTimeMillis(); Indexable.SearchIndexProvider provider = DatabaseIndexingUtils.getSearchIndexProvider( clazz); @@ -169,10 +311,9 @@ public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider { } private List getSearchIndexableResourcesFromProvider(Context context) { - Collection values = SearchIndexableResources.providerValues(); List resourceList = new ArrayList<>(); - for (Class clazz : values) { + for (Class clazz : INDEXABLES) { Indexable.SearchIndexProvider provider = DatabaseIndexingUtils.getSearchIndexProvider( clazz); @@ -196,10 +337,9 @@ public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider { } private List getSearchIndexableRawFromProvider(Context context) { - final Collection values = SearchIndexableResources.providerValues(); final List rawList = new ArrayList<>(); - for (Class clazz : values) { + for (Class clazz : INDEXABLES) { Indexable.SearchIndexProvider provider = DatabaseIndexingUtils.getSearchIndexProvider( clazz); final List providerRaws = provider.getRawDataToIndex(context, diff --git a/tests/robotests/src/com/android/settings/search/SearchIndexProviderCodeInspector.java b/tests/robotests/src/com/android/settings/search/SearchIndexProviderCodeInspector.java index 3c51a90a51f..faf428054bd 100644 --- a/tests/robotests/src/com/android/settings/search/SearchIndexProviderCodeInspector.java +++ b/tests/robotests/src/com/android/settings/search/SearchIndexProviderCodeInspector.java @@ -16,6 +16,8 @@ package com.android.settings.search; +import static com.google.common.truth.Truth.assertWithMessage; + import android.util.ArraySet; import android.util.Log; @@ -28,8 +30,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Set; -import static com.google.common.truth.Truth.assertWithMessage; - /** * {@link CodeInspector} to ensure fragments implement search components correctly. */ @@ -47,7 +47,7 @@ public class SearchIndexProviderCodeInspector extends CodeInspector { + " these are not: \n"; private static final String NOT_IN_INDEXABLE_PROVIDER_REGISTRY = "Class containing " + DatabaseIndexingManager.FIELD_NAME_SEARCH_INDEX_DATA_PROVIDER - + " must be added to " + SearchIndexableResources.class.getName() + + " must be added to " + SettingsSearchIndexablesProvider.class.getName() + " but these are not: \n"; private final List notImplementingIndexableGrandfatherList; @@ -114,7 +114,7 @@ public class SearchIndexProviderCodeInspector extends CodeInspector { continue; } // Must be in SearchProviderRegistry - if (!SearchIndexableResources.providerValues().contains(clazz)) { + if (!SettingsSearchIndexablesProvider.INDEXABLES.contains(clazz)) { if (!notInSearchIndexableRegistryGrandfatherList.remove(className)) { notInSearchProviderRegistry.add(className); } diff --git a/tests/robotests/src/com/android/settings/search/SearchIndexableResourcesTest.java b/tests/robotests/src/com/android/settings/search/SearchIndexableResourcesTest.java index eedb324ce28..bb9d0ca3df9 100644 --- a/tests/robotests/src/com/android/settings/search/SearchIndexableResourcesTest.java +++ b/tests/robotests/src/com/android/settings/search/SearchIndexableResourcesTest.java @@ -18,9 +18,7 @@ package com.android.settings.search; import static android.provider.SearchIndexablesContract.COLUMN_INDEX_NON_INDEXABLE_KEYS_KEY_VALUE; import static com.google.common.truth.Truth.assertThat; - import static junit.framework.Assert.fail; - import static org.mockito.Mockito.spy; import android.database.Cursor; @@ -40,45 +38,45 @@ import java.util.HashSet; import java.util.Set; @RunWith(SettingsRobolectricTestRunner.class) -@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) +@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O) public class SearchIndexableResourcesTest { - Set sProviderClassCopy; + private Set mProviderClassCopy; @Before public void setUp() { - sProviderClassCopy = new HashSet<>(SearchIndexableResources.sProviders); + mProviderClassCopy = new HashSet<>(SettingsSearchIndexablesProvider.INDEXABLES); } @After public void cleanUp() { - SearchIndexableResources.sProviders.clear(); - SearchIndexableResources.sProviders.addAll(sProviderClassCopy); + SettingsSearchIndexablesProvider.INDEXABLES.clear(); + SettingsSearchIndexablesProvider.INDEXABLES.addAll(mProviderClassCopy); } @Test public void testAddIndex() { final Class stringClass = java.lang.String.class; // Confirms that String.class isn't contained in SearchIndexableResources. - assertThat(SearchIndexableResources.sProviders).doesNotContain(stringClass); - final int beforeCount = SearchIndexableResources.providerValues().size(); + assertThat(SettingsSearchIndexablesProvider.INDEXABLES).doesNotContain(stringClass); + final int beforeCount = SettingsSearchIndexablesProvider.INDEXABLES.size(); - SearchIndexableResources.addIndex(java.lang.String.class); + SettingsSearchIndexablesProvider.addIndex(java.lang.String.class); - assertThat(SearchIndexableResources.sProviders).contains(stringClass); - final int afterCount = SearchIndexableResources.providerValues().size(); + assertThat(SettingsSearchIndexablesProvider.INDEXABLES).contains(stringClass); + final int afterCount = SettingsSearchIndexablesProvider.INDEXABLES.size(); assertThat(afterCount).isEqualTo(beforeCount + 1); } @Test public void testIndexHasWifiSettings() { - assertThat(sProviderClassCopy).contains(WifiSettings.class); + assertThat(mProviderClassCopy).contains(WifiSettings.class); } @Test public void testNonIndexableKeys_GetsKeyFromProvider() { - SearchIndexableResources.sProviders.clear(); - SearchIndexableResources.addIndex(FakeIndexProvider.class); + SettingsSearchIndexablesProvider.INDEXABLES.clear(); + SettingsSearchIndexablesProvider.addIndex(FakeIndexProvider.class); SettingsSearchIndexablesProvider provider = spy(new SettingsSearchIndexablesProvider()); @@ -97,8 +95,8 @@ public class SearchIndexableResourcesTest { @Test public void testAllClassNamesHaveProviders() { - for (Class clazz: sProviderClassCopy) { - if(DatabaseIndexingUtils.getSearchIndexProvider(clazz) == null) { + for (Class clazz : mProviderClassCopy) { + if (DatabaseIndexingUtils.getSearchIndexProvider(clazz) == null) { fail(clazz.getName() + "is not an index provider"); } } diff --git a/tests/robotests/src/com/android/settings/search/SettingsSearchIndexablesProviderTest.java b/tests/robotests/src/com/android/settings/search/SettingsSearchIndexablesProviderTest.java index efeaed71cd2..921dcb6380f 100644 --- a/tests/robotests/src/com/android/settings/search/SettingsSearchIndexablesProviderTest.java +++ b/tests/robotests/src/com/android/settings/search/SettingsSearchIndexablesProviderTest.java @@ -2,8 +2,6 @@ package com.android.settings.search; import static com.google.common.truth.Truth.assertThat; -import static org.mockito.Mockito.spy; - import android.Manifest; import android.content.Context; import android.content.pm.ProviderInfo; @@ -27,21 +25,21 @@ import java.util.HashSet; import java.util.Set; @RunWith(SettingsRobolectricTestRunner.class) -@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) +@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O) public class SettingsSearchIndexablesProviderTest { private final String BASE_AUTHORITY = "com.android.settings"; private SettingsSearchIndexablesProvider mProvider; - Set sProviderClasses; - Context mContext; + private Set mProviderClasses; + private Context mContext; @Before public void setUp() { mContext = RuntimeEnvironment.application; - mProvider = spy(new SettingsSearchIndexablesProvider()); + mProvider = new SettingsSearchIndexablesProvider(); ProviderInfo info = new ProviderInfo(); info.exported = true; info.grantUriPermissions = true; @@ -49,15 +47,15 @@ public class SettingsSearchIndexablesProviderTest { info.readPermission = Manifest.permission.READ_SEARCH_INDEXABLES; mProvider.attachInfo(mContext, info); - sProviderClasses = new HashSet<>(SearchIndexableResources.sProviders); - SearchIndexableResources.sProviders.clear(); - SearchIndexableResources.sProviders.add(FakeSettingsFragment.class); + mProviderClasses = new HashSet<>(SettingsSearchIndexablesProvider.INDEXABLES); + SettingsSearchIndexablesProvider.INDEXABLES.clear(); + SettingsSearchIndexablesProvider.INDEXABLES.add(FakeSettingsFragment.class); } @After public void cleanUp() { - SearchIndexableResources.sProviders.clear(); - SearchIndexableResources.sProviders.addAll(sProviderClasses); + SettingsSearchIndexablesProvider.INDEXABLES.clear(); + SettingsSearchIndexablesProvider.INDEXABLES.addAll(mProviderClasses); } @Test diff --git a/tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java b/tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java index bc82125955f..5296c36d0e5 100644 --- a/tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java +++ b/tests/unit/src/com/android/settings/core/PreferenceControllerContractTest.java @@ -20,7 +20,6 @@ import static junit.framework.Assert.fail; import android.content.Context; import android.platform.test.annotations.Presubmit; -import android.provider.SearchIndexableResource; import android.support.test.InstrumentationRegistry; import android.support.test.filters.MediumTest; import android.support.test.runner.AndroidJUnit4; @@ -28,7 +27,7 @@ import android.util.ArraySet; import com.android.settings.search.DatabaseIndexingUtils; import com.android.settings.search.Indexable; -import com.android.settings.search.SearchIndexableResources; +import com.android.settings.search.SettingsSearchIndexablesProvider; import com.android.settingslib.core.AbstractPreferenceController; import org.junit.Before; @@ -54,7 +53,7 @@ public class PreferenceControllerContractTest { public void controllersInSearchShouldImplementPreferenceControllerMixin() { final Set errorClasses = new ArraySet<>(); - for (Class clazz: SearchIndexableResources.providerValues()) { + for (Class clazz: SettingsSearchIndexablesProvider.INDEXABLES) { final Indexable.SearchIndexProvider provider = DatabaseIndexingUtils.getSearchIndexProvider(clazz); diff --git a/tests/unit/src/com/android/settings/core/UniquePreferenceTest.java b/tests/unit/src/com/android/settings/core/UniquePreferenceTest.java index 5f3e512b2f5..87b1a32512d 100644 --- a/tests/unit/src/com/android/settings/core/UniquePreferenceTest.java +++ b/tests/unit/src/com/android/settings/core/UniquePreferenceTest.java @@ -33,7 +33,7 @@ import android.util.Xml; import com.android.settings.search.DatabaseIndexingUtils; import com.android.settings.search.Indexable; -import com.android.settings.search.SearchIndexableResources; +import com.android.settings.search.SettingsSearchIndexablesProvider; import com.android.settings.search.XmlParserUtils; import org.junit.Before; @@ -90,7 +90,7 @@ public class UniquePreferenceTest { final Set uniqueKeys = new HashSet<>(); final Set nullKeyClasses = new HashSet<>(); final Set duplicatedKeys = new HashSet<>(); - for (Class clazz : SearchIndexableResources.providerValues()) { + for (Class clazz : SettingsSearchIndexablesProvider.INDEXABLES) { verifyPreferenceIdInXml(uniqueKeys, duplicatedKeys, nullKeyClasses, clazz); }