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); |
} |