diff options
author | engedy@chromium.org <engedy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-03 15:48:55 +0000 |
---|---|---|
committer | engedy@chromium.org <engedy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-03 15:48:55 +0000 |
commit | e76cc53b875446d2cd2d1454d838b35fc9680f6f (patch) | |
tree | 8b7d480a5059d1108758910a97db7c97257cee17 /chrome | |
parent | 8643484ce07b0adb35b4f0e42d5830076764edd9 (diff) | |
download | chromium_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.cc | 41 |
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); +} + |