Commit 3c9698f2 authored by Wenyu Fu's avatar Wenyu Fu Committed by Commit Bot

Remove SettingsActivityTest#startSettingsActivity

As follow-up of the creation of SettingsActivityTestRule. Move all the
calls from SettingsActivityTest#startSettingsActivity to
SettingsActivityTestRule#startSettingsActivity.

Bug: 1066660
Change-Id: Ibf54ac73c82118bdfb53451b01e3a4aba982b912
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2134941
Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Cr-Commit-Position: refs/heads/master@{#758649}
parent cfd7ad6e
......@@ -17,13 +17,15 @@ import android.support.test.filters.SmallTest;
import androidx.preference.Preference;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.chromium.base.task.PostTask;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.accessibility.FontSizePrefs;
import org.chromium.chrome.browser.settings.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference;
import org.chromium.content_public.browser.UiThreadTaskTraits;
......@@ -38,6 +40,15 @@ import java.text.NumberFormat;
*/
@RunWith(ChromeJUnit4ClassRunner.class)
public class AccessibilitySettingsTest {
@Rule
public SettingsActivityTestRule<AccessibilitySettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(AccessibilitySettings.class);
@Before
public void setUp() {
mSettingsActivityTestRule.startSettingsActivity();
}
/**
* Tests setting FontScaleFactor and ForceEnableZoom in AccessibilitySettings and ensures
* that ForceEnableZoom changes corresponding to FontScaleFactor.
......@@ -46,12 +57,7 @@ public class AccessibilitySettingsTest {
@SmallTest
@Feature({"Accessibility"})
public void testAccessibilitySettings() throws Exception {
String accessibilitySettingsClassname = AccessibilitySettings.class.getName();
AccessibilitySettings accessibilitySettings =
(AccessibilitySettings) SettingsActivityTest
.startSettingsActivity(InstrumentationRegistry.getInstrumentation(),
accessibilitySettingsClassname)
.getMainFragment();
AccessibilitySettings accessibilitySettings = mSettingsActivityTestRule.getFragment();
TextScalePreference textScalePref =
(TextScalePreference) accessibilitySettings.findPreference(
AccessibilitySettings.PREF_TEXT_SCALE);
......@@ -98,12 +104,7 @@ public class AccessibilitySettingsTest {
@SmallTest
@Feature({"Accessibility"})
public void testCaptionPreferences() {
String accessibilitySettingsClassname = AccessibilitySettings.class.getName();
AccessibilitySettings accessibilitySettings =
(AccessibilitySettings) SettingsActivityTest
.startSettingsActivity(InstrumentationRegistry.getInstrumentation(),
accessibilitySettingsClassname)
.getMainFragment();
AccessibilitySettings accessibilitySettings = mSettingsActivityTestRule.getFragment();
Preference captionsPref =
accessibilitySettings.findPreference(AccessibilitySettings.PREF_CAPTIONS);
Assert.assertNotNull(captionsPref);
......
......@@ -4,7 +4,6 @@
package org.chromium.chrome.browser.autofill.settings;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.MediumTest;
import android.view.KeyEvent;
import android.widget.EditText;
......@@ -24,7 +23,7 @@ import org.chromium.chrome.browser.autofill.AutofillTestHelper;
import org.chromium.chrome.browser.autofill.PersonalDataManager.AutofillProfile;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
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.TestThreadUtils;
......@@ -41,6 +40,9 @@ import java.util.concurrent.TimeoutException;
public class AutofillProfilesFragmentTest {
@Rule
public final AutofillTestRule rule = new AutofillTestRule();
@Rule
public final SettingsActivityTestRule<AutofillProfilesFragment> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(AutofillProfilesFragment.class);
@Before
public void setUp() throws TimeoutException {
......@@ -65,9 +67,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testAddProfile() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
......@@ -108,9 +108,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testAddIncompletedProfile() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
......@@ -133,9 +131,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testDeleteProfile() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
......@@ -167,9 +163,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testEditProfile() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
......@@ -211,9 +205,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testOpenProfileWithCompleteState() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
......@@ -239,11 +231,8 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testOpenProfileWithInvalidState() throws Exception {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
AutofillProfilesFragment autofillProfileFragment =
(AutofillProfilesFragment) activity.getMainFragment();
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment autofillProfileFragment = mSettingsActivityTestRule.getFragment();
// Check the preferences on the initial screen.
Assert.assertEquals(6 /* One toggle + one add button + four profiles. */,
......@@ -267,9 +256,7 @@ public class AutofillProfilesFragmentTest {
@MediumTest
@Feature({"Preferences"})
public void testKeyboardShownOnDpadCenter() throws TimeoutException {
SettingsActivity activity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
AutofillProfilesFragment.class.getName());
SettingsActivity activity = mSettingsActivityTestRule.startSettingsActivity();
AutofillProfilesFragment fragment = (AutofillProfilesFragment) activity.getMainFragment();
AutofillProfileEditorPreference addProfile =
......
......@@ -8,12 +8,12 @@ import static org.chromium.chrome.browser.flags.ChromeFeatureList.DARKEN_WEBSITE
import static org.chromium.chrome.browser.preferences.ChromePreferenceKeys.UI_THEME_DARKEN_WEBSITES_ENABLED;
import static org.chromium.chrome.browser.preferences.ChromePreferenceKeys.UI_THEME_SETTING;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
import android.view.View;
import android.widget.LinearLayout;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
......@@ -26,8 +26,7 @@ import org.chromium.chrome.R;
import org.chromium.chrome.browser.night_mode.NightModeUtils;
import org.chromium.chrome.browser.night_mode.ThemeType;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4RunnerDelegate;
import org.chromium.chrome.test.util.browser.Features;
import org.chromium.components.browser_ui.widget.RadioButtonWithDescription;
......@@ -51,6 +50,10 @@ public class ThemeSettingsFragmentTest extends DummyUiActivityTestCase {
Arrays.asList(new ParameterSet().value(false).name("DefaultLightDisabled"),
new ParameterSet().value(true).name("DefaultLightEnabled"));
@Rule
public SettingsActivityTestRule<ThemeSettingsFragment> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(ThemeSettingsFragment.class);
private boolean mDefaultToLight;
private ThemeSettingsFragment mFragment;
private RadioButtonGroupThemePreference mPreference;
......@@ -65,10 +68,8 @@ public class ThemeSettingsFragmentTest extends DummyUiActivityTestCase {
super.setUpTest();
SharedPreferencesManager.getInstance().removeKey(UI_THEME_SETTING);
SharedPreferencesManager.getInstance().removeKey(UI_THEME_DARKEN_WEBSITES_ENABLED);
SettingsActivity settingsActivity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(),
ThemeSettingsFragment.class.getName());
mFragment = (ThemeSettingsFragment) settingsActivity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
mFragment = mSettingsActivityTestRule.getFragment();
mPreference = (RadioButtonGroupThemePreference) mFragment.findPreference(
ThemeSettingsFragment.PREF_UI_THEME_PREF);
}
......
......@@ -5,7 +5,6 @@
package org.chromium.chrome.browser.notifications.settings;
import android.os.Build;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
import androidx.fragment.app.Fragment;
......@@ -24,7 +23,7 @@ import org.chromium.base.test.util.DisableIf;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.offlinepages.prefetch.PrefetchPrefs;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.site_settings.ContentSettingsResources;
import org.chromium.chrome.browser.site_settings.SingleCategorySettings;
import org.chromium.chrome.browser.site_settings.SiteSettingsCategory;
......@@ -45,6 +44,9 @@ import org.chromium.content_public.browser.test.util.TestThreadUtils;
public class NotificationSettingsTest {
@Rule
public final ChromeBrowserTestRule mBrowserTestRule = new ChromeBrowserTestRule();
@Rule
public final SettingsActivityTestRule<NotificationSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(NotificationSettings.class);
private SettingsActivity mActivity;
@Rule
......@@ -52,8 +54,7 @@ public class NotificationSettingsTest {
@Before
public void setUp() {
mActivity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(), NotificationSettings.class.getName());
mActivity = mSettingsActivityTestRule.startSettingsActivity();
}
// TODO(https://crbug.com/894334): Remove format suppression once formatting bug is fixed.
......@@ -66,8 +67,7 @@ public class NotificationSettingsTest {
public void testContentSuggestionsToggle() {
// clang-format on
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) mActivity.getMainFragment();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final ChromeSwitchPreference toggle = (ChromeSwitchPreference) fragment.findPreference(
NotificationSettings.PREF_SUGGESTIONS);
......@@ -103,7 +103,7 @@ public class NotificationSettingsTest {
public void testToggleDisabledWhenPrefetchingDisabled() {
// clang-format on
PreferenceFragmentCompat fragment = (PreferenceFragmentCompat) mActivity.getMainFragment();
PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
ChromeSwitchPreference toggle = (ChromeSwitchPreference) fragment.findPreference(
NotificationSettings.PREF_SUGGESTIONS);
......@@ -123,8 +123,7 @@ public class NotificationSettingsTest {
// clang-format on
TestThreadUtils.runOnUiThreadBlocking(() -> {
PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) mActivity.getMainFragment();
PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
Preference fromWebsites =
fragment.findPreference(NotificationSettings.PREF_FROM_WEBSITES);
......@@ -154,8 +153,7 @@ public class NotificationSettingsTest {
public void testWebsiteNotificationsSummary() {
// clang-format on
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) mActivity.getMainFragment();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final Preference fromWebsites =
fragment.findPreference(NotificationSettings.PREF_FROM_WEBSITES);
......
......@@ -24,7 +24,7 @@ import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory;
import org.chromium.chrome.browser.settings.MainSettings;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.site_settings.ContentSettingValues;
import org.chromium.chrome.browser.site_settings.PermissionInfo;
import org.chromium.chrome.browser.site_settings.WebsitePreferenceBridgeJni;
......@@ -51,6 +51,9 @@ import java.util.concurrent.ExecutionException;
public class SearchEngineSettingsTest {
@Rule
public final ChromeBrowserTestRule mBrowserTestRule = new ChromeBrowserTestRule();
@Rule
public final SettingsActivityTestRule<SearchEngineSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(SearchEngineSettings.class);
/**
* Change search engine and make sure it works correctly.
......@@ -63,12 +66,11 @@ public class SearchEngineSettingsTest {
public void testSearchEnginePreference() throws Exception {
ensureTemplateUrlServiceLoaded();
final SettingsActivity settingsActivity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(), SearchEngineSettings.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
// Set the second search engine as the default using TemplateUrlService.
TestThreadUtils.runOnUiThreadBlocking(() -> {
SearchEngineSettings pref = (SearchEngineSettings) settingsActivity.getMainFragment();
SearchEngineSettings pref = mSettingsActivityTestRule.getFragment();
pref.setValueForTesting("1");
// Ensure that the second search engine in the list is selected.
......@@ -178,18 +180,17 @@ public class SearchEngineSettingsTest {
public void testSearchEnginePreferenceHttp() throws Exception {
ensureTemplateUrlServiceLoaded();
final SettingsActivity settingsActivity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(), SearchEngineSettings.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
// Set the first search engine as the default using TemplateUrlService.
TestThreadUtils.runOnUiThreadBlocking(() -> {
SearchEngineSettings pref = (SearchEngineSettings) settingsActivity.getMainFragment();
SearchEngineSettings pref = mSettingsActivityTestRule.getFragment();
pref.setValueForTesting("0");
});
TestThreadUtils.runOnUiThreadBlocking(() -> {
// Ensure that the first search engine in the list is selected.
SearchEngineSettings pref = (SearchEngineSettings) settingsActivity.getMainFragment();
SearchEngineSettings pref = mSettingsActivityTestRule.getFragment();
Assert.assertNotNull(pref);
Assert.assertEquals("0", pref.getValueForTesting());
......
......@@ -10,13 +10,8 @@ import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withText;
import android.app.Activity;
import android.app.Instrumentation;
import android.content.Context;
import android.content.Intent;
import android.support.test.filters.SmallTest;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
......@@ -36,20 +31,6 @@ import org.chromium.policy.test.annotations.Policies;
*/
@RunWith(ChromeJUnit4ClassRunner.class)
public class SettingsActivityTest {
/**
* Launches the settings activity with the specified fragment.
* Returns the activity that was started.
*/
public static SettingsActivity startSettingsActivity(
Instrumentation instrumentation, String fragmentName) {
Context context = instrumentation.getTargetContext();
Intent intent =
SettingsLauncher.getInstance().createIntentForSettingsPage(context, fragmentName);
Activity activity = instrumentation.startActivitySync(intent);
Assert.assertTrue(activity instanceof SettingsActivity);
return (SettingsActivity) activity;
}
@Rule
public SettingsActivityTestRule<MainSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(MainSettings.class);
......
......@@ -15,7 +15,6 @@ import static android.support.test.espresso.matcher.ViewMatchers.withText;
import static org.hamcrest.core.AllOf.allOf;
import android.support.test.InstrumentationRegistry;
import android.support.test.espresso.contrib.RecyclerViewActions;
import android.view.View;
import android.widget.ImageView;
......@@ -26,6 +25,7 @@ import androidx.test.filters.SmallTest;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
......@@ -39,7 +39,7 @@ import org.chromium.chrome.browser.language.settings.LanguageSettings;
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.SettingsActivityTest;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.translate.TranslateBridge;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.RecyclerViewTestUtils;
......@@ -56,13 +56,14 @@ import org.chromium.ui.test.util.UiRestriction;
@Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
public class LanguageSettingsTest {
// clang-format on
@Rule
public final SettingsActivityTestRule<LanguageSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(LanguageSettings.class);
private SettingsActivity mActivity;
@Before
public void setUp() throws Exception {
mActivity = SettingsActivityTest.startSettingsActivity(
InstrumentationRegistry.getInstrumentation(), LanguageSettings.class.getName());
mActivity = mSettingsActivityTestRule.startSettingsActivity();
}
private void addLanguage() {
......
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