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

Unified Diff: chrome/browser/browsing_data_remover_unittest.cc

Issue 10413072: Teaching BrowsingDataRemover how to delete application data. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 7 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/browsing_data_remover_unittest.cc
diff --git a/chrome/browser/browsing_data_remover_unittest.cc b/chrome/browser/browsing_data_remover_unittest.cc
index f9ca164aaa71a90c7fe5a17211105d4f2421a25c..58a5a22657ccabf1d65e99c52d2a55849ccf947c 100644
--- a/chrome/browser/browsing_data_remover_unittest.cc
+++ b/chrome/browser/browsing_data_remover_unittest.cc
@@ -368,6 +368,8 @@ class BrowsingDataRemoverTest : public testing::Test,
void BlockUntilBrowsingDataRemoved(BrowsingDataRemover::TimePeriod period,
int remove_mask,
+ BrowsingDataRemover::RemoveOriginSet
+ origin_set,
BrowsingDataRemoverTester* tester) {
BrowsingDataRemover* remover = new BrowsingDataRemover(
profile_.get(), period,
@@ -378,7 +380,7 @@ class BrowsingDataRemoverTest : public testing::Test,
called_with_details_.reset(new BrowsingDataRemover::NotificationDetails());
// BrowsingDataRemover deletes itself when it completes.
- remover->Remove(remove_mask);
+ remover->Remove(remove_mask, origin_set);
tester->BlockUntilNotified();
}
@@ -470,7 +472,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) {
ASSERT_TRUE(tester->ContainsCookie());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
- BrowsingDataRemover::REMOVE_COOKIES, tester.get());
+ BrowsingDataRemover::REMOVE_COOKIES,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
EXPECT_FALSE(tester->ContainsCookie());
@@ -484,7 +487,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveCookieLastHour) {
ASSERT_TRUE(tester->ContainsCookie());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
- BrowsingDataRemover::REMOVE_COOKIES, tester.get());
+ BrowsingDataRemover::REMOVE_COOKIES,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
EXPECT_FALSE(tester->ContainsCookie());
@@ -499,7 +503,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForever) {
ASSERT_TRUE(tester->ContainsCookie());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
- BrowsingDataRemover::REMOVE_COOKIES, tester.get());
+ BrowsingDataRemover::REMOVE_COOKIES,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
EXPECT_FALSE(tester->ContainsCookie());
@@ -513,7 +518,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieLastHour) {
ASSERT_TRUE(tester->ContainsCookie());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
- BrowsingDataRemover::REMOVE_COOKIES, tester.get());
+ BrowsingDataRemover::REMOVE_COOKIES,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask());
// Removing with time period other than EVERYTHING should not clear safe
@@ -530,7 +536,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertForever) {
EXPECT_EQ(1, tester->ServerBoundCertCount());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
- BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, tester.get());
+ BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask());
EXPECT_EQ(0, tester->ServerBoundCertCount());
@@ -548,7 +555,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveServerBoundCertLastHour) {
EXPECT_EQ(2, tester->ServerBoundCertCount());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
- BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, tester.get());
+ BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_SERVER_BOUND_CERTS, GetRemovalMask());
EXPECT_EQ(1, tester->ServerBoundCertCount());
@@ -565,7 +573,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) {
ASSERT_TRUE(tester->HistoryContainsURL(kOrigin1));
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
- BrowsingDataRemover::REMOVE_HISTORY, tester.get());
+ BrowsingDataRemover::REMOVE_HISTORY,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
@@ -583,7 +592,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) {
ASSERT_TRUE(tester->HistoryContainsURL(kOrigin2));
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
- BrowsingDataRemover::REMOVE_HISTORY, tester.get());
+ BrowsingDataRemover::REMOVE_HISTORY,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, tester.get());
EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask());
EXPECT_FALSE(tester->HistoryContainsURL(kOrigin1));
@@ -618,7 +628,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) {
tester_.PopulateTestQuotaManagedData(GetMockManager());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -640,7 +651,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) {
tester_.PopulateTestQuotaManagedTemporaryData(GetMockManager());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -662,7 +674,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) {
tester_.PopulateTestQuotaManagedPersistentData(GetMockManager());
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -684,7 +697,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) {
GetMockManager(); // Creates the QuotaManager instance.
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -735,7 +749,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -758,7 +773,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -787,7 +803,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) {
BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
BrowsingDataRemover::REMOVE_SITE_DATA &
- ~BrowsingDataRemover::REMOVE_PLUGIN_DATA, &tester_);
+ ~BrowsingDataRemover::REMOVE_PLUGIN_DATA,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_DATA &
~BrowsingDataRemover::REMOVE_PLUGIN_DATA, GetRemovalMask());
@@ -839,6 +856,41 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) {
kClientFile));
}
+TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) {
+ // Protect kOrigin1.
+ scoped_refptr<MockExtensionSpecialStoragePolicy> mock_policy =
+ new MockExtensionSpecialStoragePolicy;
+ mock_policy->AddProtected(kOrigin1.GetOrigin());
+ GetProfile()->SetExtensionSpecialStoragePolicy(mock_policy);
+
+ tester_.PopulateTestQuotaManagedData(GetMockManager());
+
+ // Try to remove kOrigin1. Expect success.
+ BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING,
+ BrowsingDataRemover::REMOVE_APPCACHE |
+ BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
+ BrowsingDataRemover::REMOVE_INDEXEDDB |
+ BrowsingDataRemover::REMOVE_WEBSQL,
+ BrowsingDataRemover::REMOVE_FROM_ALL_ORIGINS, &tester_);
+
+ EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE |
+ BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
+ BrowsingDataRemover::REMOVE_INDEXEDDB |
+ BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask());
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kTemporary,
+ kClientFile));
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kTemporary,
+ kClientFile));
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kTemporary,
+ kClientFile));
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin1, kPersistent,
+ kClientFile));
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin2, kPersistent,
+ kClientFile));
+ EXPECT_FALSE(GetMockManager()->OriginHasData(kOrigin3, kPersistent,
+ kClientFile));
+}
+
TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) {
tester_.PopulateTestQuotaManagedNonBrowsingData(GetMockManager());
@@ -846,7 +898,8 @@ TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) {
BrowsingDataRemover::REMOVE_APPCACHE |
BrowsingDataRemover::REMOVE_FILE_SYSTEMS |
BrowsingDataRemover::REMOVE_INDEXEDDB |
- BrowsingDataRemover::REMOVE_WEBSQL, &tester_);
+ BrowsingDataRemover::REMOVE_WEBSQL,
+ BrowsingDataRemover::REMOVE_FROM_UNPROTECTED_ORIGINS, &tester_);
EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE |
BrowsingDataRemover::REMOVE_FILE_SYSTEMS |

Powered by Google App Engine
This is Rietveld 408576698