blob: 85050f093a50312bc502d8cfdf911e7f5efedd81 [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.site_settings;
import android.content.Intent;
import android.os.Bundle;
import android.support.test.InstrumentationRegistry;
import org.chromium.chrome.browser.settings.SettingsActivity;
import org.chromium.chrome.browser.settings.SettingsLauncher;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.components.browser_ui.site_settings.SingleCategorySettings;
import org.chromium.components.browser_ui.site_settings.SingleWebsiteSettings;
import org.chromium.components.browser_ui.site_settings.SiteSettings;
import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
import org.chromium.components.browser_ui.site_settings.Website;
/**
* Util functions for testing SiteSettings functionality.
*/
public class SiteSettingsTestUtils {
public static SettingsActivity startSiteSettingsMenu(String category) {
Bundle fragmentArgs = new Bundle();
fragmentArgs.putString(SingleCategorySettings.EXTRA_CATEGORY, category);
SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
Intent intent = settingsLauncher.createSettingsActivityIntent(
InstrumentationRegistry.getTargetContext(), SiteSettings.class.getName(),
fragmentArgs);
return (SettingsActivity) InstrumentationRegistry.getInstrumentation().startActivitySync(
intent);
}
public static SettingsActivity startSiteSettingsCategory(@SiteSettingsCategory.Type int type) {
Bundle fragmentArgs = new Bundle();
fragmentArgs.putString(
SingleCategorySettings.EXTRA_CATEGORY, SiteSettingsCategory.preferenceKey(type));
SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
Intent intent = settingsLauncher.createSettingsActivityIntent(
InstrumentationRegistry.getTargetContext(), SingleCategorySettings.class.getName(),
fragmentArgs);
return (SettingsActivity) InstrumentationRegistry.getInstrumentation().startActivitySync(
intent);
}
public static SettingsActivity startSingleWebsitePreferences(Website site) {
Bundle fragmentArgs = new Bundle();
fragmentArgs.putSerializable(SingleWebsiteSettings.EXTRA_SITE, site);
SettingsLauncher settingsLauncher = new SettingsLauncherImpl();
Intent intent = settingsLauncher.createSettingsActivityIntent(
InstrumentationRegistry.getTargetContext(), SingleWebsiteSettings.class.getName(),
fragmentArgs);
return (SettingsActivity) InstrumentationRegistry.getInstrumentation().startActivitySync(
intent);
}
}