Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Unified Diff: chrome/browser/extensions/api/browsing_data/browsing_data_test.cc

Issue 2697123004: Convert RemoveDataMask from enum to pointers and split it between content and embedder (Closed)
Patch Set: Android compilation Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
diff --git a/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc b/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
index 10efc181e6f5a1ba97de01b749ee94a4f69d15c5..a7022b025adafbcb7db3fb042c5ffea052e6545b 100644
--- a/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
+++ b/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
@@ -7,12 +7,14 @@
#include "base/json/json_string_value_serializer.h"
#include "base/memory/ref_counted.h"
+#include "base/stl_util.h"
#include "base/strings/pattern.h"
#include "base/strings/string_util.h"
#include "base/values.h"
#include "chrome/browser/browsing_data/browsing_data_helper.h"
#include "chrome/browser/browsing_data/browsing_data_remover.h"
#include "chrome/browser/browsing_data/browsing_data_remover_factory.h"
+#include "chrome/browser/browsing_data/chrome_browsing_data_types.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"
@@ -25,6 +27,7 @@
using extension_function_test_utils::RunFunctionAndReturnError;
using extension_function_test_utils::RunFunctionAndReturnSingleResult;
+using content::BrowsingDataType;
namespace {
@@ -50,7 +53,7 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
return remover_->GetLastUsedBeginTime();
}
- int GetRemovalMask() {
+ const std::set<const BrowsingDataType*>& GetRemovalMask() {
return remover_->GetLastUsedRemovalMask();
}
@@ -71,9 +74,17 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
return result ? mask_value : 0;
}
+ const BrowsingDataType* GetAsMask(const base::DictionaryValue* dict,
+ std::string path,
+ const BrowsingDataType* mask_value) {
+ bool result;
+ EXPECT_TRUE(dict->GetBoolean(path, &result)) << "for " << path;
+ return result ? mask_value : nullptr;
+ }
+
void RunBrowsingDataRemoveFunctionAndCompareRemovalMask(
const std::string& data_types,
- int expected_mask) {
+ const std::set<const BrowsingDataType*>& expected_mask) {
scoped_refptr<BrowsingDataRemoveFunction> function =
new BrowsingDataRemoveFunction();
SCOPED_TRACE(data_types);
@@ -87,7 +98,7 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
void RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
const std::string& key,
- int expected_mask) {
+ const std::set<const BrowsingDataType*>& expected_mask) {
RunBrowsingDataRemoveFunctionAndCompareRemovalMask(
std::string("{\"") + key + "\": true}", expected_mask);
}
@@ -105,8 +116,9 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
EXPECT_EQ(expected_mask, GetOriginTypeMask());
}
- template<class ShortcutFunction>
- void RunAndCompareRemovalMask(int expected_mask) {
+ template <class ShortcutFunction>
+ void RunAndCompareRemovalMask(
+ const std::set<const BrowsingDataType*>& expected_mask) {
scoped_refptr<ShortcutFunction> function =
new ShortcutFunction();
SCOPED_TRACE(ShortcutFunction::function_name());
@@ -148,27 +160,36 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
EXPECT_LE(expected_since, since + 10.0 * 1000.0);
}
- void SetPrefsAndVerifySettings(int data_type_flags,
- int expected_origin_type_mask,
- int expected_removal_mask) {
+ void SetPrefsAndVerifySettings(
+ const std::set<const BrowsingDataType*>& data_type_flags,
+ int expected_origin_type_mask,
+ const std::set<const BrowsingDataType*>& expected_removal_mask) {
PrefService* prefs = browser()->profile()->GetPrefs();
- prefs->SetBoolean(browsing_data::prefs::kDeleteCache,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_CACHE));
- prefs->SetBoolean(browsing_data::prefs::kDeleteCookies,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_COOKIES));
- prefs->SetBoolean(browsing_data::prefs::kDeleteBrowsingHistory,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_HISTORY));
- prefs->SetBoolean(browsing_data::prefs::kDeleteFormData,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_FORM_DATA));
- prefs->SetBoolean(browsing_data::prefs::kDeleteDownloadHistory,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_DOWNLOADS));
- prefs->SetBoolean(browsing_data::prefs::kDeleteHostedAppsData,
- !!(data_type_flags &
- BrowsingDataRemover::REMOVE_HOSTED_APP_DATA_TESTONLY));
- prefs->SetBoolean(browsing_data::prefs::kDeletePasswords,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_PASSWORDS));
- prefs->SetBoolean(prefs::kClearPluginLSODataEnabled,
- !!(data_type_flags & BrowsingDataRemover::REMOVE_PLUGIN_DATA));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteCache,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypeCache));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteCookies,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypeCookies));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteBrowsingHistory,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypeHistory));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteFormData,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypeFormData));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteDownloadHistory,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypeDownloads));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeleteHostedAppsData,
+ base::ContainsValue(data_type_flags,
+ &kBrowsingDataTypeHostedAppDataTestOnly));
+ prefs->SetBoolean(
+ browsing_data::prefs::kDeletePasswords,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypePasswords));
+ prefs->SetBoolean(
+ prefs::kClearPluginLSODataEnabled,
+ base::ContainsValue(data_type_flags, &kBrowsingDataTypePluginData));
scoped_refptr<BrowsingDataSettingsFunction> function =
new BrowsingDataSettingsFunction();
@@ -192,36 +213,41 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest {
base::DictionaryValue* data_to_remove;
EXPECT_TRUE(result->GetDictionary("dataToRemove", &data_to_remove));
- int removal_mask =
- GetAsMask(data_to_remove, "appcache",
- BrowsingDataRemover::REMOVE_APPCACHE) |
- GetAsMask(data_to_remove, "cache", BrowsingDataRemover::REMOVE_CACHE) |
- GetAsMask(data_to_remove, "cookies",
- BrowsingDataRemover::REMOVE_COOKIES) |
- GetAsMask(data_to_remove, "downloads",
- BrowsingDataRemover::REMOVE_DOWNLOADS) |
- GetAsMask(data_to_remove, "fileSystems",
- BrowsingDataRemover::REMOVE_FILE_SYSTEMS) |
- GetAsMask(data_to_remove, "formData",
- BrowsingDataRemover::REMOVE_FORM_DATA) |
- GetAsMask(data_to_remove, "history",
- BrowsingDataRemover::REMOVE_HISTORY) |
- GetAsMask(data_to_remove, "indexedDB",
- BrowsingDataRemover::REMOVE_INDEXEDDB) |
- GetAsMask(data_to_remove, "localStorage",
- BrowsingDataRemover::REMOVE_LOCAL_STORAGE) |
- GetAsMask(data_to_remove, "pluginData",
- BrowsingDataRemover::REMOVE_PLUGIN_DATA) |
- GetAsMask(data_to_remove, "passwords",
- BrowsingDataRemover::REMOVE_PASSWORDS) |
- GetAsMask(data_to_remove, "serviceWorkers",
- BrowsingDataRemover::REMOVE_SERVICE_WORKERS) |
- GetAsMask(data_to_remove, "cacheStorage",
- BrowsingDataRemover::REMOVE_CACHE_STORAGE) |
- GetAsMask(data_to_remove, "webSQL",
- BrowsingDataRemover::REMOVE_WEBSQL) |
- GetAsMask(data_to_remove, "serverBoundCertificates",
- BrowsingDataRemover::REMOVE_CHANNEL_IDS);
+
+ std::set<const BrowsingDataType*> removal_mask;
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "appcache", &kBrowsingDataTypeAppCache));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "cache", &kBrowsingDataTypeCache));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "cookies", &kBrowsingDataTypeCookies));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "downloads", &kBrowsingDataTypeDownloads));
+ removal_mask.insert(GetAsMask(data_to_remove, "fileSystems",
+ &kBrowsingDataTypeFileSystems));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "formData", &kBrowsingDataTypeFormData));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "history", &kBrowsingDataTypeHistory));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "indexedDB", &kBrowsingDataTypeIndexedDB));
+ removal_mask.insert(GetAsMask(data_to_remove, "localStorage",
+ &kBrowsingDataTypeLocalStorage));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "pluginData", &kBrowsingDataTypePluginData));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "passwords", &kBrowsingDataTypePasswords));
+ removal_mask.insert(GetAsMask(data_to_remove, "serviceWorkers",
+ &kBrowsingDataTypeServiceWorkers));
+ removal_mask.insert(GetAsMask(data_to_remove, "cacheStorage",
+ &kBrowsingDataTypeCacheStorage));
+ removal_mask.insert(
+ GetAsMask(data_to_remove, "webSQL", &kBrowsingDataTypeWebSQL));
+ removal_mask.insert(GetAsMask(data_to_remove, "serverBoundCertificates",
+ &kBrowsingDataTypeChannelIDs));
+
+ // GetAsMask() adds a nullptr for excluded types.
+ removal_mask.erase(nullptr);
EXPECT_EQ(expected_removal_mask, removal_mask);
}
@@ -289,25 +315,26 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, RemoveBrowsingDataAll) {
browser()));
EXPECT_EQ(base::Time::FromDoubleT(1.0), GetBeginTime());
- EXPECT_EQ(
- (BrowsingDataRemover::REMOVE_SITE_DATA |
- BrowsingDataRemover::REMOVE_CACHE |
- BrowsingDataRemover::REMOVE_DOWNLOADS |
- BrowsingDataRemover::REMOVE_FORM_DATA |
- BrowsingDataRemover::REMOVE_HISTORY |
- BrowsingDataRemover::REMOVE_PASSWORDS) &
- // TODO(benwells): implement clearing of site usage data via the
- // browsing data API. https://crbug.com/500801.
- ~BrowsingDataRemover::REMOVE_SITE_USAGE_DATA &
- // TODO(dmurph): implement clearing of durable storage permission
- // via the browsing data API. https://crbug.com/500801.
- ~BrowsingDataRemover::REMOVE_DURABLE_PERMISSION &
- // We can't remove plugin data inside a test profile.
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA &
- // TODO(ramyasharma): implement clearing of external protocol data
- // via the browsing data API. https://crbug.com/692850.
- ~BrowsingDataRemover::REMOVE_EXTERNAL_PROTOCOL_DATA,
- GetRemovalMask());
+ std::set<const BrowsingDataType*> expected_mask =
+ BrowsingDataTypeSetSiteData();
+ expected_mask.insert(&kBrowsingDataTypeCache);
+ expected_mask.insert(&kBrowsingDataTypeDownloads);
+ expected_mask.insert(&kBrowsingDataTypeFormData);
+ expected_mask.insert(&kBrowsingDataTypeHistory);
+ expected_mask.insert(&kBrowsingDataTypePasswords);
+ // TODO(benwells): implement clearing of site usage data via the
+ // browsing data API. https://crbug.com/500801.
+ expected_mask.erase(&kBrowsingDataTypeSiteUsageData);
+ // TODO(dmurph): implement clearing of durable storage permission
+ // via the browsing data API. https://crbug.com/500801.
+ expected_mask.erase(&kBrowsingDataTypeDurablePermission);
+ // We can't remove plugin data inside a test profile.
+ expected_mask.erase(&kBrowsingDataTypePluginData);
+ // TODO(ramyasharma): implement clearing of external protocol data
+ // via the browsing data API. https://crbug.com/692850.
+ expected_mask.erase(&kBrowsingDataTypeExternalProtocolData);
+
+ EXPECT_EQ(expected_mask, GetRemovalMask());
}
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, BrowsingDataOriginTypeMask) {
@@ -339,45 +366,43 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, BrowsingDataOriginTypeMask) {
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
BrowsingDataRemovalMask) {
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "appcache", BrowsingDataRemover::REMOVE_APPCACHE);
+ "appcache", {&kBrowsingDataTypeAppCache});
+ RunBrowsingDataRemoveWithKeyAndCompareRemovalMask("cache",
+ {&kBrowsingDataTypeCache});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "cache", BrowsingDataRemover::REMOVE_CACHE);
+ "cookies", {&kBrowsingDataTypeCookies});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "cookies", BrowsingDataRemover::REMOVE_COOKIES);
+ "downloads", {&kBrowsingDataTypeDownloads});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "downloads", BrowsingDataRemover::REMOVE_DOWNLOADS);
+ "fileSystems", {&kBrowsingDataTypeFileSystems});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "fileSystems", BrowsingDataRemover::REMOVE_FILE_SYSTEMS);
+ "formData", {&kBrowsingDataTypeFormData});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "formData", BrowsingDataRemover::REMOVE_FORM_DATA);
+ "history", {&kBrowsingDataTypeHistory});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "history", BrowsingDataRemover::REMOVE_HISTORY);
+ "indexedDB", {&kBrowsingDataTypeIndexedDB});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "indexedDB", BrowsingDataRemover::REMOVE_INDEXEDDB);
+ "localStorage", {&kBrowsingDataTypeLocalStorage});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "localStorage", BrowsingDataRemover::REMOVE_LOCAL_STORAGE);
+ "serverBoundCertificates", {&kBrowsingDataTypeChannelIDs});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "serverBoundCertificates",
- BrowsingDataRemover::REMOVE_CHANNEL_IDS);
- RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "passwords", BrowsingDataRemover::REMOVE_PASSWORDS);
+ "passwords", {&kBrowsingDataTypePasswords});
// We can't remove plugin data inside a test profile.
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "serviceWorkers", BrowsingDataRemover::REMOVE_SERVICE_WORKERS);
- RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "cacheStorage", BrowsingDataRemover::REMOVE_CACHE_STORAGE);
+ "serviceWorkers", {&kBrowsingDataTypeServiceWorkers});
RunBrowsingDataRemoveWithKeyAndCompareRemovalMask(
- "webSQL", BrowsingDataRemover::REMOVE_WEBSQL);
+ "cacheStorage", {&kBrowsingDataTypeCacheStorage});
+ RunBrowsingDataRemoveWithKeyAndCompareRemovalMask("webSQL",
+ {&kBrowsingDataTypeWebSQL});
}
// Test an arbitrary combination of data types.
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
BrowsingDataRemovalMaskCombination) {
RunBrowsingDataRemoveFunctionAndCompareRemovalMask(
- "{\"appcache\": true, \"cookies\": true, \"history\": true}",
- BrowsingDataRemover::REMOVE_APPCACHE |
- BrowsingDataRemover::REMOVE_COOKIES |
- BrowsingDataRemover::REMOVE_HISTORY);
+ "{\"appcache\": true, \"cookies\": true, \"history\": true}",
+ {&kBrowsingDataTypeAppCache, &kBrowsingDataTypeCookies,
+ &kBrowsingDataTypeHistory});
}
// Make sure the remove() function accepts the format produced by settings().
@@ -392,9 +417,9 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
prefs->SetBoolean(browsing_data::prefs::kDeleteHostedAppsData, false);
prefs->SetBoolean(browsing_data::prefs::kDeletePasswords, false);
prefs->SetBoolean(prefs::kClearPluginLSODataEnabled, false);
- int expected_mask = BrowsingDataRemover::REMOVE_CACHE |
- BrowsingDataRemover::REMOVE_DOWNLOADS |
- BrowsingDataRemover::REMOVE_HISTORY;
+ const std::set<const BrowsingDataType*>& expected_mask = {
+ &kBrowsingDataTypeCache, &kBrowsingDataTypeDownloads,
+ &kBrowsingDataTypeHistory};
std::string json;
// Scoping for the traces.
{
@@ -427,31 +452,30 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest,
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, ShortcutFunctionRemovalMask) {
RunAndCompareRemovalMask<BrowsingDataRemoveAppcacheFunction>(
- BrowsingDataRemover::REMOVE_APPCACHE);
+ {&kBrowsingDataTypeAppCache});
RunAndCompareRemovalMask<BrowsingDataRemoveCacheFunction>(
- BrowsingDataRemover::REMOVE_CACHE);
+ {&kBrowsingDataTypeCache});
RunAndCompareRemovalMask<BrowsingDataRemoveCookiesFunction>(
- BrowsingDataRemover::REMOVE_COOKIES |
- BrowsingDataRemover::REMOVE_CHANNEL_IDS);
+ {&kBrowsingDataTypeCookies, &kBrowsingDataTypeChannelIDs});
RunAndCompareRemovalMask<BrowsingDataRemoveDownloadsFunction>(
- BrowsingDataRemover::REMOVE_DOWNLOADS);
+ {&kBrowsingDataTypeDownloads});
RunAndCompareRemovalMask<BrowsingDataRemoveFileSystemsFunction>(
- BrowsingDataRemover::REMOVE_FILE_SYSTEMS);
+ {&kBrowsingDataTypeFileSystems});
RunAndCompareRemovalMask<BrowsingDataRemoveFormDataFunction>(
- BrowsingDataRemover::REMOVE_FORM_DATA);
+ {&kBrowsingDataTypeFormData});
RunAndCompareRemovalMask<BrowsingDataRemoveHistoryFunction>(
- BrowsingDataRemover::REMOVE_HISTORY);
+ {&kBrowsingDataTypeHistory});
RunAndCompareRemovalMask<BrowsingDataRemoveIndexedDBFunction>(
- BrowsingDataRemover::REMOVE_INDEXEDDB);
+ {&kBrowsingDataTypeIndexedDB});
RunAndCompareRemovalMask<BrowsingDataRemoveLocalStorageFunction>(
- BrowsingDataRemover::REMOVE_LOCAL_STORAGE);
+ {&kBrowsingDataTypeLocalStorage});
// We can't remove plugin data inside a test profile.
RunAndCompareRemovalMask<BrowsingDataRemovePasswordsFunction>(
- BrowsingDataRemover::REMOVE_PASSWORDS);
+ {&kBrowsingDataTypePasswords});
RunAndCompareRemovalMask<BrowsingDataRemoveServiceWorkersFunction>(
- BrowsingDataRemover::REMOVE_SERVICE_WORKERS);
+ {&kBrowsingDataTypeServiceWorkers});
RunAndCompareRemovalMask<BrowsingDataRemoveWebSQLFunction>(
- BrowsingDataRemover::REMOVE_WEBSQL);
+ {&kBrowsingDataTypeWebSQL});
}
// Test the processing of the 'delete since' preference.
@@ -464,65 +488,75 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionSince) {
}
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionEmpty) {
- SetPrefsAndVerifySettings(0, 0, 0);
+ std::set<const BrowsingDataType*> empty_mask;
+ SetPrefsAndVerifySettings(empty_mask, 0, empty_mask);
}
// Test straightforward settings, mapped 1:1 to data types.
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionSimple) {
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_CACHE, 0,
- BrowsingDataRemover::REMOVE_CACHE);
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_HISTORY, 0,
- BrowsingDataRemover::REMOVE_HISTORY);
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_FORM_DATA, 0,
- BrowsingDataRemover::REMOVE_FORM_DATA);
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_DOWNLOADS, 0,
- BrowsingDataRemover::REMOVE_DOWNLOADS);
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_PASSWORDS, 0,
- BrowsingDataRemover::REMOVE_PASSWORDS);
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeCache}, 0,
+ {&kBrowsingDataTypeCache});
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeHistory}, 0,
+ {&kBrowsingDataTypeHistory});
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeFormData}, 0,
+ {&kBrowsingDataTypeFormData});
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeDownloads}, 0,
+ {&kBrowsingDataTypeDownloads});
+ SetPrefsAndVerifySettings({&kBrowsingDataTypePasswords}, 0,
+ {&kBrowsingDataTypePasswords});
}
// Test cookie and app data settings.
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionSiteData) {
- int site_data_no_durable_or_usage_or_external =
- BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_SITE_USAGE_DATA &
- ~BrowsingDataRemover::REMOVE_DURABLE_PERMISSION &
- ~BrowsingDataRemover::REMOVE_EXTERNAL_PROTOCOL_DATA;
- int site_data_no_plugins_durable_usage_external =
- site_data_no_durable_or_usage_or_external &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA;
-
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_COOKIES,
- UNPROTECTED_WEB,
+ std::set<const BrowsingDataType*> site_data_no_durable_or_usage_or_external =
+ BrowsingDataTypeSetSiteData();
+ site_data_no_durable_or_usage_or_external.erase(
+ &kBrowsingDataTypeSiteUsageData);
+ site_data_no_durable_or_usage_or_external.erase(
+ &kBrowsingDataTypeDurablePermission);
+ site_data_no_durable_or_usage_or_external.erase(
+ &kBrowsingDataTypeExternalProtocolData);
+ std::set<const BrowsingDataType*>
+ site_data_no_plugins_durable_usage_external =
+ site_data_no_durable_or_usage_or_external;
+ site_data_no_plugins_durable_usage_external.erase(
+ &kBrowsingDataTypePluginData);
+
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeCookies}, UNPROTECTED_WEB,
+ site_data_no_plugins_durable_usage_external);
+ SetPrefsAndVerifySettings({&kBrowsingDataTypeHostedAppDataTestOnly},
+ PROTECTED_WEB,
site_data_no_plugins_durable_usage_external);
SetPrefsAndVerifySettings(
- BrowsingDataRemover::REMOVE_HOSTED_APP_DATA_TESTONLY, PROTECTED_WEB,
- site_data_no_plugins_durable_usage_external);
- SetPrefsAndVerifySettings(
- BrowsingDataRemover::REMOVE_COOKIES |
- BrowsingDataRemover::REMOVE_HOSTED_APP_DATA_TESTONLY,
+ {&kBrowsingDataTypeCookies, &kBrowsingDataTypeHostedAppDataTestOnly},
PROTECTED_WEB | UNPROTECTED_WEB,
site_data_no_plugins_durable_usage_external);
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_COOKIES |
- BrowsingDataRemover::REMOVE_PLUGIN_DATA,
- UNPROTECTED_WEB,
- site_data_no_durable_or_usage_or_external);
+ SetPrefsAndVerifySettings(
+ {&kBrowsingDataTypeCookies, &kBrowsingDataTypePluginData},
+ UNPROTECTED_WEB, site_data_no_durable_or_usage_or_external);
}
// Test an arbitrary assortment of settings.
IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, SettingsFunctionAssorted) {
- int site_data_no_plugins_durable_usage_external =
- BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_DURABLE_PERMISSION &
- ~BrowsingDataRemover::REMOVE_SITE_USAGE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA &
- ~BrowsingDataRemover::REMOVE_EXTERNAL_PROTOCOL_DATA;
-
- SetPrefsAndVerifySettings(BrowsingDataRemover::REMOVE_COOKIES |
- BrowsingDataRemover::REMOVE_HISTORY |
- BrowsingDataRemover::REMOVE_DOWNLOADS,
- UNPROTECTED_WEB,
- site_data_no_plugins_durable_usage_external |
- BrowsingDataRemover::REMOVE_HISTORY |
- BrowsingDataRemover::REMOVE_DOWNLOADS);
+ std::set<const BrowsingDataType*>
+ site_data_no_plugins_durable_usage_external =
+ BrowsingDataTypeSetSiteData();
+ site_data_no_plugins_durable_usage_external.erase(
+ &kBrowsingDataTypeDurablePermission);
+ site_data_no_plugins_durable_usage_external.erase(
+ &kBrowsingDataTypeSiteUsageData);
+ site_data_no_plugins_durable_usage_external.erase(
+ &kBrowsingDataTypePluginData);
+ site_data_no_plugins_durable_usage_external.erase(
+ &kBrowsingDataTypeExternalProtocolData);
+
+ std::set<const BrowsingDataType*> expected_mask =
+ site_data_no_plugins_durable_usage_external;
+ expected_mask.insert(&kBrowsingDataTypeHistory);
+ expected_mask.insert(&kBrowsingDataTypeDownloads);
+
+ SetPrefsAndVerifySettings(
+ {&kBrowsingDataTypeCookies, &kBrowsingDataTypeHistory,
+ &kBrowsingDataTypeDownloads},
+ UNPROTECTED_WEB, expected_mask);
}
« no previous file with comments | « chrome/browser/extensions/api/browsing_data/browsing_data_api.cc ('k') | chrome/browser/net/errorpage_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698