Commit 9e128b59 authored by Evan Stade's avatar Evan Stade Committed by Commit Bot

Clank: Convert various PrefServiceBridge uses to PrefService.

Bug: 1071603
Change-Id: Ib53af1b0ed6ca217b0e3b78a5fd41c5eefe240af
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2304136Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Commit-Queue: Evan Stade <estade@chromium.org>
Cr-Commit-Position: refs/heads/master@{#789599}
parent 79c0dfbc
...@@ -243,6 +243,7 @@ chrome_test_java_sources = [ ...@@ -243,6 +243,7 @@ chrome_test_java_sources = [
"javatests/src/org/chromium/chrome/browser/interstitials/LookalikeInterstitialTest.java", "javatests/src/org/chromium/chrome/browser/interstitials/LookalikeInterstitialTest.java",
"javatests/src/org/chromium/chrome/browser/jsdialog/JavascriptAppModalDialogTest.java", "javatests/src/org/chromium/chrome/browser/jsdialog/JavascriptAppModalDialogTest.java",
"javatests/src/org/chromium/chrome/browser/jsdialog/JavascriptTabModalDialogTest.java", "javatests/src/org/chromium/chrome/browser/jsdialog/JavascriptTabModalDialogTest.java",
"javatests/src/org/chromium/chrome/browser/language/settings/LanguageSettingsTest.java",
"javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelperTest.java", "javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelperTest.java",
"javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelperUtils.java", "javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelperUtils.java",
"javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEnginePromoDialogTest.java", "javatests/src/org/chromium/chrome/browser/locale/DefaultSearchEnginePromoDialogTest.java",
...@@ -457,7 +458,6 @@ chrome_test_java_sources = [ ...@@ -457,7 +458,6 @@ chrome_test_java_sources = [
"javatests/src/org/chromium/chrome/browser/services/GoogleServicesManagerIntegrationTest.java", "javatests/src/org/chromium/chrome/browser/services/GoogleServicesManagerIntegrationTest.java",
"javatests/src/org/chromium/chrome/browser/settings/MainSettingsFragmentTest.java", "javatests/src/org/chromium/chrome/browser/settings/MainSettingsFragmentTest.java",
"javatests/src/org/chromium/chrome/browser/settings/SettingsActivityTest.java", "javatests/src/org/chromium/chrome/browser/settings/SettingsActivityTest.java",
"javatests/src/org/chromium/chrome/browser/settings/language/LanguageSettingsTest.java",
"javatests/src/org/chromium/chrome/browser/shape_detection/ShapeDetectionTest.java", "javatests/src/org/chromium/chrome/browser/shape_detection/ShapeDetectionTest.java",
"javatests/src/org/chromium/chrome/browser/share/LensUtilsTest.java", "javatests/src/org/chromium/chrome/browser/share/LensUtilsTest.java",
"javatests/src/org/chromium/chrome/browser/share/ShareButtonControllerTest.java", "javatests/src/org/chromium/chrome/browser/share/ShareButtonControllerTest.java",
......
...@@ -32,7 +32,6 @@ import org.chromium.chrome.browser.ntp.cards.promo.HomepagePromoVariationManager ...@@ -32,7 +32,6 @@ import org.chromium.chrome.browser.ntp.cards.promo.HomepagePromoVariationManager
import org.chromium.chrome.browser.ntp.snippets.SectionHeader; import org.chromium.chrome.browser.ntp.snippets.SectionHeader;
import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefChangeRegistrar; import org.chromium.chrome.browser.preferences.PrefChangeRegistrar;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory;
import org.chromium.chrome.browser.signin.IdentityServicesProvider; import org.chromium.chrome.browser.signin.IdentityServicesProvider;
...@@ -290,8 +289,7 @@ class FeedSurfaceMediator implements NewTabPageLayout.ScrollDelegate, ...@@ -290,8 +289,7 @@ class FeedSurfaceMediator implements NewTabPageLayout.ScrollDelegate,
private boolean createSignInPromoIfNeeded() { private boolean createSignInPromoIfNeeded() {
if (!SignInPromo.shouldCreatePromo()) return false; if (!SignInPromo.shouldCreatePromo()) return false;
if (mSignInPromo == null) { if (mSignInPromo == null) {
boolean suggestionsVisible = boolean suggestionsVisible = getPrefService().getBoolean(Pref.ARTICLES_LIST_VISIBLE);
PrefServiceBridge.getInstance().getBoolean(Pref.ARTICLES_LIST_VISIBLE);
mSignInPromo = new FeedSignInPromo(mSigninManager); mSignInPromo = new FeedSignInPromo(mSigninManager);
mSignInPromo.setCanShowPersonalizedSuggestions(suggestionsVisible); mSignInPromo.setCanShowPersonalizedSuggestions(suggestionsVisible);
......
...@@ -75,10 +75,6 @@ class ContextualSearchPolicy { ...@@ -75,10 +75,6 @@ class ContextualSearchPolicy {
mSearchPanel = panel; mSearchPanel = panel;
} }
// TODO(donnd): Consider adding a test-only constructor that uses dependency injection of a
// preference manager and PrefServiceBridge. Currently this is not possible because the
// PrefServiceBridge is final.
/** /**
* @return The number of additional times to show the promo on tap, 0 if it should not be shown, * @return The number of additional times to show the promo on tap, 0 if it should not be shown,
* or a negative value if the counter has been disabled or the user has accepted * or a negative value if the counter has been disabled or the user has accepted
...@@ -489,7 +485,6 @@ class ContextualSearchPolicy { ...@@ -489,7 +485,6 @@ class ContextualSearchPolicy {
* on enabling or disabling the feature. * on enabling or disabling the feature.
*/ */
boolean isUserUndecided() { boolean isUserUndecided() {
// TODO(donnd) use dependency injection for the PrefServiceBridge instead!
if (mDidOverrideDecidedStateForTesting) return !mDecidedStateForTesting; if (mDidOverrideDecidedStateForTesting) return !mDecidedStateForTesting;
return ContextualSearchManager.isContextualSearchUninitialized(); return ContextualSearchManager.isContextualSearchUninitialized();
......
...@@ -8,6 +8,7 @@ import android.app.Activity; ...@@ -8,6 +8,7 @@ import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceFragmentCompat;
...@@ -92,7 +93,8 @@ public class LanguageSettings ...@@ -92,7 +93,8 @@ public class LanguageSettings
startActivityForResult(intent, REQUEST_CODE_ADD_LANGUAGES); startActivityForResult(intent, REQUEST_CODE_ADD_LANGUAGES);
} }
private PrefService getPrefService() { @VisibleForTesting
static PrefService getPrefService() {
return UserPrefs.get(Profile.getLastUsedRegularProfile()); return UserPrefs.get(Profile.getLastUsedRegularProfile());
} }
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
package org.chromium.chrome.browser.settings.language; package org.chromium.chrome.browser.language.settings;
import static androidx.test.espresso.Espresso.onView; import static androidx.test.espresso.Espresso.onView;
import static androidx.test.espresso.action.ViewActions.click; import static androidx.test.espresso.action.ViewActions.click;
...@@ -33,11 +33,7 @@ import org.chromium.base.test.util.CommandLineFlags; ...@@ -33,11 +33,7 @@ import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.flags.ChromeSwitches; import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.language.settings.LanguageItem;
import org.chromium.chrome.browser.language.settings.LanguageListBaseAdapter;
import org.chromium.chrome.browser.language.settings.LanguageSettings;
import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.settings.SettingsActivity; import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule; import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.translate.TranslateBridge; import org.chromium.chrome.browser.translate.TranslateBridge;
...@@ -148,8 +144,8 @@ public class LanguageSettingsTest { ...@@ -148,8 +144,8 @@ public class LanguageSettingsTest {
onView(allOf(hasSibling(withText(R.string.languages_item_option_offer_to_translate)), onView(allOf(hasSibling(withText(R.string.languages_item_option_offer_to_translate)),
withId(R.id.menu_item_end_icon))) withId(R.id.menu_item_end_icon)))
.check((v, e) -> { .check((v, e) -> {
Assert.assertNotNull( Assert.assertNotNull("There should exist an icon next to the text to indicate "
"There should exist an icon next to the text to indicate 'offer to translate' is on", + "'offer to translate' is on",
((ImageView) v).getDrawable()); ((ImageView) v).getDrawable());
}); });
...@@ -187,9 +183,9 @@ public class LanguageSettingsTest { ...@@ -187,9 +183,9 @@ public class LanguageSettingsTest {
boolean enabledInDefault = pref.isChecked(); boolean enabledInDefault = pref.isChecked();
TestThreadUtils.runOnUiThreadBlocking(() -> { TestThreadUtils.runOnUiThreadBlocking(() -> {
boolean enabled = boolean enabled =
PrefServiceBridge.getInstance().getBoolean(Pref.OFFER_TRANSLATE_ENABLED); LanguageSettings.getPrefService().getBoolean(Pref.OFFER_TRANSLATE_ENABLED);
Assert.assertEquals( Assert.assertEquals("The state of switch widget is different from local preference of "
"The state of switch widget is different from local preference of 'offer to translate'.", + "'offer to translate'.",
enabledInDefault, enabled); enabledInDefault, enabled);
}); });
...@@ -204,10 +200,10 @@ public class LanguageSettingsTest { ...@@ -204,10 +200,10 @@ public class LanguageSettingsTest {
// Toggle the switch. // Toggle the switch.
onView(withId(R.id.switchWidget)).perform(click()); onView(withId(R.id.switchWidget)).perform(click());
TestThreadUtils.runOnUiThreadBlocking(() -> { TestThreadUtils.runOnUiThreadBlocking(() -> {
Assert.assertEquals( Assert.assertEquals("Preference of 'offer to translate' should be toggled when switch "
"Preference of 'offer to translate' should be toggled when switch widget is clicked.", + "widget is clicked.",
!enabledInDefault, !enabledInDefault,
PrefServiceBridge.getInstance().getBoolean(Pref.OFFER_TRANSLATE_ENABLED)); LanguageSettings.getPrefService().getBoolean(Pref.OFFER_TRANSLATE_ENABLED));
}); });
TestThreadUtils.runOnUiThreadBlocking((Runnable) moreButton::performClick); TestThreadUtils.runOnUiThreadBlocking((Runnable) moreButton::performClick);
...@@ -217,7 +213,7 @@ public class LanguageSettingsTest { ...@@ -217,7 +213,7 @@ public class LanguageSettingsTest {
// Reset state. // Reset state.
TestThreadUtils.runOnUiThreadBlocking(() -> { TestThreadUtils.runOnUiThreadBlocking(() -> {
PrefServiceBridge.getInstance().setBoolean( LanguageSettings.getPrefService().setBoolean(
Pref.OFFER_TRANSLATE_ENABLED, enabledInDefault); Pref.OFFER_TRANSLATE_ENABLED, enabledInDefault);
}); });
} }
......
...@@ -57,8 +57,8 @@ import org.chromium.chrome.browser.ntp.cards.promo.HomepagePromoUtils.HomepagePr ...@@ -57,8 +57,8 @@ import org.chromium.chrome.browser.ntp.cards.promo.HomepagePromoUtils.HomepagePr
import org.chromium.chrome.browser.partnercustomizations.BasePartnerBrowserCustomizationIntegrationTestRule; import org.chromium.chrome.browser.partnercustomizations.BasePartnerBrowserCustomizationIntegrationTestRule;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager; import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.toolbar.HomeButton; import org.chromium.chrome.browser.toolbar.HomeButton;
import org.chromium.chrome.browser.toolbar.ToolbarManager; import org.chromium.chrome.browser.toolbar.ToolbarManager;
...@@ -75,6 +75,7 @@ import org.chromium.components.embedder_support.util.UrlConstants; ...@@ -75,6 +75,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.components.feature_engagement.EventConstants; import org.chromium.components.feature_engagement.EventConstants;
import org.chromium.components.feature_engagement.FeatureConstants; import org.chromium.components.feature_engagement.FeatureConstants;
import org.chromium.components.feature_engagement.Tracker; import org.chromium.components.feature_engagement.Tracker;
import org.chromium.components.user_prefs.UserPrefs;
import org.chromium.content_public.browser.test.util.Criteria; import org.chromium.content_public.browser.test.util.Criteria;
import org.chromium.content_public.browser.test.util.CriteriaHelper; import org.chromium.content_public.browser.test.util.CriteriaHelper;
import org.chromium.content_public.browser.test.util.TestThreadUtils; import org.chromium.content_public.browser.test.util.TestThreadUtils;
...@@ -293,7 +294,8 @@ public class HomepagePromoTest { ...@@ -293,7 +294,8 @@ public class HomepagePromoTest {
public void testToggleFeed_WithHomepage() { public void testToggleFeed_WithHomepage() {
// Test to toggle NTP when feed is hidden. // Test to toggle NTP when feed is hidden.
TestThreadUtils.runOnUiThreadBlocking(() -> { TestThreadUtils.runOnUiThreadBlocking(() -> {
PrefServiceBridge.getInstance().setBoolean(Pref.ARTICLES_LIST_VISIBLE, false); UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.ARTICLES_LIST_VISIBLE, false);
}); });
launchNewTabPage(); launchNewTabPage();
......
...@@ -19,8 +19,9 @@ import org.junit.runner.RunWith; ...@@ -19,8 +19,9 @@ import org.junit.runner.RunWith;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer; import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.PrefServiceBridge; import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner; import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.components.user_prefs.UserPrefs;
import org.chromium.content_public.browser.test.util.CriteriaHelper; import org.chromium.content_public.browser.test.util.CriteriaHelper;
import org.chromium.content_public.browser.test.util.TestThreadUtils; import org.chromium.content_public.browser.test.util.TestThreadUtils;
import org.chromium.policy.test.annotations.Policies; import org.chromium.policy.test.annotations.Policies;
...@@ -42,8 +43,8 @@ public class SettingsActivityTest { ...@@ -42,8 +43,8 @@ public class SettingsActivityTest {
() -> { ChromeBrowserInitializer.getInstance().handleSynchronousStartup(); }); () -> { ChromeBrowserInitializer.getInstance().handleSynchronousStartup(); });
CriteriaHelper.pollUiThread(() -> { CriteriaHelper.pollUiThread(() -> {
return PrefServiceBridge.getInstance().isManagedPreference( return UserPrefs.get(Profile.getLastUsedRegularProfile())
Pref.CREDENTIALS_ENABLE_SERVICE); .isManagedPreference(Pref.CREDENTIALS_ENABLE_SERVICE);
}); });
mSettingsActivityTestRule.startSettingsActivity(); mSettingsActivityTestRule.startSettingsActivity();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment