Commit 2f4989b5 authored by Christian Dullweber's avatar Christian Dullweber Committed by Commit Bot

Improve browsing_data_api test

Change browsing_data_api test to cover changes from the new
basic/advanced tab Clear Browsing Data ui.

Bug: 725401
Change-Id: Ib58612e2f7d241412007202276936a2c7dc4e77a
Reviewed-on: https://chromium-review.googlesource.com/681816Reviewed-by: default avatarBernhard Bauer <bauerb@chromium.org>
Commit-Queue: Christian Dullweber <dullweber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#504055}
parent 429046bb
......@@ -9,14 +9,15 @@
#include "base/memory/ref_counted.h"
#include "base/strings/pattern.h"
#include "base/strings/string_util.h"
#include "base/test/scoped_feature_list.h"
#include "base/values.h"
#include "chrome/browser/browsing_data/browsing_data_helper.h"
#include "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h"
#include "chrome/browser/extensions/api/browsing_data/browsing_data_api.h"
#include "chrome/browser/extensions/extension_function_test_utils.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/common/chrome_features.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "components/browsing_data/core/browsing_data_utils.h"
......@@ -60,6 +61,11 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
}
protected:
void SetUp() override {
feature_list_.InitAndEnableFeature(features::kTabsInCbd);
InProcessBrowserTest::SetUp();
}
void SetUpOnMainThread() override {
remover_ =
content::BrowserContext::GetBrowsingDataRemover(browser()->profile());
......@@ -154,6 +160,9 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
int expected_origin_type_mask,
int expected_removal_mask) {
PrefService* prefs = browser()->profile()->GetPrefs();
prefs->SetInteger(
browsing_data::prefs::kLastClearBrowsingDataTab,
static_cast<int>(browsing_data::ClearBrowsingDataTab::ADVANCED));
prefs->SetBoolean(
browsing_data::prefs::kDeleteCache,
!!(data_type_flags & content::BrowsingDataRemover::DATA_TYPE_CACHE));
......@@ -183,6 +192,35 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
!!(data_type_flags &
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_PLUGIN_DATA));
VerifyRemovalMask(expected_origin_type_mask, expected_removal_mask);
}
void SetBasicPrefsAndVerifySettings(int data_type_flags,
int expected_origin_type_mask,
int expected_removal_mask) {
PrefService* prefs = browser()->profile()->GetPrefs();
prefs->SetInteger(
browsing_data::prefs::kLastClearBrowsingDataTab,
static_cast<int>(browsing_data::ClearBrowsingDataTab::BASIC));
prefs->SetBoolean(
browsing_data::prefs::kDeleteCacheBasic,
!!(data_type_flags & content::BrowsingDataRemover::DATA_TYPE_CACHE));
prefs->SetBoolean(
browsing_data::prefs::kDeleteCookiesBasic,
!!(data_type_flags & content::BrowsingDataRemover::DATA_TYPE_COOKIES));
prefs->SetBoolean(browsing_data::prefs::kDeleteBrowsingHistoryBasic,
!!(data_type_flags &
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_HISTORY));
prefs->SetBoolean(
prefs::kClearPluginLSODataEnabled,
!!(data_type_flags &
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_PLUGIN_DATA));
VerifyRemovalMask(expected_origin_type_mask, expected_removal_mask);
}
void VerifyRemovalMask(int expected_origin_type_mask,
int expected_removal_mask) {
scoped_refptr<BrowsingDataSettingsFunction> function =
new BrowsingDataSettingsFunction();
SCOPED_TRACE("settings");
......@@ -259,6 +297,7 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
}
private:
base::test::ScopedFeatureList feature_list_;
// Cached pointer to BrowsingDataRemover for access to testing methods.
content::BrowsingDataRemover* remover_;
};
......@@ -397,6 +436,9 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
BrowsingDataRemovalInputFromSettings) {
PrefService* prefs = browser()->profile()->GetPrefs();
prefs->SetInteger(
browsing_data::prefs::kLastClearBrowsingDataTab,
static_cast<int>(browsing_data::ClearBrowsingDataTab::ADVANCED));
prefs->SetBoolean(browsing_data::prefs::kDeleteCache, true);
prefs->SetBoolean(browsing_data::prefs::kDeleteBrowsingHistory, true);
prefs->SetBoolean(browsing_data::prefs::kDeleteDownloadHistory, true);
......@@ -496,6 +538,12 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionSimple) {
SetPrefsAndVerifySettings(
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_PASSWORDS, 0,
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_PASSWORDS);
SetBasicPrefsAndVerifySettings(content::BrowsingDataRemover::DATA_TYPE_CACHE,
0,
content::BrowsingDataRemover::DATA_TYPE_CACHE);
SetBasicPrefsAndVerifySettings(
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_HISTORY, 0,
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_HISTORY);
}
// Test cookie and app data settings.
......@@ -524,6 +572,9 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionSiteData) {
content::BrowsingDataRemover::DATA_TYPE_COOKIES |
ChromeBrowsingDataRemoverDelegate::DATA_TYPE_PLUGIN_DATA,
UNPROTECTED_WEB, supported_site_data);
SetBasicPrefsAndVerifySettings(
content::BrowsingDataRemover::DATA_TYPE_COOKIES, UNPROTECTED_WEB,
supported_site_data_except_plugins);
}
// Test an arbitrary assortment of settings.
......
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