Commit eb06fcda authored by Wenyu Fu's avatar Wenyu Fu Committed by Commit Bot

Remove ChromeActivityTestRule#startSettingsActivity

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

Bug: 1066660
Change-Id: I71749ab1a3278bc0d7d1591156c2e4f9e38af49e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2135146
Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Cr-Commit-Position: refs/heads/master@{#759006}
parent 4025b5f1
......@@ -24,7 +24,7 @@ import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.browsing_data.ClearBrowsingDataFragment.DialogOption;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.sync.ProfileSyncService;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
......@@ -46,6 +46,10 @@ public class ClearBrowsingDataFragmentBasicTest {
@Rule
public final ChromeActivityTestRule<ChromeActivity> mActivityTestRule =
new ChromeActivityTestRule<>(ChromeActivity.class);
@Rule
public final SettingsActivityTestRule<ClearBrowsingDataFragmentBasic>
mSettingsActivityTestRule =
new SettingsActivityTestRule<>(ClearBrowsingDataFragmentBasic.class);
private static final String GOOGLE_ACCOUNT = "Google Account";
private static final String OTHER_ACTIVITY = "other forms of browsing history";
......@@ -104,12 +108,10 @@ public class ClearBrowsingDataFragmentBasicTest {
@Test
@SmallTest
public void testCheckBoxTextNonsigned() {
final SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(
ClearBrowsingDataFragmentBasic.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
TestThreadUtils.runOnUiThreadBlocking(() -> {
ClearBrowsingDataFragmentBasic fragment =
(ClearBrowsingDataFragmentBasic) settingsActivity.getMainFragment();
ClearBrowsingDataFragmentBasic fragment = mSettingsActivityTestRule.getFragment();
PreferenceScreen screen = fragment.getPreferenceScreen();
String cookiesSummary = getCheckboxSummary(screen,
......@@ -135,12 +137,10 @@ public class ClearBrowsingDataFragmentBasicTest {
SigninTestUtil.addAndSignInTestAccount();
setSyncable(false);
final SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(
ClearBrowsingDataFragmentBasic.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
TestThreadUtils.runOnUiThreadBlocking(() -> {
ClearBrowsingDataFragmentBasic fragment =
(ClearBrowsingDataFragmentBasic) settingsActivity.getMainFragment();
ClearBrowsingDataFragmentBasic fragment = mSettingsActivityTestRule.getFragment();
PreferenceScreen screen = fragment.getPreferenceScreen();
String cookiesSummary = getCheckboxSummary(screen,
......@@ -166,12 +166,10 @@ public class ClearBrowsingDataFragmentBasicTest {
SigninTestUtil.addAndSignInTestAccount();
setSyncable(true);
final SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(
ClearBrowsingDataFragmentBasic.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
TestThreadUtils.runOnUiThreadBlocking(() -> {
ClearBrowsingDataFragmentBasic fragment =
(ClearBrowsingDataFragmentBasic) settingsActivity.getMainFragment();
ClearBrowsingDataFragmentBasic fragment = mSettingsActivityTestRule.getFragment();
PreferenceScreen screen = fragment.getPreferenceScreen();
String cookiesSummary = getCheckboxSummary(screen,
......
......@@ -50,6 +50,7 @@ import org.chromium.chrome.browser.browsing_data.ClearBrowsingDataFragment.Dialo
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.notifications.channels.SiteChannelsManager;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.signin.SigninTestUtil;
......@@ -72,6 +73,13 @@ public class ClearBrowsingDataFragmentTest {
@Rule
public ChromeActivityTestRule<ChromeActivity> mActivityTestRule =
new ChromeActivityTestRule<>(ChromeActivity.class);
@Rule
public SettingsActivityTestRule<ClearBrowsingDataFragmentAdvanced> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(ClearBrowsingDataFragmentAdvanced.class);
@Rule
public SettingsActivityTestRule<ClearBrowsingDataTabsFragment>
mSettingsActivityTabFragmentTestRule =
new SettingsActivityTestRule<>(ClearBrowsingDataTabsFragment.class);
@Rule
public JniMocker mJniMocker = new JniMocker();
......@@ -143,11 +151,9 @@ public class ClearBrowsingDataFragmentTest {
}
private SettingsActivity startPreferences() {
SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(
ClearBrowsingDataFragmentAdvanced.class.getName());
SettingsActivity settingsActivity = mSettingsActivityTestRule.startSettingsActivity();
ClearBrowsingDataFetcher fetcher = new ClearBrowsingDataFetcher();
ClearBrowsingDataFragment fragment =
(ClearBrowsingDataFragment) settingsActivity.getMainFragment();
ClearBrowsingDataFragment fragment = mSettingsActivityTestRule.getFragment();
fragment.setClearBrowsingDataFetcher(fetcher);
TestThreadUtils.runOnUiThreadBlocking(fetcher::fetchImportantSites);
return settingsActivity;
......@@ -163,10 +169,9 @@ public class ClearBrowsingDataFragmentTest {
// Set "Advanced" as the user's cached preference.
when(mBrowsingDataBridgeMock.getLastClearBrowsingDataTab(any())).thenReturn(1);
SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(
ClearBrowsingDataTabsFragment.class.getName());
mSettingsActivityTabFragmentTestRule.startSettingsActivity();
final ClearBrowsingDataTabsFragment preferences =
(ClearBrowsingDataTabsFragment) settingsActivity.getMainFragment();
mSettingsActivityTabFragmentTestRule.getFragment();
// Verify tab preference is loaded.
verify(mBrowsingDataBridgeMock).getLastClearBrowsingDataTab(any());
......
......@@ -10,7 +10,6 @@ import android.support.test.filters.MediumTest;
import android.view.View;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import org.junit.After;
import org.junit.Assert;
......@@ -32,7 +31,7 @@ import org.chromium.chrome.browser.homepage.settings.HomepageMetricsEnums.Homepa
import org.chromium.chrome.browser.homepage.settings.HomepageSettings;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.toolbar.HomeButton;
import org.chromium.chrome.browser.toolbar.ToolbarManager;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
......@@ -75,6 +74,9 @@ public class HomepagePolicyIntegrationTest {
@Rule
public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule();
@Rule
public SettingsActivityTestRule<HomepageSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(HomepageSettings.class);
@Rule
public HomepageTestRule mHomepageTestRule = new HomepageTestRule();
......@@ -177,11 +179,8 @@ public class HomepagePolicyIntegrationTest {
@DisableFeatures(ChromeFeatureList.HOMEPAGE_SETTINGS_UI_CONVERSION)
public void testHomepagePreference() {
// Launch homepage preference page
SettingsActivity homepagePreferenceActivity =
mActivityTestRule.startSettingsActivity(HomepageSettings.class.getName());
PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) homepagePreferenceActivity.getSupportFragmentManager()
.findFragmentById(android.R.id.content);
mSettingsActivityTestRule.startSettingsActivity();
HomepageSettings fragment = mSettingsActivityTestRule.getFragment();
Assert.assertNotNull(fragment);
ChromeSwitchPreference homepageSwitch = (ChromeSwitchPreference) fragment.findPreference(
......
......@@ -17,15 +17,13 @@ import org.junit.runner.RunWith;
import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.UserActionTester;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.homepage.HomepageTestRule;
import org.chromium.chrome.browser.homepage.settings.HomepageMetricsEnums.HomepageLocationType;
import org.chromium.chrome.browser.ntp.NewTabPage;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.Features;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
......@@ -90,8 +88,8 @@ public class HomepageSettingsFragmentTest {
private static final String CHROME_NTP = UrlConstants.NTP_NON_NATIVE_URL;
@Rule
public ChromeActivityTestRule<ChromeActivity> mTestRule =
new ChromeActivityTestRule<>(ChromeActivity.class);
public SettingsActivityTestRule<HomepageSettings> mTestRule =
new SettingsActivityTestRule<>(HomepageSettings.class);
@Rule
public HomepageTestRule mHomepageTestRule = new HomepageTestRule();
......@@ -108,9 +106,8 @@ public class HomepageSettingsFragmentTest {
private RadioButtonWithEditText mCustomUriRadioButton;
private void launchSettingsActivity() {
SettingsActivity homepagePreferenceActivity =
mTestRule.startSettingsActivity(HomepageSettings.class.getName());
HomepageSettings fragment = (HomepageSettings) homepagePreferenceActivity.getMainFragment();
mTestRule.startSettingsActivity();
HomepageSettings fragment = mTestRule.getFragment();
Assert.assertNotNull(fragment);
mSwitch = (ChromeSwitchPreference) fragment.findPreference(
......
......@@ -19,12 +19,10 @@ import org.junit.runner.RunWith;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.test.BaseJUnit4ClassRunner;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.homepage.HomepageTestRule;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.test.util.browser.Features;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.embedder_support.util.UrlConstants;
......@@ -60,8 +58,8 @@ public class HomepageSettingsFragmentWithEditorTest {
public static final String CHROME_NTP = UrlConstants.NTP_NON_NATIVE_URL;
@Rule
public ChromeActivityTestRule<ChromeActivity> mTestRule =
new ChromeActivityTestRule<>(ChromeActivity.class);
public SettingsActivityTestRule<HomepageSettings> mTestRule =
new SettingsActivityTestRule<>(HomepageSettings.class);
@Rule
public HomepageTestRule mHomepageTestRule = new HomepageTestRule();
......@@ -83,9 +81,8 @@ public class HomepageSettingsFragmentWithEditorTest {
private Preference mHomepageEditor;
private void launchSettingsActivity() {
SettingsActivity homepagePreferenceActivity =
mTestRule.startSettingsActivity(HomepageSettings.class.getName());
HomepageSettings fragment = (HomepageSettings) homepagePreferenceActivity.getMainFragment();
mTestRule.startSettingsActivity();
HomepageSettings fragment = mTestRule.getFragment();
Assert.assertNotNull(fragment);
mSwitch = (ChromeSwitchPreference) fragment.findPreference(
......
......@@ -36,7 +36,9 @@ import org.chromium.chrome.browser.history.HistoryActivity;
import org.chromium.chrome.browser.omnibox.UrlBar;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.settings.DummySettingsForTest;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.tab.TabLaunchType;
import org.chromium.chrome.browser.tabmodel.TabModelUtils;
import org.chromium.chrome.test.ChromeActivityTestRule;
......@@ -64,6 +66,9 @@ public class MainIntentBehaviorMetricsIntegrationTest {
@Rule
public ChromeTabbedActivityTestRule mActivityTestRule = new ChromeTabbedActivityTestRule();
@Rule
public SettingsActivityTestRule<DummySettingsForTest> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(DummySettingsForTest.class);
private UserActionTester mActionTester;
......@@ -250,7 +255,7 @@ public class MainIntentBehaviorMetricsIntegrationTest {
mActivityTestRule.startMainActivityFromLauncher();
SettingsActivity settingsActivity = mActivityTestRule.startSettingsActivity(null);
SettingsActivity settingsActivity = mSettingsActivityTestRule.startSettingsActivity();
settingsActivity.finish();
ChromeActivityTestRule.waitForActivityNativeInitializationComplete(
ChromeActivityTestRule.waitFor(ChromeTabbedActivity.class));
......
......@@ -12,8 +12,6 @@ import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.preference.PreferenceFragmentCompat;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Rule;
......@@ -31,6 +29,7 @@ import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.homepage.settings.HomepageEditor;
import org.chromium.chrome.browser.homepage.settings.HomepageSettings;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver;
import org.chromium.chrome.browser.tabmodel.TabList;
import org.chromium.chrome.browser.tabmodel.TabModel;
......@@ -56,6 +55,12 @@ public class PartnerHomepageIntegrationTest {
@Rule
public BasePartnerBrowserCustomizationIntegrationTestRule mActivityTestRule =
new BasePartnerBrowserCustomizationIntegrationTestRule();
@Rule
public SettingsActivityTestRule<HomepageSettings> mHomepageSettingsTestRule =
new SettingsActivityTestRule<>(HomepageSettings.class);
@Rule
public SettingsActivityTestRule<HomepageEditor> mHomepageEditorTestRule =
new SettingsActivityTestRule<>(HomepageEditor.class);
private static final String TEST_PAGE = "/chrome/test/data/android/about.html";
......@@ -150,7 +155,7 @@ public class PartnerHomepageIntegrationTest {
public void testPreferenceCustomUriFixup() {
// Change home page custom URI on hompage edit screen.
final SettingsActivity editHomepagePreferenceActivity =
mActivityTestRule.startSettingsActivity(HomepageEditor.class.getName());
mHomepageEditorTestRule.startSettingsActivity();
TestThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override
// TODO(crbug.com/635567): Fix this properly.
......@@ -239,10 +244,8 @@ public class PartnerHomepageIntegrationTest {
private void toggleHomepageSwitchPreference(boolean expected) {
// Launch preference activity with Homepage settings fragment.
SettingsActivity homepagePreferenceActivity =
mActivityTestRule.startSettingsActivity(HomepageSettings.class.getName());
PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) homepagePreferenceActivity.getSupportFragmentManager()
.findFragmentById(android.R.id.content);
mHomepageSettingsTestRule.startSettingsActivity();
HomepageSettings fragment = mHomepageSettingsTestRule.getFragment();
ChromeSwitchPreference preference = (ChromeSwitchPreference) fragment.findPreference(
HomepageSettings.PREF_HOMEPAGE_SWITCH);
Assert.assertNotNull(preference);
......
......@@ -64,6 +64,9 @@ public class MainSettingsFragmentTest {
public HomepageTestRule mHomepageTestRule = new HomepageTestRule();
@Rule
public SyncTestRule mSyncTestRule = new SyncTestRule();
@Rule
public SettingsActivityTestRule<MainSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(MainSettings.class);
@Mock
public TemplateUrlService mMockTemplateUrlService;
......@@ -92,10 +95,8 @@ public class MainSettingsFragmentTest {
}
private void launchSettingsActivity() {
SettingsActivity activity =
mSyncTestRule.startSettingsActivity(MainSettings.class.getName());
mMainSettings = (MainSettings) activity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
mMainSettings = mSettingsActivityTestRule.getFragment();
Assert.assertNotNull("SettingsActivity failed to launch.", mMainSettings);
}
......
......@@ -37,6 +37,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkModel;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileAccountManagementMetrics;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.sync.settings.AccountManagementFragment;
import org.chromium.chrome.test.ChromeActivityTestRule;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
......@@ -58,6 +59,10 @@ public class SigninSignoutIntegrationTest {
@Rule
public final DisableAnimationsTestRule mNoAnimationsRule = new DisableAnimationsTestRule();
@Rule
public final SettingsActivityTestRule<AccountManagementFragment> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(AccountManagementFragment.class);
@Rule
public final JniMocker mocker = new JniMocker();
......@@ -116,7 +121,7 @@ public class SigninSignoutIntegrationTest {
@LargeTest
public void testSignOut() {
signIn();
mActivityTestRule.startSettingsActivity(AccountManagementFragment.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
onView(withText(R.string.sign_out_and_turn_off_sync)).perform(click());
onView(withText(R.string.continue_button)).inRoot(isDialog()).perform(click());
assertSignedOut();
......@@ -133,7 +138,7 @@ public class SigninSignoutIntegrationTest {
@LargeTest
public void testSignOutDismissedByPressingBack() {
signIn();
mActivityTestRule.startSettingsActivity(AccountManagementFragment.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
onView(withText(R.string.sign_out_and_turn_off_sync)).perform(click());
onView(isRoot()).perform(pressBack());
verify(mSignInStateObserverMock, never()).onSignedOut();
......@@ -150,7 +155,7 @@ public class SigninSignoutIntegrationTest {
@LargeTest
public void testSignOutCancelled() {
signIn();
mActivityTestRule.startSettingsActivity(AccountManagementFragment.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
onView(withText(R.string.sign_out_and_turn_off_sync)).perform(click());
onView(withText(R.string.cancel)).inRoot(isDialog()).perform(click());
verify(mSignInStateObserverMock, never()).onSignedOut();
......@@ -168,7 +173,7 @@ public class SigninSignoutIntegrationTest {
public void testSignOutNonManagedAccountWithDataWiped() {
signIn();
addOneTestBookmark();
mActivityTestRule.startSettingsActivity(AccountManagementFragment.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
onView(withText(R.string.sign_out_and_turn_off_sync)).perform(click());
onView(withId(R.id.remove_local_data)).perform(click());
onView(withText(R.string.continue_button)).inRoot(isDialog()).perform(click());
......@@ -183,7 +188,7 @@ public class SigninSignoutIntegrationTest {
public void testSignOutNonManagedAccountWithoutWipingData() {
signIn();
addOneTestBookmark();
mActivityTestRule.startSettingsActivity(AccountManagementFragment.class.getName());
mSettingsActivityTestRule.startSettingsActivity();
onView(withText(R.string.sign_out_and_turn_off_sync)).perform(click());
onView(withText(R.string.continue_button)).inRoot(isDialog()).perform(click());
assertSignedOut();
......
......@@ -31,6 +31,7 @@ import org.chromium.chrome.R;
import org.chromium.chrome.browser.autofill.PersonalDataManager;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.sync.settings.ManageSyncSettings;
import org.chromium.chrome.browser.sync.ui.PassphraseCreationDialogFragment;
import org.chromium.chrome.browser.sync.ui.PassphraseDialogFragment;
......@@ -76,6 +77,9 @@ public class ManageSyncSettingsTest {
@Rule
public SyncTestRule mSyncTestRule = new SyncTestRule();
@Rule
public SettingsActivityTestRule<ManageSyncSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(ManageSyncSettings.class);
@After
public void tearDown() {
......@@ -437,9 +441,8 @@ public class ManageSyncSettingsTest {
}
private ManageSyncSettings startManageSyncPreferences() {
mSettingsActivity = mSyncTestRule.startSettingsActivity(ManageSyncSettings.class.getName());
InstrumentationRegistry.getInstrumentation().waitForIdleSync();
return (ManageSyncSettings) mSettingsActivity.getMainFragment();
mSettingsActivity = mSettingsActivityTestRule.startSettingsActivity();
return mSettingsActivityTestRule.getFragment();
}
private void closeFragment(ManageSyncSettings fragment) {
......
......@@ -19,6 +19,7 @@ import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.sync.settings.ManageSyncSettings;
import org.chromium.chrome.browser.sync.ui.PassphraseDialogFragment;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
......@@ -40,6 +41,9 @@ public class ManageSyncSettingsWithFakeProfileSyncServiceTest {
return new FakeProfileSyncService();
}
};
@Rule
public SettingsActivityTestRule<ManageSyncSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(ManageSyncSettings.class);
private SettingsActivity mSettingsActivity;
......@@ -80,9 +84,8 @@ public class ManageSyncSettingsWithFakeProfileSyncServiceTest {
}
private ManageSyncSettings startManageSyncPreferences() {
mSettingsActivity = mSyncTestRule.startSettingsActivity(ManageSyncSettings.class.getName());
InstrumentationRegistry.getInstrumentation().waitForIdleSync();
return (ManageSyncSettings) mSettingsActivity.getMainFragment();
mSettingsActivity = mSettingsActivityTestRule.startSettingsActivity();
return mSettingsActivityTestRule.getFragment();
}
private void clickPreference(final Preference pref) {
......
......@@ -30,6 +30,7 @@ import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.sync.settings.SyncAndServicesSettings;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
......@@ -49,6 +50,9 @@ import org.chromium.content_public.browser.test.util.TestThreadUtils;
public class SyncAndServicesSettingsTest {
@Rule
public SyncTestRule mSyncTestRule = new SyncTestRule();
@Rule
public SettingsActivityTestRule<SyncAndServicesSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(SyncAndServicesSettings.class);
private SettingsActivity mSettingsActivity;
......@@ -359,8 +363,7 @@ public class SyncAndServicesSettingsTest {
}
private SyncAndServicesSettings startSyncAndServicesPreferences() {
mSettingsActivity =
mSyncTestRule.startSettingsActivity(SyncAndServicesSettings.class.getName());
mSettingsActivity = mSettingsActivityTestRule.startSettingsActivity();
InstrumentationRegistry.getInstrumentation().waitForIdleSync();
return (SyncAndServicesSettings) mSettingsActivity.getMainFragment();
}
......
......@@ -4,7 +4,6 @@
package org.chromium.chrome.browser.sync;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.LargeTest;
import androidx.preference.Preference;
......@@ -18,7 +17,7 @@ import org.junit.runner.RunWith;
import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.sync.settings.SyncAndServicesSettings;
import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
import org.chromium.chrome.test.util.browser.sync.SyncTestUtil;
......@@ -36,6 +35,9 @@ public class SyncAndServicesSettingsWithFakeProfileSyncServiceTest {
return new FakeProfileSyncService();
}
};
@Rule
public SettingsActivityTestRule<SyncAndServicesSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(SyncAndServicesSettings.class);
@Test
@LargeTest
......@@ -54,10 +56,8 @@ public class SyncAndServicesSettingsWithFakeProfileSyncServiceTest {
}
private SyncAndServicesSettings startSyncAndServicesPreferences() {
SettingsActivity settingsActivity =
mSyncTestRule.startSettingsActivity(SyncAndServicesSettings.class.getName());
InstrumentationRegistry.getInstrumentation().waitForIdleSync();
return (SyncAndServicesSettings) settingsActivity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
return mSettingsActivityTestRule.getFragment();
}
private Preference getSyncErrorCard(SyncAndServicesSettings fragment) {
......
......@@ -35,6 +35,7 @@ import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsActivityTestRule;
import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.tracing.TracingController;
import org.chromium.chrome.browser.tracing.TracingNotificationManager;
......@@ -61,6 +62,9 @@ public class TracingSettingsTest {
@Rule
public final ChromeActivityTestRule<ChromeActivity> mActivityTestRule =
new ChromeActivityTestRule<>(ChromeActivity.class);
@Rule
public final SettingsActivityTestRule<TracingSettings> mSettingsActivityTestRule =
new SettingsActivityTestRule<>(TracingSettings.class);
private MockNotificationManagerProxy mMockNotificationManager;
......@@ -143,10 +147,8 @@ public class TracingSettingsTest {
@DisableIf.Build(sdk_is_less_than = 21, message = "crbug.com/899894")
public void testRecordTrace() throws Exception {
mActivityTestRule.startMainActivityOnBlankPage();
SettingsActivity activity =
mActivityTestRule.startSettingsActivity(TracingSettings.class.getName());
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) activity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final ButtonPreference startTracingButton =
(ButtonPreference) fragment.findPreference(TracingSettings.UI_PREF_START_RECORDING);
......@@ -243,10 +245,8 @@ public class TracingSettingsTest {
public void testNotificationsDisabledMessage() throws Exception {
mMockNotificationManager.setNotificationsEnabled(false);
SettingsActivity activity =
mActivityTestRule.startSettingsActivity(TracingSettings.class.getName());
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) activity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final ButtonPreference startTracingButton =
(ButtonPreference) fragment.findPreference(TracingSettings.UI_PREF_START_RECORDING);
final TextMessagePreference statusPreference =
......@@ -268,10 +268,8 @@ public class TracingSettingsTest {
public void testSelectCategories() throws Exception {
// We need a renderer so that its tracing categories will be populated.
mActivityTestRule.startMainActivityOnBlankPage();
SettingsActivity activity =
mActivityTestRule.startSettingsActivity(TracingSettings.class.getName());
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) activity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final Preference defaultCategoriesPref =
fragment.findPreference(TracingSettings.UI_PREF_DEFAULT_CATEGORIES);
final Preference nonDefaultCategoriesPref =
......@@ -328,10 +326,8 @@ public class TracingSettingsTest {
@SmallTest
@Feature({"Preferences"})
public void testSelectMode() throws Exception {
SettingsActivity activity =
mActivityTestRule.startSettingsActivity(TracingSettings.class.getName());
final PreferenceFragmentCompat fragment =
(PreferenceFragmentCompat) activity.getMainFragment();
mSettingsActivityTestRule.startSettingsActivity();
final PreferenceFragmentCompat fragment = mSettingsActivityTestRule.getFragment();
final ListPreference modePref =
(ListPreference) fragment.findPreference(TracingSettings.UI_PREF_MODE);
......
......@@ -7,7 +7,6 @@ package org.chromium.chrome.test;
import android.app.Activity;
import android.app.Instrumentation;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
......@@ -40,8 +39,6 @@ import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.ntp.NewTabPage;
import org.chromium.chrome.browser.omnibox.UrlBar;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManager;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabCreationState;
import org.chromium.chrome.browser.tab.TabLaunchType;
......@@ -600,22 +597,6 @@ public class ChromeActivityTestRule<T extends ChromeActivity> extends ActivityTe
});
}
/**
* Launches the settings activity with the specified fragment.
* Returns the activity that was started.
*
* TODO(chouinard): This seems like mostly a duplicate of {@link
* SettingsActivityTest#startSettingsActivity}, try to consolidate to one.
*/
public SettingsActivity startSettingsActivity(String fragmentName) {
Context context = InstrumentationRegistry.getTargetContext();
Intent intent =
SettingsLauncher.getInstance().createIntentForSettingsPage(context, fragmentName);
Activity activity = InstrumentationRegistry.getInstrumentation().startActivitySync(intent);
Assert.assertTrue(activity instanceof SettingsActivity);
return (SettingsActivity) activity;
}
/**
* Executes the given snippet of JavaScript code within the current tab. Returns the result of
* its execution in JSON format.
......
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