summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorengedy@chromium.org <engedy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-03 15:48:55 +0000
committerengedy@chromium.org <engedy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-03 15:48:55 +0000
commite76cc53b875446d2cd2d1454d838b35fc9680f6f (patch)
tree8b7d480a5059d1108758910a97db7c97257cee17 /chrome
parent8643484ce07b0adb35b4f0e42d5830076764edd9 (diff)
downloadchromium_src-e76cc53b875446d2cd2d1454d838b35fc9680f6f.zip
chromium_src-e76cc53b875446d2cd2d1454d838b35fc9680f6f.tar.gz
chromium_src-e76cc53b875446d2cd2d1454d838b35fc9680f6f.tar.bz2
Browsing Data API: Added a browser test for short-cut functions.
Added a browser test to check that the short-cut functions (removeCookies(), etc.) in the chrome.brosingData API actually end up calling BrowsingDataRemover with the correct |remove_mask|. BUG=152948 Review URL: https://chromiumcodereview.appspot.com/11036020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159901 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/extensions/api/browsing_data/browsing_data_test.cc41
1 files changed, 41 insertions, 0 deletions
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 69aa1d8..44166be 100644
--- a/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
+++ b/chrome/browser/extensions/api/browsing_data/browsing_data_test.cc
@@ -99,6 +99,19 @@ class ExtensionBrowsingDataTest : public InProcessBrowserTest,
EXPECT_EQ(expected_mask, GetOriginSetMask());
}
+ template<class ShortcutFunction>
+ void RunAndCompareRemovalMask(int expected_mask) {
+ scoped_refptr<ShortcutFunction> function =
+ new ShortcutFunction();
+ SCOPED_TRACE(ShortcutFunction::function_name());
+ EXPECT_EQ(NULL, RunFunctionAndReturnSingleResult(
+ function.get(),
+ std::string("[{\"since\": 1}]"),
+ browser()));
+ EXPECT_EQ(expected_mask, GetRemovalMask());
+ EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginSetMask());
+ }
+
private:
scoped_ptr<BrowsingDataRemover::NotificationDetails> called_with_details_;
content::NotificationRegistrar registrar_;
@@ -196,3 +209,31 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, BrowsingDataRemovalMask) {
RunRemoveBrowsingDataFunctionAndCompareRemovalMask(
"webSQL", BrowsingDataRemover::REMOVE_WEBSQL);
}
+
+IN_PROC_BROWSER_TEST_F(ExtensionBrowsingDataTest, ShortcutFunctionRemovalMask) {
+ RunAndCompareRemovalMask<RemoveAppCacheFunction>(
+ BrowsingDataRemover::REMOVE_APPCACHE);
+ RunAndCompareRemovalMask<RemoveCacheFunction>(
+ BrowsingDataRemover::REMOVE_CACHE);
+ RunAndCompareRemovalMask<RemoveCookiesFunction>(
+ BrowsingDataRemover::REMOVE_COOKIES |
+ BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS);
+ RunAndCompareRemovalMask<RemoveDownloadsFunction>(
+ BrowsingDataRemover::REMOVE_DOWNLOADS);
+ RunAndCompareRemovalMask<RemoveFileSystemsFunction>(
+ BrowsingDataRemover::REMOVE_FILE_SYSTEMS);
+ RunAndCompareRemovalMask<RemoveFormDataFunction>(
+ BrowsingDataRemover::REMOVE_FORM_DATA);
+ RunAndCompareRemovalMask<RemoveHistoryFunction>(
+ BrowsingDataRemover::REMOVE_HISTORY);
+ RunAndCompareRemovalMask<RemoveIndexedDBFunction>(
+ BrowsingDataRemover::REMOVE_INDEXEDDB);
+ RunAndCompareRemovalMask<RemoveLocalStorageFunction>(
+ BrowsingDataRemover::REMOVE_LOCAL_STORAGE);
+ // We can't remove plugin data inside a test profile.
+ RunAndCompareRemovalMask<RemovePasswordsFunction>(
+ BrowsingDataRemover::REMOVE_PASSWORDS);
+ RunAndCompareRemovalMask<RemoveWebSQLFunction>(
+ BrowsingDataRemover::REMOVE_WEBSQL);
+}
+