| 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 |
|
|
|