| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/browsing_data/browsing_data_remover.h" | 5 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 #include "chrome/test/base/testing_browser_process.h" | 45 #include "chrome/test/base/testing_browser_process.h" |
| 46 #include "chrome/test/base/testing_profile.h" | 46 #include "chrome/test/base/testing_profile.h" |
| 47 #include "components/autofill/core/browser/autofill_profile.h" | 47 #include "components/autofill/core/browser/autofill_profile.h" |
| 48 #include "components/autofill/core/browser/autofill_test_utils.h" | 48 #include "components/autofill/core/browser/autofill_test_utils.h" |
| 49 #include "components/autofill/core/browser/credit_card.h" | 49 #include "components/autofill/core/browser/credit_card.h" |
| 50 #include "components/autofill/core/browser/personal_data_manager.h" | 50 #include "components/autofill/core/browser/personal_data_manager.h" |
| 51 #include "components/autofill/core/browser/personal_data_manager_observer.h" | 51 #include "components/autofill/core/browser/personal_data_manager_observer.h" |
| 52 #include "components/autofill/core/common/autofill_constants.h" | 52 #include "components/autofill/core/common/autofill_constants.h" |
| 53 #include "components/bookmarks/browser/bookmark_model.h" | 53 #include "components/bookmarks/browser/bookmark_model.h" |
| 54 #include "components/bookmarks/test/bookmark_test_helpers.h" | 54 #include "components/bookmarks/test/bookmark_test_helpers.h" |
| 55 #include "components/browsing_data/browsing_data_utils.h" |
| 55 #include "components/content_settings/core/browser/host_content_settings_map.h" | 56 #include "components/content_settings/core/browser/host_content_settings_map.h" |
| 56 #include "components/content_settings/core/common/content_settings.h" | 57 #include "components/content_settings/core/common/content_settings.h" |
| 57 #include "components/content_settings/core/common/content_settings_pattern.h" | 58 #include "components/content_settings/core/common/content_settings_pattern.h" |
| 58 #include "components/domain_reliability/clear_mode.h" | 59 #include "components/domain_reliability/clear_mode.h" |
| 59 #include "components/domain_reliability/monitor.h" | 60 #include "components/domain_reliability/monitor.h" |
| 60 #include "components/domain_reliability/service.h" | 61 #include "components/domain_reliability/service.h" |
| 61 #include "components/favicon/core/favicon_service.h" | 62 #include "components/favicon/core/favicon_service.h" |
| 62 #include "components/history/core/browser/history_service.h" | 63 #include "components/history/core/browser/history_service.h" |
| 63 #include "components/omnibox/browser/omnibox_pref_names.h" | 64 #include "components/omnibox/browser/omnibox_pref_names.h" |
| 64 #include "components/os_crypt/os_crypt_mocker.h" | 65 #include "components/os_crypt/os_crypt_mocker.h" |
| (...skipping 963 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1028 // posts a message to the WEBKIT thread to delete some of its member | 1029 // posts a message to the WEBKIT thread to delete some of its member |
| 1029 // variables. We need to ensure that the profile is destroyed, and that | 1030 // variables. We need to ensure that the profile is destroyed, and that |
| 1030 // the message loop is cleared out, before destroying the threads and loop. | 1031 // the message loop is cleared out, before destroying the threads and loop. |
| 1031 // Otherwise we leak memory. | 1032 // Otherwise we leak memory. |
| 1032 profile_.reset(); | 1033 profile_.reset(); |
| 1033 base::MessageLoop::current()->RunUntilIdle(); | 1034 base::MessageLoop::current()->RunUntilIdle(); |
| 1034 | 1035 |
| 1035 TestingBrowserProcess::GetGlobal()->SetLocalState(nullptr); | 1036 TestingBrowserProcess::GetGlobal()->SetLocalState(nullptr); |
| 1036 } | 1037 } |
| 1037 | 1038 |
| 1038 void BlockUntilBrowsingDataRemoved(BrowsingDataRemover::TimePeriod period, | 1039 void BlockUntilBrowsingDataRemoved(browsing_data::TimePeriod period, |
| 1039 int remove_mask, | 1040 int remove_mask, |
| 1040 bool include_protected_origins) { | 1041 bool include_protected_origins) { |
| 1041 BrowsingDataRemover* remover = | 1042 BrowsingDataRemover* remover = |
| 1042 BrowsingDataRemoverFactory::GetForBrowserContext(profile_.get()); | 1043 BrowsingDataRemoverFactory::GetForBrowserContext(profile_.get()); |
| 1043 | 1044 |
| 1044 TestStoragePartition storage_partition; | 1045 TestStoragePartition storage_partition; |
| 1045 remover->OverrideStoragePartitionForTesting(&storage_partition); | 1046 remover->OverrideStoragePartitionForTesting(&storage_partition); |
| 1046 | 1047 |
| 1047 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails()); | 1048 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails()); |
| 1048 | 1049 |
| 1049 int origin_type_mask = BrowsingDataHelper::UNPROTECTED_WEB; | 1050 int origin_type_mask = BrowsingDataHelper::UNPROTECTED_WEB; |
| 1050 if (include_protected_origins) | 1051 if (include_protected_origins) |
| 1051 origin_type_mask |= BrowsingDataHelper::PROTECTED_WEB; | 1052 origin_type_mask |= BrowsingDataHelper::PROTECTED_WEB; |
| 1052 | 1053 |
| 1053 BrowsingDataRemoverCompletionObserver completion_observer(remover); | 1054 BrowsingDataRemoverCompletionObserver completion_observer(remover); |
| 1054 remover->Remove(BrowsingDataRemover::Period(period), remove_mask, | 1055 remover->Remove(BrowsingDataRemover::Period(period), remove_mask, |
| 1055 origin_type_mask); | 1056 origin_type_mask); |
| 1056 completion_observer.BlockUntilCompletion(); | 1057 completion_observer.BlockUntilCompletion(); |
| 1057 | 1058 |
| 1058 // Save so we can verify later. | 1059 // Save so we can verify later. |
| 1059 storage_partition_removal_data_ = | 1060 storage_partition_removal_data_ = |
| 1060 storage_partition.GetStoragePartitionRemovalData(); | 1061 storage_partition.GetStoragePartitionRemovalData(); |
| 1061 } | 1062 } |
| 1062 | 1063 |
| 1063 void BlockUntilOriginDataRemoved( | 1064 void BlockUntilOriginDataRemoved( |
| 1064 BrowsingDataRemover::TimePeriod period, | 1065 browsing_data::TimePeriod period, |
| 1065 int remove_mask, | 1066 int remove_mask, |
| 1066 const BrowsingDataFilterBuilder& filter_builder) { | 1067 const BrowsingDataFilterBuilder& filter_builder) { |
| 1067 BrowsingDataRemover* remover = | 1068 BrowsingDataRemover* remover = |
| 1068 BrowsingDataRemoverFactory::GetForBrowserContext(profile_.get()); | 1069 BrowsingDataRemoverFactory::GetForBrowserContext(profile_.get()); |
| 1069 TestStoragePartition storage_partition; | 1070 TestStoragePartition storage_partition; |
| 1070 remover->OverrideStoragePartitionForTesting(&storage_partition); | 1071 remover->OverrideStoragePartitionForTesting(&storage_partition); |
| 1071 | 1072 |
| 1072 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails()); | 1073 called_with_details_.reset(new BrowsingDataRemover::NotificationDetails()); |
| 1073 | 1074 |
| 1074 BrowsingDataRemoverCompletionObserver completion_observer(remover); | 1075 BrowsingDataRemoverCompletionObserver completion_observer(remover); |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1164 | 1165 |
| 1165 // Needed to mock out DomainReliabilityService, even for unrelated tests. | 1166 // Needed to mock out DomainReliabilityService, even for unrelated tests. |
| 1166 ClearDomainReliabilityTester clear_domain_reliability_tester_; | 1167 ClearDomainReliabilityTester clear_domain_reliability_tester_; |
| 1167 | 1168 |
| 1168 DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverTest); | 1169 DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverTest); |
| 1169 }; | 1170 }; |
| 1170 | 1171 |
| 1171 // Tests --------------------------------------------------------------------- | 1172 // Tests --------------------------------------------------------------------- |
| 1172 | 1173 |
| 1173 TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) { | 1174 TEST_F(BrowsingDataRemoverTest, RemoveCookieForever) { |
| 1174 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1175 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1175 BrowsingDataRemover::REMOVE_COOKIES, | 1176 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 1176 false); | |
| 1177 | 1177 |
| 1178 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1178 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1179 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1179 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1180 | 1180 |
| 1181 // Verify that storage partition was instructed to remove the cookies. | 1181 // Verify that storage partition was instructed to remove the cookies. |
| 1182 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1182 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1183 EXPECT_EQ(removal_data.remove_mask, | 1183 EXPECT_EQ(removal_data.remove_mask, |
| 1184 StoragePartition::REMOVE_DATA_MASK_COOKIES); | 1184 StoragePartition::REMOVE_DATA_MASK_COOKIES); |
| 1185 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1185 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1186 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1186 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1187 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1187 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1188 } | 1188 } |
| 1189 | 1189 |
| 1190 TEST_F(BrowsingDataRemoverTest, RemoveCookieLastHour) { | 1190 TEST_F(BrowsingDataRemoverTest, RemoveCookieLastHour) { |
| 1191 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1191 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 1192 BrowsingDataRemover::REMOVE_COOKIES, | 1192 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 1193 false); | |
| 1194 | 1193 |
| 1195 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1194 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1196 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1195 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1197 | 1196 |
| 1198 // Verify that storage partition was instructed to remove the cookies. | 1197 // Verify that storage partition was instructed to remove the cookies. |
| 1199 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1198 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1200 EXPECT_EQ(removal_data.remove_mask, | 1199 EXPECT_EQ(removal_data.remove_mask, |
| 1201 StoragePartition::REMOVE_DATA_MASK_COOKIES); | 1200 StoragePartition::REMOVE_DATA_MASK_COOKIES); |
| 1202 // Removing with time period other than EVERYTHING should not clear | 1201 // Removing with time period other than EVERYTHING should not clear |
| 1203 // persistent storage data. | 1202 // persistent storage data. |
| 1204 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1203 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1205 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); | 1204 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); |
| 1206 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1205 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1207 } | 1206 } |
| 1208 | 1207 |
| 1209 TEST_F(BrowsingDataRemoverTest, RemoveCookiesDomainBlacklist) { | 1208 TEST_F(BrowsingDataRemoverTest, RemoveCookiesDomainBlacklist) { |
| 1210 RegistrableDomainFilterBuilder filter( | 1209 RegistrableDomainFilterBuilder filter( |
| 1211 RegistrableDomainFilterBuilder::BLACKLIST); | 1210 RegistrableDomainFilterBuilder::BLACKLIST); |
| 1212 filter.AddRegisterableDomain(kTestRegisterableDomain1); | 1211 filter.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1213 filter.AddRegisterableDomain(kTestRegisterableDomain3); | 1212 filter.AddRegisterableDomain(kTestRegisterableDomain3); |
| 1214 BlockUntilOriginDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1213 BlockUntilOriginDataRemoved(browsing_data::LAST_HOUR, |
| 1215 BrowsingDataRemover::REMOVE_COOKIES, filter); | 1214 BrowsingDataRemover::REMOVE_COOKIES, filter); |
| 1216 | 1215 |
| 1217 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1216 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1218 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1217 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1219 | 1218 |
| 1220 // Verify that storage partition was instructed to remove the cookies. | 1219 // Verify that storage partition was instructed to remove the cookies. |
| 1221 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1220 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1222 EXPECT_EQ(removal_data.remove_mask, | 1221 EXPECT_EQ(removal_data.remove_mask, |
| 1223 StoragePartition::REMOVE_DATA_MASK_COOKIES); | 1222 StoragePartition::REMOVE_DATA_MASK_COOKIES); |
| 1224 // Removing with time period other than EVERYTHING should not clear | 1223 // Removing with time period other than EVERYTHING should not clear |
| (...skipping 14 matching lines...) Expand all Loading... |
| 1239 // scheme. | 1238 // scheme. |
| 1240 EXPECT_FALSE(removal_data.cookie_matcher.Run(CreateCookieWithHost(kOrigin4))); | 1239 EXPECT_FALSE(removal_data.cookie_matcher.Run(CreateCookieWithHost(kOrigin4))); |
| 1241 } | 1240 } |
| 1242 | 1241 |
| 1243 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForever) { | 1242 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForever) { |
| 1244 RemoveSafeBrowsingCookieTester tester; | 1243 RemoveSafeBrowsingCookieTester tester; |
| 1245 | 1244 |
| 1246 tester.AddCookie(); | 1245 tester.AddCookie(); |
| 1247 ASSERT_TRUE(tester.ContainsCookie()); | 1246 ASSERT_TRUE(tester.ContainsCookie()); |
| 1248 | 1247 |
| 1249 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1248 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1250 BrowsingDataRemover::REMOVE_COOKIES, false); | 1249 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 1251 | 1250 |
| 1252 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1251 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1253 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1252 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1254 EXPECT_FALSE(tester.ContainsCookie()); | 1253 EXPECT_FALSE(tester.ContainsCookie()); |
| 1255 } | 1254 } |
| 1256 | 1255 |
| 1257 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieLastHour) { | 1256 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieLastHour) { |
| 1258 RemoveSafeBrowsingCookieTester tester; | 1257 RemoveSafeBrowsingCookieTester tester; |
| 1259 | 1258 |
| 1260 tester.AddCookie(); | 1259 tester.AddCookie(); |
| 1261 ASSERT_TRUE(tester.ContainsCookie()); | 1260 ASSERT_TRUE(tester.ContainsCookie()); |
| 1262 | 1261 |
| 1263 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1262 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 1264 BrowsingDataRemover::REMOVE_COOKIES, false); | 1263 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 1265 | 1264 |
| 1266 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1265 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1267 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1266 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1268 // Removing with time period other than EVERYTHING should not clear safe | 1267 // Removing with time period other than EVERYTHING should not clear safe |
| 1269 // browsing cookies. | 1268 // browsing cookies. |
| 1270 EXPECT_TRUE(tester.ContainsCookie()); | 1269 EXPECT_TRUE(tester.ContainsCookie()); |
| 1271 } | 1270 } |
| 1272 | 1271 |
| 1273 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForeverWithPredicate) { | 1272 TEST_F(BrowsingDataRemoverTest, RemoveSafeBrowsingCookieForeverWithPredicate) { |
| 1274 RemoveSafeBrowsingCookieTester tester; | 1273 RemoveSafeBrowsingCookieTester tester; |
| 1275 | 1274 |
| 1276 tester.AddCookie(); | 1275 tester.AddCookie(); |
| 1277 ASSERT_TRUE(tester.ContainsCookie()); | 1276 ASSERT_TRUE(tester.ContainsCookie()); |
| 1278 RegistrableDomainFilterBuilder filter( | 1277 RegistrableDomainFilterBuilder filter( |
| 1279 RegistrableDomainFilterBuilder::BLACKLIST); | 1278 RegistrableDomainFilterBuilder::BLACKLIST); |
| 1280 filter.AddRegisterableDomain(kTestRegisterableDomain1); | 1279 filter.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1281 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1280 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 1282 BrowsingDataRemover::REMOVE_COOKIES, filter); | 1281 BrowsingDataRemover::REMOVE_COOKIES, filter); |
| 1283 | 1282 |
| 1284 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 1283 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 1285 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1284 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1286 EXPECT_TRUE(tester.ContainsCookie()); | 1285 EXPECT_TRUE(tester.ContainsCookie()); |
| 1287 | 1286 |
| 1288 RegistrableDomainFilterBuilder filter2( | 1287 RegistrableDomainFilterBuilder filter2( |
| 1289 RegistrableDomainFilterBuilder::WHITELIST); | 1288 RegistrableDomainFilterBuilder::WHITELIST); |
| 1290 filter2.AddRegisterableDomain(kTestRegisterableDomain1); | 1289 filter2.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1291 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1290 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 1292 BrowsingDataRemover::REMOVE_COOKIES, filter2); | 1291 BrowsingDataRemover::REMOVE_COOKIES, filter2); |
| 1293 EXPECT_FALSE(tester.ContainsCookie()); | 1292 EXPECT_FALSE(tester.ContainsCookie()); |
| 1294 } | 1293 } |
| 1295 | 1294 |
| 1296 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDForever) { | 1295 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDForever) { |
| 1297 RemoveChannelIDTester tester(GetProfile()); | 1296 RemoveChannelIDTester tester(GetProfile()); |
| 1298 | 1297 |
| 1299 tester.AddChannelID(kTestOrigin1); | 1298 tester.AddChannelID(kTestOrigin1); |
| 1300 EXPECT_EQ(0, tester.ssl_config_changed_count()); | 1299 EXPECT_EQ(0, tester.ssl_config_changed_count()); |
| 1301 EXPECT_EQ(1, tester.ChannelIDCount()); | 1300 EXPECT_EQ(1, tester.ChannelIDCount()); |
| 1302 | 1301 |
| 1303 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1302 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1304 BrowsingDataRemover::REMOVE_CHANNEL_IDS, false); | 1303 BrowsingDataRemover::REMOVE_CHANNEL_IDS, false); |
| 1305 | 1304 |
| 1306 EXPECT_EQ(BrowsingDataRemover::REMOVE_CHANNEL_IDS, GetRemovalMask()); | 1305 EXPECT_EQ(BrowsingDataRemover::REMOVE_CHANNEL_IDS, GetRemovalMask()); |
| 1307 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1306 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1308 EXPECT_EQ(1, tester.ssl_config_changed_count()); | 1307 EXPECT_EQ(1, tester.ssl_config_changed_count()); |
| 1309 EXPECT_EQ(0, tester.ChannelIDCount()); | 1308 EXPECT_EQ(0, tester.ChannelIDCount()); |
| 1310 } | 1309 } |
| 1311 | 1310 |
| 1312 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDLastHour) { | 1311 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDLastHour) { |
| 1313 RemoveChannelIDTester tester(GetProfile()); | 1312 RemoveChannelIDTester tester(GetProfile()); |
| 1314 | 1313 |
| 1315 base::Time now = base::Time::Now(); | 1314 base::Time now = base::Time::Now(); |
| 1316 tester.AddChannelID(kTestOrigin1); | 1315 tester.AddChannelID(kTestOrigin1); |
| 1317 tester.AddChannelIDWithTimes(kTestOrigin2, | 1316 tester.AddChannelIDWithTimes(kTestOrigin2, |
| 1318 now - base::TimeDelta::FromHours(2)); | 1317 now - base::TimeDelta::FromHours(2)); |
| 1319 EXPECT_EQ(0, tester.ssl_config_changed_count()); | 1318 EXPECT_EQ(0, tester.ssl_config_changed_count()); |
| 1320 EXPECT_EQ(2, tester.ChannelIDCount()); | 1319 EXPECT_EQ(2, tester.ChannelIDCount()); |
| 1321 | 1320 |
| 1322 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1321 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 1323 BrowsingDataRemover::REMOVE_CHANNEL_IDS, false); | 1322 BrowsingDataRemover::REMOVE_CHANNEL_IDS, false); |
| 1324 | 1323 |
| 1325 EXPECT_EQ(BrowsingDataRemover::REMOVE_CHANNEL_IDS, GetRemovalMask()); | 1324 EXPECT_EQ(BrowsingDataRemover::REMOVE_CHANNEL_IDS, GetRemovalMask()); |
| 1326 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1325 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1327 EXPECT_EQ(1, tester.ssl_config_changed_count()); | 1326 EXPECT_EQ(1, tester.ssl_config_changed_count()); |
| 1328 ASSERT_EQ(1, tester.ChannelIDCount()); | 1327 ASSERT_EQ(1, tester.ChannelIDCount()); |
| 1329 net::ChannelIDStore::ChannelIDList channel_ids; | 1328 net::ChannelIDStore::ChannelIDList channel_ids; |
| 1330 tester.GetChannelIDList(&channel_ids); | 1329 tester.GetChannelIDList(&channel_ids); |
| 1331 ASSERT_EQ(1U, channel_ids.size()); | 1330 ASSERT_EQ(1U, channel_ids.size()); |
| 1332 EXPECT_EQ(kTestOrigin2, channel_ids.front().server_identifier()); | 1331 EXPECT_EQ(kTestOrigin2, channel_ids.front().server_identifier()); |
| 1333 } | 1332 } |
| 1334 | 1333 |
| 1335 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDsForServerIdentifiers) { | 1334 TEST_F(BrowsingDataRemoverTest, RemoveChannelIDsForServerIdentifiers) { |
| 1336 RemoveChannelIDTester tester(GetProfile()); | 1335 RemoveChannelIDTester tester(GetProfile()); |
| 1337 | 1336 |
| 1338 tester.AddChannelID(kTestRegisterableDomain1); | 1337 tester.AddChannelID(kTestRegisterableDomain1); |
| 1339 tester.AddChannelID(kTestRegisterableDomain3); | 1338 tester.AddChannelID(kTestRegisterableDomain3); |
| 1340 EXPECT_EQ(2, tester.ChannelIDCount()); | 1339 EXPECT_EQ(2, tester.ChannelIDCount()); |
| 1341 | 1340 |
| 1342 RegistrableDomainFilterBuilder filter_builder( | 1341 RegistrableDomainFilterBuilder filter_builder( |
| 1343 RegistrableDomainFilterBuilder::WHITELIST); | 1342 RegistrableDomainFilterBuilder::WHITELIST); |
| 1344 filter_builder.AddRegisterableDomain(kTestRegisterableDomain1); | 1343 filter_builder.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1345 | 1344 |
| 1346 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1345 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 1347 BrowsingDataRemover::REMOVE_CHANNEL_IDS, filter_builder); | 1346 BrowsingDataRemover::REMOVE_CHANNEL_IDS, |
| 1347 filter_builder); |
| 1348 | 1348 |
| 1349 EXPECT_EQ(1, tester.ChannelIDCount()); | 1349 EXPECT_EQ(1, tester.ChannelIDCount()); |
| 1350 net::ChannelIDStore::ChannelIDList channel_ids; | 1350 net::ChannelIDStore::ChannelIDList channel_ids; |
| 1351 tester.GetChannelIDList(&channel_ids); | 1351 tester.GetChannelIDList(&channel_ids); |
| 1352 EXPECT_EQ(kTestRegisterableDomain3, channel_ids.front().server_identifier()); | 1352 EXPECT_EQ(kTestRegisterableDomain3, channel_ids.front().server_identifier()); |
| 1353 } | 1353 } |
| 1354 | 1354 |
| 1355 TEST_F(BrowsingDataRemoverTest, RemoveUnprotectedLocalStorageForever) { | 1355 TEST_F(BrowsingDataRemoverTest, RemoveUnprotectedLocalStorageForever) { |
| 1356 #if defined(ENABLE_EXTENSIONS) | 1356 #if defined(ENABLE_EXTENSIONS) |
| 1357 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1357 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1358 // Protect kOrigin1. | 1358 // Protect kOrigin1. |
| 1359 policy->AddProtected(kOrigin1.GetOrigin()); | 1359 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1360 #endif | 1360 #endif |
| 1361 | 1361 |
| 1362 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1362 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1363 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, | 1363 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, |
| 1364 false); | 1364 false); |
| 1365 | 1365 |
| 1366 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); | 1366 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); |
| 1367 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1367 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1368 | 1368 |
| 1369 // Verify that storage partition was instructed to remove the data correctly. | 1369 // Verify that storage partition was instructed to remove the data correctly. |
| 1370 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1370 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1371 EXPECT_EQ(removal_data.remove_mask, | 1371 EXPECT_EQ(removal_data.remove_mask, |
| 1372 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); | 1372 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); |
| 1373 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1373 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1374 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1374 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1375 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1375 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1376 | 1376 |
| 1377 // Check origin matcher. | 1377 // Check origin matcher. |
| 1378 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), | 1378 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), |
| 1379 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1379 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1380 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1380 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1381 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1381 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1382 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); | 1382 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); |
| 1383 } | 1383 } |
| 1384 | 1384 |
| 1385 TEST_F(BrowsingDataRemoverTest, RemoveProtectedLocalStorageForever) { | 1385 TEST_F(BrowsingDataRemoverTest, RemoveProtectedLocalStorageForever) { |
| 1386 #if defined(ENABLE_EXTENSIONS) | 1386 #if defined(ENABLE_EXTENSIONS) |
| 1387 // Protect kOrigin1. | 1387 // Protect kOrigin1. |
| 1388 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1388 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1389 policy->AddProtected(kOrigin1.GetOrigin()); | 1389 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1390 #endif | 1390 #endif |
| 1391 | 1391 |
| 1392 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1392 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1393 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, | 1393 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, |
| 1394 true); | 1394 true); |
| 1395 | 1395 |
| 1396 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); | 1396 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); |
| 1397 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB | | 1397 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB | |
| 1398 BrowsingDataHelper::PROTECTED_WEB, GetOriginTypeMask()); | 1398 BrowsingDataHelper::PROTECTED_WEB, GetOriginTypeMask()); |
| 1399 | 1399 |
| 1400 // Verify that storage partition was instructed to remove the data correctly. | 1400 // Verify that storage partition was instructed to remove the data correctly. |
| 1401 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1401 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1402 EXPECT_EQ(removal_data.remove_mask, | 1402 EXPECT_EQ(removal_data.remove_mask, |
| 1403 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); | 1403 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); |
| 1404 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1404 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1405 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1405 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1406 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1406 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1407 | 1407 |
| 1408 // Check origin matcher all http origin will match since we specified | 1408 // Check origin matcher all http origin will match since we specified |
| 1409 // both protected and unprotected. | 1409 // both protected and unprotected. |
| 1410 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1410 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1411 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1411 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1412 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1412 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1413 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); | 1413 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); |
| 1414 } | 1414 } |
| 1415 | 1415 |
| 1416 TEST_F(BrowsingDataRemoverTest, RemoveLocalStorageForLastWeek) { | 1416 TEST_F(BrowsingDataRemoverTest, RemoveLocalStorageForLastWeek) { |
| 1417 #if defined(ENABLE_EXTENSIONS) | 1417 #if defined(ENABLE_EXTENSIONS) |
| 1418 CreateMockPolicy(); | 1418 CreateMockPolicy(); |
| 1419 #endif | 1419 #endif |
| 1420 | 1420 |
| 1421 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK, | 1421 BlockUntilBrowsingDataRemoved(browsing_data::LAST_WEEK, |
| 1422 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, | 1422 BrowsingDataRemover::REMOVE_LOCAL_STORAGE, |
| 1423 false); | 1423 false); |
| 1424 | 1424 |
| 1425 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); | 1425 EXPECT_EQ(BrowsingDataRemover::REMOVE_LOCAL_STORAGE, GetRemovalMask()); |
| 1426 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1426 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1427 | 1427 |
| 1428 // Verify that storage partition was instructed to remove the data correctly. | 1428 // Verify that storage partition was instructed to remove the data correctly. |
| 1429 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1429 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1430 EXPECT_EQ(removal_data.remove_mask, | 1430 EXPECT_EQ(removal_data.remove_mask, |
| 1431 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); | 1431 StoragePartition::REMOVE_DATA_MASK_LOCAL_STORAGE); |
| 1432 // Persistent storage won't be deleted. | 1432 // Persistent storage won't be deleted. |
| 1433 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1433 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1434 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); | 1434 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); |
| 1435 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1435 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1436 | 1436 |
| 1437 // Check origin matcher. | 1437 // Check origin matcher. |
| 1438 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1438 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1439 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1439 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1440 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1440 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1441 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); | 1441 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); |
| 1442 } | 1442 } |
| 1443 | 1443 |
| 1444 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) { | 1444 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForever) { |
| 1445 RemoveHistoryTester tester; | 1445 RemoveHistoryTester tester; |
| 1446 ASSERT_TRUE(tester.Init(GetProfile())); | 1446 ASSERT_TRUE(tester.Init(GetProfile())); |
| 1447 | 1447 |
| 1448 tester.AddHistory(kOrigin1, base::Time::Now()); | 1448 tester.AddHistory(kOrigin1, base::Time::Now()); |
| 1449 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); | 1449 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); |
| 1450 | 1450 |
| 1451 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1451 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1452 BrowsingDataRemover::REMOVE_HISTORY, false); | 1452 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1453 | 1453 |
| 1454 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1454 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1455 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1455 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1456 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); | 1456 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); |
| 1457 } | 1457 } |
| 1458 | 1458 |
| 1459 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) { | 1459 TEST_F(BrowsingDataRemoverTest, RemoveHistoryForLastHour) { |
| 1460 RemoveHistoryTester tester; | 1460 RemoveHistoryTester tester; |
| 1461 ASSERT_TRUE(tester.Init(GetProfile())); | 1461 ASSERT_TRUE(tester.Init(GetProfile())); |
| 1462 | 1462 |
| 1463 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); | 1463 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); |
| 1464 | 1464 |
| 1465 tester.AddHistory(kOrigin1, base::Time::Now()); | 1465 tester.AddHistory(kOrigin1, base::Time::Now()); |
| 1466 tester.AddHistory(kOrigin2, two_hours_ago); | 1466 tester.AddHistory(kOrigin2, two_hours_ago); |
| 1467 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); | 1467 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); |
| 1468 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 1468 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 1469 | 1469 |
| 1470 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1470 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 1471 BrowsingDataRemover::REMOVE_HISTORY, false); | 1471 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1472 | 1472 |
| 1473 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1473 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1474 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1474 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1475 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); | 1475 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); |
| 1476 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 1476 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 1477 } | 1477 } |
| 1478 | 1478 |
| 1479 // This should crash (DCHECK) in Debug, but death tests don't work properly | 1479 // This should crash (DCHECK) in Debug, but death tests don't work properly |
| 1480 // here. | 1480 // here. |
| 1481 #if defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) | 1481 #if defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) |
| 1482 TEST_F(BrowsingDataRemoverTest, RemoveHistoryProhibited) { | 1482 TEST_F(BrowsingDataRemoverTest, RemoveHistoryProhibited) { |
| 1483 RemoveHistoryTester tester; | 1483 RemoveHistoryTester tester; |
| 1484 ASSERT_TRUE(tester.Init(GetProfile())); | 1484 ASSERT_TRUE(tester.Init(GetProfile())); |
| 1485 PrefService* prefs = GetProfile()->GetPrefs(); | 1485 PrefService* prefs = GetProfile()->GetPrefs(); |
| 1486 prefs->SetBoolean(prefs::kAllowDeletingBrowserHistory, false); | 1486 prefs->SetBoolean(prefs::kAllowDeletingBrowserHistory, false); |
| 1487 | 1487 |
| 1488 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); | 1488 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); |
| 1489 | 1489 |
| 1490 tester.AddHistory(kOrigin1, base::Time::Now()); | 1490 tester.AddHistory(kOrigin1, base::Time::Now()); |
| 1491 tester.AddHistory(kOrigin2, two_hours_ago); | 1491 tester.AddHistory(kOrigin2, two_hours_ago); |
| 1492 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); | 1492 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); |
| 1493 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 1493 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 1494 | 1494 |
| 1495 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1495 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 1496 BrowsingDataRemover::REMOVE_HISTORY, false); | 1496 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1497 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1497 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1498 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1498 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1499 | 1499 |
| 1500 // Nothing should have been deleted. | 1500 // Nothing should have been deleted. |
| 1501 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin1)); | 1501 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin1)); |
| 1502 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 1502 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 1503 } | 1503 } |
| 1504 #endif | 1504 #endif |
| 1505 | 1505 |
| 1506 TEST_F(BrowsingDataRemoverTest, RemoveMultipleTypes) { | 1506 TEST_F(BrowsingDataRemoverTest, RemoveMultipleTypes) { |
| 1507 // Add some history. | 1507 // Add some history. |
| 1508 RemoveHistoryTester history_tester; | 1508 RemoveHistoryTester history_tester; |
| 1509 ASSERT_TRUE(history_tester.Init(GetProfile())); | 1509 ASSERT_TRUE(history_tester.Init(GetProfile())); |
| 1510 history_tester.AddHistory(kOrigin1, base::Time::Now()); | 1510 history_tester.AddHistory(kOrigin1, base::Time::Now()); |
| 1511 ASSERT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); | 1511 ASSERT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); |
| 1512 | 1512 |
| 1513 int removal_mask = BrowsingDataRemover::REMOVE_HISTORY | | 1513 int removal_mask = BrowsingDataRemover::REMOVE_HISTORY | |
| 1514 BrowsingDataRemover::REMOVE_COOKIES; | 1514 BrowsingDataRemover::REMOVE_COOKIES; |
| 1515 | 1515 |
| 1516 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1516 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, removal_mask, false); |
| 1517 removal_mask, false); | |
| 1518 | 1517 |
| 1519 EXPECT_EQ(removal_mask, GetRemovalMask()); | 1518 EXPECT_EQ(removal_mask, GetRemovalMask()); |
| 1520 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1519 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1521 EXPECT_FALSE(history_tester.HistoryContainsURL(kOrigin1)); | 1520 EXPECT_FALSE(history_tester.HistoryContainsURL(kOrigin1)); |
| 1522 | 1521 |
| 1523 // The cookie would be deleted throught the StorageParition, check if the | 1522 // The cookie would be deleted throught the StorageParition, check if the |
| 1524 // partition was requested to remove cookie. | 1523 // partition was requested to remove cookie. |
| 1525 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1524 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1526 EXPECT_EQ(removal_data.remove_mask, | 1525 EXPECT_EQ(removal_data.remove_mask, |
| 1527 StoragePartition::REMOVE_DATA_MASK_COOKIES); | 1526 StoragePartition::REMOVE_DATA_MASK_COOKIES); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 1538 | 1537 |
| 1539 // Add some history. | 1538 // Add some history. |
| 1540 RemoveHistoryTester history_tester; | 1539 RemoveHistoryTester history_tester; |
| 1541 ASSERT_TRUE(history_tester.Init(GetProfile())); | 1540 ASSERT_TRUE(history_tester.Init(GetProfile())); |
| 1542 history_tester.AddHistory(kOrigin1, base::Time::Now()); | 1541 history_tester.AddHistory(kOrigin1, base::Time::Now()); |
| 1543 ASSERT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); | 1542 ASSERT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); |
| 1544 | 1543 |
| 1545 int removal_mask = BrowsingDataRemover::REMOVE_HISTORY | | 1544 int removal_mask = BrowsingDataRemover::REMOVE_HISTORY | |
| 1546 BrowsingDataRemover::REMOVE_COOKIES; | 1545 BrowsingDataRemover::REMOVE_COOKIES; |
| 1547 | 1546 |
| 1548 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1547 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, removal_mask, false); |
| 1549 removal_mask, false); | |
| 1550 EXPECT_EQ(removal_mask, GetRemovalMask()); | 1548 EXPECT_EQ(removal_mask, GetRemovalMask()); |
| 1551 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1549 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1552 | 1550 |
| 1553 // 1/2. History should remain. | 1551 // 1/2. History should remain. |
| 1554 EXPECT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); | 1552 EXPECT_TRUE(history_tester.HistoryContainsURL(kOrigin1)); |
| 1555 | 1553 |
| 1556 // 2/2. The cookie(s) would be deleted throught the StorageParition, check if | 1554 // 2/2. The cookie(s) would be deleted throught the StorageParition, check if |
| 1557 // the partition was requested to remove cookie. | 1555 // the partition was requested to remove cookie. |
| 1558 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1556 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1559 EXPECT_EQ(removal_data.remove_mask, | 1557 EXPECT_EQ(removal_data.remove_mask, |
| 1560 StoragePartition::REMOVE_DATA_MASK_COOKIES); | 1558 StoragePartition::REMOVE_DATA_MASK_COOKIES); |
| 1561 // Persistent storage won't be deleted, since EVERYTHING was not specified. | 1559 // Persistent storage won't be deleted, since EVERYTHING was not specified. |
| 1562 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1560 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1563 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); | 1561 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT); |
| 1564 } | 1562 } |
| 1565 #endif | 1563 #endif |
| 1566 | 1564 |
| 1567 // Test that clearing history deletes favicons not associated with bookmarks. | 1565 // Test that clearing history deletes favicons not associated with bookmarks. |
| 1568 TEST_F(BrowsingDataRemoverTest, RemoveFaviconsForever) { | 1566 TEST_F(BrowsingDataRemoverTest, RemoveFaviconsForever) { |
| 1569 GURL page_url("http://a"); | 1567 GURL page_url("http://a"); |
| 1570 | 1568 |
| 1571 RemoveFaviconTester favicon_tester; | 1569 RemoveFaviconTester favicon_tester; |
| 1572 ASSERT_TRUE(favicon_tester.Init(GetProfile())); | 1570 ASSERT_TRUE(favicon_tester.Init(GetProfile())); |
| 1573 favicon_tester.VisitAndAddFavicon(page_url); | 1571 favicon_tester.VisitAndAddFavicon(page_url); |
| 1574 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(page_url)); | 1572 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(page_url)); |
| 1575 | 1573 |
| 1576 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1574 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1577 BrowsingDataRemover::REMOVE_HISTORY, false); | 1575 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1578 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1576 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1579 EXPECT_FALSE(favicon_tester.HasFaviconForPageURL(page_url)); | 1577 EXPECT_FALSE(favicon_tester.HasFaviconForPageURL(page_url)); |
| 1580 } | 1578 } |
| 1581 | 1579 |
| 1582 // Test that a bookmark's favicon is expired and not deleted when clearing | 1580 // Test that a bookmark's favicon is expired and not deleted when clearing |
| 1583 // history. Expiring the favicon causes the bookmark's favicon to be updated | 1581 // history. Expiring the favicon causes the bookmark's favicon to be updated |
| 1584 // when the user next visits the bookmarked page. Expiring the bookmark's | 1582 // when the user next visits the bookmarked page. Expiring the bookmark's |
| 1585 // favicon is useful when the bookmark's favicon becomes incorrect (See | 1583 // favicon is useful when the bookmark's favicon becomes incorrect (See |
| 1586 // crbug.com/474421 for a sample bug which causes this). | 1584 // crbug.com/474421 for a sample bug which causes this). |
| 1587 TEST_F(BrowsingDataRemoverTest, ExpireBookmarkFavicons) { | 1585 TEST_F(BrowsingDataRemoverTest, ExpireBookmarkFavicons) { |
| 1588 GURL bookmarked_page("http://a"); | 1586 GURL bookmarked_page("http://a"); |
| 1589 | 1587 |
| 1590 TestingProfile* profile = GetProfile(); | 1588 TestingProfile* profile = GetProfile(); |
| 1591 profile->CreateBookmarkModel(true); | 1589 profile->CreateBookmarkModel(true); |
| 1592 bookmarks::BookmarkModel* bookmark_model = | 1590 bookmarks::BookmarkModel* bookmark_model = |
| 1593 BookmarkModelFactory::GetForProfile(profile); | 1591 BookmarkModelFactory::GetForProfile(profile); |
| 1594 bookmarks::test::WaitForBookmarkModelToLoad(bookmark_model); | 1592 bookmarks::test::WaitForBookmarkModelToLoad(bookmark_model); |
| 1595 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(), 0, | 1593 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(), 0, |
| 1596 base::ASCIIToUTF16("a"), bookmarked_page); | 1594 base::ASCIIToUTF16("a"), bookmarked_page); |
| 1597 | 1595 |
| 1598 RemoveFaviconTester favicon_tester; | 1596 RemoveFaviconTester favicon_tester; |
| 1599 ASSERT_TRUE(favicon_tester.Init(GetProfile())); | 1597 ASSERT_TRUE(favicon_tester.Init(GetProfile())); |
| 1600 favicon_tester.VisitAndAddFavicon(bookmarked_page); | 1598 favicon_tester.VisitAndAddFavicon(bookmarked_page); |
| 1601 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(bookmarked_page)); | 1599 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(bookmarked_page)); |
| 1602 | 1600 |
| 1603 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1601 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 1604 BrowsingDataRemover::REMOVE_HISTORY, false); | 1602 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1605 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1603 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1606 EXPECT_TRUE(favicon_tester.HasExpiredFaviconForPageURL(bookmarked_page)); | 1604 EXPECT_TRUE(favicon_tester.HasExpiredFaviconForPageURL(bookmarked_page)); |
| 1607 } | 1605 } |
| 1608 | 1606 |
| 1609 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { | 1607 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { |
| 1610 BlockUntilBrowsingDataRemoved( | 1608 BlockUntilBrowsingDataRemoved( |
| 1611 BrowsingDataRemover::EVERYTHING, | 1609 browsing_data::EVERYTHING, |
| 1612 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1610 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1613 BrowsingDataRemover::REMOVE_WEBSQL | | 1611 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1614 BrowsingDataRemover::REMOVE_APPCACHE | | 1612 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1615 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1613 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1616 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1614 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1617 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1615 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1618 false); | 1616 false); |
| 1619 | 1617 |
| 1620 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1618 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1621 BrowsingDataRemover::REMOVE_WEBSQL | | 1619 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1638 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1636 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1639 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1637 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1640 } | 1638 } |
| 1641 | 1639 |
| 1642 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { | 1640 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { |
| 1643 #if defined(ENABLE_EXTENSIONS) | 1641 #if defined(ENABLE_EXTENSIONS) |
| 1644 CreateMockPolicy(); | 1642 CreateMockPolicy(); |
| 1645 #endif | 1643 #endif |
| 1646 | 1644 |
| 1647 BlockUntilBrowsingDataRemoved( | 1645 BlockUntilBrowsingDataRemoved( |
| 1648 BrowsingDataRemover::EVERYTHING, | 1646 browsing_data::EVERYTHING, |
| 1649 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1647 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1650 BrowsingDataRemover::REMOVE_WEBSQL | | 1648 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1651 BrowsingDataRemover::REMOVE_APPCACHE | | 1649 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1652 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1650 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1653 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1651 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1654 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1652 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1655 false); | 1653 false); |
| 1656 | 1654 |
| 1657 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1655 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1658 BrowsingDataRemover::REMOVE_WEBSQL | | 1656 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 23 matching lines...) Expand all Loading... |
| 1682 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1680 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1683 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1681 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1684 } | 1682 } |
| 1685 | 1683 |
| 1686 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { | 1684 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { |
| 1687 #if defined(ENABLE_EXTENSIONS) | 1685 #if defined(ENABLE_EXTENSIONS) |
| 1688 CreateMockPolicy(); | 1686 CreateMockPolicy(); |
| 1689 #endif | 1687 #endif |
| 1690 | 1688 |
| 1691 BlockUntilBrowsingDataRemoved( | 1689 BlockUntilBrowsingDataRemoved( |
| 1692 BrowsingDataRemover::EVERYTHING, | 1690 browsing_data::EVERYTHING, |
| 1693 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1691 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1694 BrowsingDataRemover::REMOVE_WEBSQL | | 1692 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1695 BrowsingDataRemover::REMOVE_APPCACHE | | 1693 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1696 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1694 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1697 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1695 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1698 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1696 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1699 false); | 1697 false); |
| 1700 | 1698 |
| 1701 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1699 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1702 BrowsingDataRemover::REMOVE_WEBSQL | | 1700 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 23 matching lines...) Expand all Loading... |
| 1726 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1724 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1727 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1725 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1728 } | 1726 } |
| 1729 | 1727 |
| 1730 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { | 1728 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { |
| 1731 #if defined(ENABLE_EXTENSIONS) | 1729 #if defined(ENABLE_EXTENSIONS) |
| 1732 CreateMockPolicy(); | 1730 CreateMockPolicy(); |
| 1733 #endif | 1731 #endif |
| 1734 | 1732 |
| 1735 BlockUntilBrowsingDataRemoved( | 1733 BlockUntilBrowsingDataRemoved( |
| 1736 BrowsingDataRemover::EVERYTHING, | 1734 browsing_data::EVERYTHING, |
| 1737 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1735 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1738 BrowsingDataRemover::REMOVE_WEBSQL | | 1736 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1739 BrowsingDataRemover::REMOVE_APPCACHE | | 1737 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1740 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1738 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1741 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1739 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1742 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1740 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1743 false); | 1741 false); |
| 1744 | 1742 |
| 1745 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1743 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1746 BrowsingDataRemover::REMOVE_WEBSQL | | 1744 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 22 matching lines...) Expand all Loading... |
| 1769 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1767 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1770 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1768 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1771 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1769 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1772 } | 1770 } |
| 1773 | 1771 |
| 1774 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) { | 1772 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) { |
| 1775 RegistrableDomainFilterBuilder builder( | 1773 RegistrableDomainFilterBuilder builder( |
| 1776 RegistrableDomainFilterBuilder::WHITELIST); | 1774 RegistrableDomainFilterBuilder::WHITELIST); |
| 1777 builder.AddRegisterableDomain(kTestRegisterableDomain1); | 1775 builder.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1778 // Remove Origin 1. | 1776 // Remove Origin 1. |
| 1779 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1777 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 1780 BrowsingDataRemover::REMOVE_APPCACHE | | 1778 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1781 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1779 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1782 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1780 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1783 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1781 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1784 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1782 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1785 BrowsingDataRemover::REMOVE_WEBSQL, | 1783 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1786 builder); | 1784 builder); |
| 1787 | 1785 |
| 1788 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1786 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1789 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1787 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| (...skipping 17 matching lines...) Expand all Loading... |
| 1807 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1805 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1808 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1806 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1809 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1807 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1810 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1808 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1811 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1809 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1812 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin4, mock_policy())); | 1810 EXPECT_FALSE(removal_data.origin_matcher.Run(kOrigin4, mock_policy())); |
| 1813 } | 1811 } |
| 1814 | 1812 |
| 1815 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { | 1813 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { |
| 1816 BlockUntilBrowsingDataRemoved( | 1814 BlockUntilBrowsingDataRemoved( |
| 1817 BrowsingDataRemover::LAST_HOUR, | 1815 browsing_data::LAST_HOUR, |
| 1818 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1816 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1819 BrowsingDataRemover::REMOVE_WEBSQL | | 1817 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1820 BrowsingDataRemover::REMOVE_APPCACHE | | 1818 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1821 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1819 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1822 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1820 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1823 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1821 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1824 false); | 1822 false); |
| 1825 | 1823 |
| 1826 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1824 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1827 BrowsingDataRemover::REMOVE_WEBSQL | | 1825 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 19 matching lines...) Expand all Loading... |
| 1847 // beginning of time. | 1845 // beginning of time. |
| 1848 uint32_t expected_quota_mask = | 1846 uint32_t expected_quota_mask = |
| 1849 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; | 1847 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; |
| 1850 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); | 1848 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); |
| 1851 // Check removal begin time. | 1849 // Check removal begin time. |
| 1852 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1850 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1853 } | 1851 } |
| 1854 | 1852 |
| 1855 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { | 1853 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { |
| 1856 BlockUntilBrowsingDataRemoved( | 1854 BlockUntilBrowsingDataRemoved( |
| 1857 BrowsingDataRemover::LAST_WEEK, | 1855 browsing_data::LAST_WEEK, |
| 1858 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1856 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1859 BrowsingDataRemover::REMOVE_WEBSQL | | 1857 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1860 BrowsingDataRemover::REMOVE_APPCACHE | | 1858 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1861 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1859 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1862 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1860 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1863 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1861 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1864 false); | 1862 false); |
| 1865 | 1863 |
| 1866 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1864 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1867 BrowsingDataRemover::REMOVE_WEBSQL | | 1865 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 25 matching lines...) Expand all Loading... |
| 1893 } | 1891 } |
| 1894 | 1892 |
| 1895 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { | 1893 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { |
| 1896 #if defined(ENABLE_EXTENSIONS) | 1894 #if defined(ENABLE_EXTENSIONS) |
| 1897 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1895 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1898 // Protect kOrigin1. | 1896 // Protect kOrigin1. |
| 1899 policy->AddProtected(kOrigin1.GetOrigin()); | 1897 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1900 #endif | 1898 #endif |
| 1901 | 1899 |
| 1902 BlockUntilBrowsingDataRemoved( | 1900 BlockUntilBrowsingDataRemoved( |
| 1903 BrowsingDataRemover::EVERYTHING, | 1901 browsing_data::EVERYTHING, |
| 1904 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1902 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1905 BrowsingDataRemover::REMOVE_WEBSQL | | 1903 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1906 BrowsingDataRemover::REMOVE_APPCACHE | | 1904 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1907 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1905 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1908 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1906 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1909 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1907 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1910 false); | 1908 false); |
| 1911 | 1909 |
| 1912 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1910 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1913 BrowsingDataRemover::REMOVE_WEBSQL | | 1911 BrowsingDataRemover::REMOVE_WEBSQL | |
| (...skipping 29 matching lines...) Expand all Loading... |
| 1943 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1941 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1944 // Protect kOrigin1. | 1942 // Protect kOrigin1. |
| 1945 policy->AddProtected(kOrigin1.GetOrigin()); | 1943 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1946 #endif | 1944 #endif |
| 1947 | 1945 |
| 1948 RegistrableDomainFilterBuilder builder( | 1946 RegistrableDomainFilterBuilder builder( |
| 1949 RegistrableDomainFilterBuilder::WHITELIST); | 1947 RegistrableDomainFilterBuilder::WHITELIST); |
| 1950 builder.AddRegisterableDomain(kTestRegisterableDomain1); | 1948 builder.AddRegisterableDomain(kTestRegisterableDomain1); |
| 1951 | 1949 |
| 1952 // Try to remove kOrigin1. Expect failure. | 1950 // Try to remove kOrigin1. Expect failure. |
| 1953 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1951 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 1954 BrowsingDataRemover::REMOVE_APPCACHE | | 1952 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1955 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1953 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1956 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 1954 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1957 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1955 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1958 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1956 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1959 BrowsingDataRemover::REMOVE_WEBSQL, | 1957 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1960 builder); | 1958 builder); |
| 1961 | 1959 |
| 1962 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1960 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1963 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1961 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| (...skipping 28 matching lines...) Expand all Loading... |
| 1992 | 1990 |
| 1993 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) { | 1991 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) { |
| 1994 #if defined(ENABLE_EXTENSIONS) | 1992 #if defined(ENABLE_EXTENSIONS) |
| 1995 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1993 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1996 // Protect kOrigin1. | 1994 // Protect kOrigin1. |
| 1997 policy->AddProtected(kOrigin1.GetOrigin()); | 1995 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1998 #endif | 1996 #endif |
| 1999 | 1997 |
| 2000 // Try to remove kOrigin1. Expect success. | 1998 // Try to remove kOrigin1. Expect success. |
| 2001 BlockUntilBrowsingDataRemoved( | 1999 BlockUntilBrowsingDataRemoved( |
| 2002 BrowsingDataRemover::EVERYTHING, | 2000 browsing_data::EVERYTHING, |
| 2003 BrowsingDataRemover::REMOVE_APPCACHE | | 2001 BrowsingDataRemover::REMOVE_APPCACHE | |
| 2004 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 2002 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 2005 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 2003 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 2006 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 2004 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 2007 BrowsingDataRemover::REMOVE_INDEXEDDB | | 2005 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 2008 BrowsingDataRemover::REMOVE_WEBSQL, | 2006 BrowsingDataRemover::REMOVE_WEBSQL, |
| 2009 true); | 2007 true); |
| 2010 | 2008 |
| 2011 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 2009 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 2012 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 2010 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| (...skipping 24 matching lines...) Expand all Loading... |
| 2037 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 2035 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 2038 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 2036 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 2039 } | 2037 } |
| 2040 | 2038 |
| 2041 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) { | 2039 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) { |
| 2042 #if defined(ENABLE_EXTENSIONS) | 2040 #if defined(ENABLE_EXTENSIONS) |
| 2043 CreateMockPolicy(); | 2041 CreateMockPolicy(); |
| 2044 #endif | 2042 #endif |
| 2045 | 2043 |
| 2046 BlockUntilBrowsingDataRemoved( | 2044 BlockUntilBrowsingDataRemoved( |
| 2047 BrowsingDataRemover::EVERYTHING, | 2045 browsing_data::EVERYTHING, |
| 2048 BrowsingDataRemover::REMOVE_APPCACHE | | 2046 BrowsingDataRemover::REMOVE_APPCACHE | |
| 2049 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 2047 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 2050 BrowsingDataRemover::REMOVE_CACHE_STORAGE | | 2048 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 2051 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 2049 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 2052 BrowsingDataRemover::REMOVE_INDEXEDDB | | 2050 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 2053 BrowsingDataRemover::REMOVE_WEBSQL, | 2051 BrowsingDataRemover::REMOVE_WEBSQL, |
| 2054 false); | 2052 false); |
| 2055 | 2053 |
| 2056 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 2054 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 2057 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 2055 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| (...skipping 29 matching lines...) Expand all Loading... |
| 2087 | 2085 |
| 2088 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); | 2086 base::Time two_hours_ago = base::Time::Now() - base::TimeDelta::FromHours(2); |
| 2089 | 2087 |
| 2090 tester.AddHistory(kOrigin1, base::Time::Now()); | 2088 tester.AddHistory(kOrigin1, base::Time::Now()); |
| 2091 tester.AddHistory(kOrigin2, two_hours_ago); | 2089 tester.AddHistory(kOrigin2, two_hours_ago); |
| 2092 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); | 2090 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin1)); |
| 2093 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 2091 ASSERT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 2094 | 2092 |
| 2095 RegistrableDomainFilterBuilder builder( | 2093 RegistrableDomainFilterBuilder builder( |
| 2096 RegistrableDomainFilterBuilder::BLACKLIST); | 2094 RegistrableDomainFilterBuilder::BLACKLIST); |
| 2097 BlockUntilOriginDataRemoved(BrowsingDataRemover::LAST_HOUR, | 2095 BlockUntilOriginDataRemoved(browsing_data::LAST_HOUR, |
| 2098 BrowsingDataRemover::REMOVE_HISTORY, builder); | 2096 BrowsingDataRemover::REMOVE_HISTORY, builder); |
| 2099 | 2097 |
| 2100 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 2098 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 2101 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2099 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2102 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); | 2100 EXPECT_FALSE(tester.HistoryContainsURL(kOrigin1)); |
| 2103 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); | 2101 EXPECT_TRUE(tester.HistoryContainsURL(kOrigin2)); |
| 2104 } | 2102 } |
| 2105 | 2103 |
| 2106 // Verify that clearing autofill form data works. | 2104 // Verify that clearing autofill form data works. |
| 2107 TEST_F(BrowsingDataRemoverTest, AutofillRemovalLastHour) { | 2105 TEST_F(BrowsingDataRemoverTest, AutofillRemovalLastHour) { |
| 2108 GetProfile()->CreateWebDataService(); | 2106 GetProfile()->CreateWebDataService(); |
| 2109 RemoveAutofillTester tester(GetProfile()); | 2107 RemoveAutofillTester tester(GetProfile()); |
| 2110 | 2108 |
| 2111 ASSERT_FALSE(tester.HasProfile()); | 2109 ASSERT_FALSE(tester.HasProfile()); |
| 2112 tester.AddProfilesAndCards(); | 2110 tester.AddProfilesAndCards(); |
| 2113 ASSERT_TRUE(tester.HasProfile()); | 2111 ASSERT_TRUE(tester.HasProfile()); |
| 2114 | 2112 |
| 2115 BlockUntilBrowsingDataRemoved( | 2113 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 2116 BrowsingDataRemover::LAST_HOUR, | 2114 BrowsingDataRemover::REMOVE_FORM_DATA, false); |
| 2117 BrowsingDataRemover::REMOVE_FORM_DATA, false); | |
| 2118 | 2115 |
| 2119 EXPECT_EQ(BrowsingDataRemover::REMOVE_FORM_DATA, GetRemovalMask()); | 2116 EXPECT_EQ(BrowsingDataRemover::REMOVE_FORM_DATA, GetRemovalMask()); |
| 2120 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2117 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2121 ASSERT_FALSE(tester.HasProfile()); | 2118 ASSERT_FALSE(tester.HasProfile()); |
| 2122 } | 2119 } |
| 2123 | 2120 |
| 2124 TEST_F(BrowsingDataRemoverTest, AutofillRemovalEverything) { | 2121 TEST_F(BrowsingDataRemoverTest, AutofillRemovalEverything) { |
| 2125 GetProfile()->CreateWebDataService(); | 2122 GetProfile()->CreateWebDataService(); |
| 2126 RemoveAutofillTester tester(GetProfile()); | 2123 RemoveAutofillTester tester(GetProfile()); |
| 2127 | 2124 |
| 2128 ASSERT_FALSE(tester.HasProfile()); | 2125 ASSERT_FALSE(tester.HasProfile()); |
| 2129 tester.AddProfilesAndCards(); | 2126 tester.AddProfilesAndCards(); |
| 2130 ASSERT_TRUE(tester.HasProfile()); | 2127 ASSERT_TRUE(tester.HasProfile()); |
| 2131 | 2128 |
| 2132 BlockUntilBrowsingDataRemoved( | 2129 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2133 BrowsingDataRemover::EVERYTHING, | 2130 BrowsingDataRemover::REMOVE_FORM_DATA, false); |
| 2134 BrowsingDataRemover::REMOVE_FORM_DATA, false); | |
| 2135 | 2131 |
| 2136 EXPECT_EQ(BrowsingDataRemover::REMOVE_FORM_DATA, GetRemovalMask()); | 2132 EXPECT_EQ(BrowsingDataRemover::REMOVE_FORM_DATA, GetRemovalMask()); |
| 2137 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2133 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2138 ASSERT_FALSE(tester.HasProfile()); | 2134 ASSERT_FALSE(tester.HasProfile()); |
| 2139 } | 2135 } |
| 2140 | 2136 |
| 2141 // Verify that clearing autofill form data works. | 2137 // Verify that clearing autofill form data works. |
| 2142 TEST_F(BrowsingDataRemoverTest, AutofillOriginsRemovedWithHistory) { | 2138 TEST_F(BrowsingDataRemoverTest, AutofillOriginsRemovedWithHistory) { |
| 2143 GetProfile()->CreateWebDataService(); | 2139 GetProfile()->CreateWebDataService(); |
| 2144 RemoveAutofillTester tester(GetProfile()); | 2140 RemoveAutofillTester tester(GetProfile()); |
| 2145 | 2141 |
| 2146 tester.AddProfilesAndCards(); | 2142 tester.AddProfilesAndCards(); |
| 2147 EXPECT_FALSE(tester.HasOrigin(std::string())); | 2143 EXPECT_FALSE(tester.HasOrigin(std::string())); |
| 2148 EXPECT_TRUE(tester.HasOrigin(kWebOrigin)); | 2144 EXPECT_TRUE(tester.HasOrigin(kWebOrigin)); |
| 2149 EXPECT_TRUE(tester.HasOrigin(autofill::kSettingsOrigin)); | 2145 EXPECT_TRUE(tester.HasOrigin(autofill::kSettingsOrigin)); |
| 2150 | 2146 |
| 2151 BlockUntilBrowsingDataRemoved( | 2147 BlockUntilBrowsingDataRemoved(browsing_data::LAST_HOUR, |
| 2152 BrowsingDataRemover::LAST_HOUR, | 2148 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 2153 BrowsingDataRemover::REMOVE_HISTORY, false); | |
| 2154 | 2149 |
| 2155 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 2150 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 2156 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2151 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2157 EXPECT_TRUE(tester.HasOrigin(std::string())); | 2152 EXPECT_TRUE(tester.HasOrigin(std::string())); |
| 2158 EXPECT_FALSE(tester.HasOrigin(kWebOrigin)); | 2153 EXPECT_FALSE(tester.HasOrigin(kWebOrigin)); |
| 2159 EXPECT_TRUE(tester.HasOrigin(autofill::kSettingsOrigin)); | 2154 EXPECT_TRUE(tester.HasOrigin(autofill::kSettingsOrigin)); |
| 2160 } | 2155 } |
| 2161 | 2156 |
| 2162 TEST_F(BrowsingDataRemoverTest, CompletionInhibition) { | 2157 TEST_F(BrowsingDataRemoverTest, CompletionInhibition) { |
| 2163 // The |completion_inhibitor| on the stack should prevent removal sessions | 2158 // The |completion_inhibitor| on the stack should prevent removal sessions |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2217 | 2212 |
| 2218 // Finishing after shutdown shouldn't break anything. | 2213 // Finishing after shutdown shouldn't break anything. |
| 2219 completion_inhibitor.ContinueToCompletion(); | 2214 completion_inhibitor.ContinueToCompletion(); |
| 2220 completion_observer.BlockUntilCompletion(); | 2215 completion_observer.BlockUntilCompletion(); |
| 2221 } | 2216 } |
| 2222 | 2217 |
| 2223 TEST_F(BrowsingDataRemoverTest, ZeroSuggestCacheClear) { | 2218 TEST_F(BrowsingDataRemoverTest, ZeroSuggestCacheClear) { |
| 2224 PrefService* prefs = GetProfile()->GetPrefs(); | 2219 PrefService* prefs = GetProfile()->GetPrefs(); |
| 2225 prefs->SetString(omnibox::kZeroSuggestCachedResults, | 2220 prefs->SetString(omnibox::kZeroSuggestCachedResults, |
| 2226 "[\"\", [\"foo\", \"bar\"]]"); | 2221 "[\"\", [\"foo\", \"bar\"]]"); |
| 2227 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 2222 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2228 BrowsingDataRemover::REMOVE_COOKIES, | 2223 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 2229 false); | |
| 2230 | 2224 |
| 2231 // Expect the prefs to be cleared when cookies are removed. | 2225 // Expect the prefs to be cleared when cookies are removed. |
| 2232 EXPECT_TRUE(prefs->GetString(omnibox::kZeroSuggestCachedResults).empty()); | 2226 EXPECT_TRUE(prefs->GetString(omnibox::kZeroSuggestCachedResults).empty()); |
| 2233 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); | 2227 EXPECT_EQ(BrowsingDataRemover::REMOVE_COOKIES, GetRemovalMask()); |
| 2234 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2228 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2235 } | 2229 } |
| 2236 | 2230 |
| 2237 #if defined(OS_CHROMEOS) | 2231 #if defined(OS_CHROMEOS) |
| 2238 TEST_F(BrowsingDataRemoverTest, ContentProtectionPlatformKeysRemoval) { | 2232 TEST_F(BrowsingDataRemoverTest, ContentProtectionPlatformKeysRemoval) { |
| 2239 chromeos::ScopedTestDeviceSettingsService test_device_settings_service; | 2233 chromeos::ScopedTestDeviceSettingsService test_device_settings_service; |
| 2240 chromeos::ScopedTestCrosSettings test_cros_settings; | 2234 chromeos::ScopedTestCrosSettings test_cros_settings; |
| 2241 chromeos::MockUserManager* mock_user_manager = | 2235 chromeos::MockUserManager* mock_user_manager = |
| 2242 new testing::NiceMock<chromeos::MockUserManager>(); | 2236 new testing::NiceMock<chromeos::MockUserManager>(); |
| 2243 mock_user_manager->SetActiveUser( | 2237 mock_user_manager->SetActiveUser( |
| 2244 AccountId::FromUserEmail("test@example.com")); | 2238 AccountId::FromUserEmail("test@example.com")); |
| 2245 chromeos::ScopedUserManagerEnabler user_manager_enabler(mock_user_manager); | 2239 chromeos::ScopedUserManagerEnabler user_manager_enabler(mock_user_manager); |
| 2246 | 2240 |
| 2247 std::unique_ptr<chromeos::DBusThreadManagerSetter> dbus_setter = | 2241 std::unique_ptr<chromeos::DBusThreadManagerSetter> dbus_setter = |
| 2248 chromeos::DBusThreadManager::GetSetterForTesting(); | 2242 chromeos::DBusThreadManager::GetSetterForTesting(); |
| 2249 chromeos::MockCryptohomeClient* cryptohome_client = | 2243 chromeos::MockCryptohomeClient* cryptohome_client = |
| 2250 new chromeos::MockCryptohomeClient; | 2244 new chromeos::MockCryptohomeClient; |
| 2251 dbus_setter->SetCryptohomeClient( | 2245 dbus_setter->SetCryptohomeClient( |
| 2252 std::unique_ptr<chromeos::CryptohomeClient>(cryptohome_client)); | 2246 std::unique_ptr<chromeos::CryptohomeClient>(cryptohome_client)); |
| 2253 | 2247 |
| 2254 // Expect exactly one call. No calls means no attempt to delete keys and more | 2248 // Expect exactly one call. No calls means no attempt to delete keys and more |
| 2255 // than one call means a significant performance problem. | 2249 // than one call means a significant performance problem. |
| 2256 EXPECT_CALL(*cryptohome_client, TpmAttestationDeleteKeys(_, _, _, _)) | 2250 EXPECT_CALL(*cryptohome_client, TpmAttestationDeleteKeys(_, _, _, _)) |
| 2257 .WillOnce(WithArgs<3>(Invoke(FakeDBusCall))); | 2251 .WillOnce(WithArgs<3>(Invoke(FakeDBusCall))); |
| 2258 | 2252 |
| 2259 BlockUntilBrowsingDataRemoved( | 2253 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2260 BrowsingDataRemover::EVERYTHING, | 2254 BrowsingDataRemover::REMOVE_CONTENT_LICENSES, |
| 2261 BrowsingDataRemover::REMOVE_CONTENT_LICENSES, false); | 2255 false); |
| 2262 | 2256 |
| 2263 chromeos::DBusThreadManager::Shutdown(); | 2257 chromeos::DBusThreadManager::Shutdown(); |
| 2264 } | 2258 } |
| 2265 #endif | 2259 #endif |
| 2266 | 2260 |
| 2267 TEST_F(BrowsingDataRemoverTest, DomainReliability_Null) { | 2261 TEST_F(BrowsingDataRemoverTest, DomainReliability_Null) { |
| 2268 const ClearDomainReliabilityTester& tester = | 2262 const ClearDomainReliabilityTester& tester = |
| 2269 clear_domain_reliability_tester(); | 2263 clear_domain_reliability_tester(); |
| 2270 | 2264 |
| 2271 EXPECT_EQ(0u, tester.clear_count()); | 2265 EXPECT_EQ(0u, tester.clear_count()); |
| 2272 } | 2266 } |
| 2273 | 2267 |
| 2274 TEST_F(BrowsingDataRemoverTest, DomainReliability_Beacons) { | 2268 TEST_F(BrowsingDataRemoverTest, DomainReliability_Beacons) { |
| 2275 const ClearDomainReliabilityTester& tester = | 2269 const ClearDomainReliabilityTester& tester = |
| 2276 clear_domain_reliability_tester(); | 2270 clear_domain_reliability_tester(); |
| 2277 | 2271 |
| 2278 BlockUntilBrowsingDataRemoved( | 2272 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2279 BrowsingDataRemover::EVERYTHING, | 2273 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 2280 BrowsingDataRemover::REMOVE_HISTORY, false); | |
| 2281 EXPECT_EQ(1u, tester.clear_count()); | 2274 EXPECT_EQ(1u, tester.clear_count()); |
| 2282 EXPECT_EQ(CLEAR_BEACONS, tester.last_clear_mode()); | 2275 EXPECT_EQ(CLEAR_BEACONS, tester.last_clear_mode()); |
| 2283 } | 2276 } |
| 2284 | 2277 |
| 2285 TEST_F(BrowsingDataRemoverTest, DomainReliability_Contexts) { | 2278 TEST_F(BrowsingDataRemoverTest, DomainReliability_Contexts) { |
| 2286 const ClearDomainReliabilityTester& tester = | 2279 const ClearDomainReliabilityTester& tester = |
| 2287 clear_domain_reliability_tester(); | 2280 clear_domain_reliability_tester(); |
| 2288 | 2281 |
| 2289 BlockUntilBrowsingDataRemoved( | 2282 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2290 BrowsingDataRemover::EVERYTHING, | 2283 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 2291 BrowsingDataRemover::REMOVE_COOKIES, false); | |
| 2292 EXPECT_EQ(1u, tester.clear_count()); | 2284 EXPECT_EQ(1u, tester.clear_count()); |
| 2293 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); | 2285 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); |
| 2294 } | 2286 } |
| 2295 | 2287 |
| 2296 TEST_F(BrowsingDataRemoverTest, DomainReliability_ContextsWin) { | 2288 TEST_F(BrowsingDataRemoverTest, DomainReliability_ContextsWin) { |
| 2297 const ClearDomainReliabilityTester& tester = | 2289 const ClearDomainReliabilityTester& tester = |
| 2298 clear_domain_reliability_tester(); | 2290 clear_domain_reliability_tester(); |
| 2299 | 2291 |
| 2300 BlockUntilBrowsingDataRemoved( | 2292 BlockUntilBrowsingDataRemoved( |
| 2301 BrowsingDataRemover::EVERYTHING, | 2293 browsing_data::EVERYTHING, |
| 2302 BrowsingDataRemover::REMOVE_HISTORY | | 2294 BrowsingDataRemover::REMOVE_HISTORY | BrowsingDataRemover::REMOVE_COOKIES, |
| 2303 BrowsingDataRemover::REMOVE_COOKIES, false); | 2295 false); |
| 2304 EXPECT_EQ(1u, tester.clear_count()); | 2296 EXPECT_EQ(1u, tester.clear_count()); |
| 2305 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); | 2297 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); |
| 2306 } | 2298 } |
| 2307 | 2299 |
| 2308 TEST_F(BrowsingDataRemoverTest, DomainReliability_ProtectedOrigins) { | 2300 TEST_F(BrowsingDataRemoverTest, DomainReliability_ProtectedOrigins) { |
| 2309 const ClearDomainReliabilityTester& tester = | 2301 const ClearDomainReliabilityTester& tester = |
| 2310 clear_domain_reliability_tester(); | 2302 clear_domain_reliability_tester(); |
| 2311 | 2303 |
| 2312 BlockUntilBrowsingDataRemoved( | 2304 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2313 BrowsingDataRemover::EVERYTHING, | 2305 BrowsingDataRemover::REMOVE_COOKIES, true); |
| 2314 BrowsingDataRemover::REMOVE_COOKIES, true); | |
| 2315 EXPECT_EQ(1u, tester.clear_count()); | 2306 EXPECT_EQ(1u, tester.clear_count()); |
| 2316 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); | 2307 EXPECT_EQ(CLEAR_CONTEXTS, tester.last_clear_mode()); |
| 2317 } | 2308 } |
| 2318 | 2309 |
| 2319 // TODO(juliatuttle): This isn't actually testing the no-monitor case, since | 2310 // TODO(juliatuttle): This isn't actually testing the no-monitor case, since |
| 2320 // BrowsingDataRemoverTest now creates one unconditionally, since it's needed | 2311 // BrowsingDataRemoverTest now creates one unconditionally, since it's needed |
| 2321 // for some unrelated test cases. This should be fixed so it tests the no- | 2312 // for some unrelated test cases. This should be fixed so it tests the no- |
| 2322 // monitor case again. | 2313 // monitor case again. |
| 2323 TEST_F(BrowsingDataRemoverTest, DISABLED_DomainReliability_NoMonitor) { | 2314 TEST_F(BrowsingDataRemoverTest, DISABLED_DomainReliability_NoMonitor) { |
| 2324 BlockUntilBrowsingDataRemoved( | 2315 BlockUntilBrowsingDataRemoved( |
| 2325 BrowsingDataRemover::EVERYTHING, | 2316 browsing_data::EVERYTHING, |
| 2326 BrowsingDataRemover::REMOVE_HISTORY | | 2317 BrowsingDataRemover::REMOVE_HISTORY | BrowsingDataRemover::REMOVE_COOKIES, |
| 2327 BrowsingDataRemover::REMOVE_COOKIES, false); | 2318 false); |
| 2328 } | 2319 } |
| 2329 | 2320 |
| 2330 TEST_F(BrowsingDataRemoverTest, RemoveDownloadsByTimeOnly) { | 2321 TEST_F(BrowsingDataRemoverTest, RemoveDownloadsByTimeOnly) { |
| 2331 RemoveDownloadsTester tester(GetProfile()); | 2322 RemoveDownloadsTester tester(GetProfile()); |
| 2332 base::Callback<bool(const GURL&)> filter = | 2323 base::Callback<bool(const GURL&)> filter = |
| 2333 BrowsingDataFilterBuilder::BuildNoopFilter(); | 2324 BrowsingDataFilterBuilder::BuildNoopFilter(); |
| 2334 | 2325 |
| 2335 EXPECT_CALL( | 2326 EXPECT_CALL( |
| 2336 *tester.download_manager(), | 2327 *tester.download_manager(), |
| 2337 RemoveDownloadsByURLAndTime(ProbablySameFilter(filter), _, _)); | 2328 RemoveDownloadsByURLAndTime(ProbablySameFilter(filter), _, _)); |
| 2338 | 2329 |
| 2339 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 2330 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2340 BrowsingDataRemover::REMOVE_DOWNLOADS, false); | 2331 BrowsingDataRemover::REMOVE_DOWNLOADS, false); |
| 2341 } | 2332 } |
| 2342 | 2333 |
| 2343 TEST_F(BrowsingDataRemoverTest, RemoveDownloadsByOrigin) { | 2334 TEST_F(BrowsingDataRemoverTest, RemoveDownloadsByOrigin) { |
| 2344 RemoveDownloadsTester tester(GetProfile()); | 2335 RemoveDownloadsTester tester(GetProfile()); |
| 2345 RegistrableDomainFilterBuilder builder( | 2336 RegistrableDomainFilterBuilder builder( |
| 2346 RegistrableDomainFilterBuilder::WHITELIST); | 2337 RegistrableDomainFilterBuilder::WHITELIST); |
| 2347 builder.AddRegisterableDomain(kTestRegisterableDomain1); | 2338 builder.AddRegisterableDomain(kTestRegisterableDomain1); |
| 2348 base::Callback<bool(const GURL&)> filter = builder.BuildGeneralFilter(); | 2339 base::Callback<bool(const GURL&)> filter = builder.BuildGeneralFilter(); |
| 2349 | 2340 |
| 2350 EXPECT_CALL( | 2341 EXPECT_CALL( |
| 2351 *tester.download_manager(), | 2342 *tester.download_manager(), |
| 2352 RemoveDownloadsByURLAndTime(ProbablySameFilter(filter), _, _)); | 2343 RemoveDownloadsByURLAndTime(ProbablySameFilter(filter), _, _)); |
| 2353 | 2344 |
| 2354 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 2345 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 2355 BrowsingDataRemover::REMOVE_DOWNLOADS, builder); | 2346 BrowsingDataRemover::REMOVE_DOWNLOADS, builder); |
| 2356 } | 2347 } |
| 2357 | 2348 |
| 2358 TEST_F(BrowsingDataRemoverTest, RemovePasswordStatistics) { | 2349 TEST_F(BrowsingDataRemoverTest, RemovePasswordStatistics) { |
| 2359 RemovePasswordsTester tester(GetProfile()); | 2350 RemovePasswordsTester tester(GetProfile()); |
| 2360 | 2351 |
| 2361 EXPECT_CALL(*tester.store(), RemoveStatisticsCreatedBetweenImpl( | 2352 EXPECT_CALL(*tester.store(), RemoveStatisticsCreatedBetweenImpl( |
| 2362 base::Time(), base::Time::Max())); | 2353 base::Time(), base::Time::Max())); |
| 2363 BlockUntilBrowsingDataRemoved( | 2354 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2364 BrowsingDataRemover::EVERYTHING, | 2355 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 2365 BrowsingDataRemover::REMOVE_HISTORY, false); | |
| 2366 } | 2356 } |
| 2367 | 2357 |
| 2368 TEST_F(BrowsingDataRemoverTest, RemovePasswordsByTimeOnly) { | 2358 TEST_F(BrowsingDataRemoverTest, RemovePasswordsByTimeOnly) { |
| 2369 RemovePasswordsTester tester(GetProfile()); | 2359 RemovePasswordsTester tester(GetProfile()); |
| 2370 base::Callback<bool(const GURL&)> filter = | 2360 base::Callback<bool(const GURL&)> filter = |
| 2371 BrowsingDataFilterBuilder::BuildNoopFilter(); | 2361 BrowsingDataFilterBuilder::BuildNoopFilter(); |
| 2372 | 2362 |
| 2373 EXPECT_CALL(*tester.store(), | 2363 EXPECT_CALL(*tester.store(), |
| 2374 RemoveLoginsByURLAndTimeImpl(ProbablySameFilter(filter), _, _)) | 2364 RemoveLoginsByURLAndTimeImpl(ProbablySameFilter(filter), _, _)) |
| 2375 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | 2365 .WillOnce(Return(password_manager::PasswordStoreChangeList())); |
| 2376 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 2366 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2377 BrowsingDataRemover::REMOVE_PASSWORDS, false); | 2367 BrowsingDataRemover::REMOVE_PASSWORDS, false); |
| 2378 } | 2368 } |
| 2379 | 2369 |
| 2380 TEST_F(BrowsingDataRemoverTest, RemovePasswordsByOrigin) { | 2370 TEST_F(BrowsingDataRemoverTest, RemovePasswordsByOrigin) { |
| 2381 RemovePasswordsTester tester(GetProfile()); | 2371 RemovePasswordsTester tester(GetProfile()); |
| 2382 RegistrableDomainFilterBuilder builder( | 2372 RegistrableDomainFilterBuilder builder( |
| 2383 RegistrableDomainFilterBuilder::WHITELIST); | 2373 RegistrableDomainFilterBuilder::WHITELIST); |
| 2384 builder.AddRegisterableDomain(kTestRegisterableDomain1); | 2374 builder.AddRegisterableDomain(kTestRegisterableDomain1); |
| 2385 base::Callback<bool(const GURL&)> filter = builder.BuildGeneralFilter(); | 2375 base::Callback<bool(const GURL&)> filter = builder.BuildGeneralFilter(); |
| 2386 | 2376 |
| 2387 EXPECT_CALL(*tester.store(), | 2377 EXPECT_CALL(*tester.store(), |
| 2388 RemoveLoginsByURLAndTimeImpl(ProbablySameFilter(filter), _, _)) | 2378 RemoveLoginsByURLAndTimeImpl(ProbablySameFilter(filter), _, _)) |
| 2389 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | 2379 .WillOnce(Return(password_manager::PasswordStoreChangeList())); |
| 2390 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 2380 BlockUntilOriginDataRemoved(browsing_data::EVERYTHING, |
| 2391 BrowsingDataRemover::REMOVE_PASSWORDS, builder); | 2381 BrowsingDataRemover::REMOVE_PASSWORDS, builder); |
| 2392 } | 2382 } |
| 2393 | 2383 |
| 2394 TEST_F(BrowsingDataRemoverTest, DisableAutoSignIn) { | 2384 TEST_F(BrowsingDataRemoverTest, DisableAutoSignIn) { |
| 2395 RemovePasswordsTester tester(GetProfile()); | 2385 RemovePasswordsTester tester(GetProfile()); |
| 2396 | 2386 |
| 2397 EXPECT_CALL(*tester.store(), DisableAutoSignInForAllLoginsImpl()) | 2387 EXPECT_CALL(*tester.store(), DisableAutoSignInForAllLoginsImpl()) |
| 2398 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | 2388 .WillOnce(Return(password_manager::PasswordStoreChangeList())); |
| 2399 | 2389 |
| 2400 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 2390 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2401 BrowsingDataRemover::REMOVE_COOKIES, false); | 2391 BrowsingDataRemover::REMOVE_COOKIES, false); |
| 2402 } | 2392 } |
| 2403 | 2393 |
| 2404 TEST_F(BrowsingDataRemoverTest, DisableAutoSignInAfterRemovingPasswords) { | 2394 TEST_F(BrowsingDataRemoverTest, DisableAutoSignInAfterRemovingPasswords) { |
| 2405 RemovePasswordsTester tester(GetProfile()); | 2395 RemovePasswordsTester tester(GetProfile()); |
| 2406 | 2396 |
| 2407 EXPECT_CALL(*tester.store(), RemoveLoginsByURLAndTimeImpl(_, _, _)) | 2397 EXPECT_CALL(*tester.store(), RemoveLoginsByURLAndTimeImpl(_, _, _)) |
| 2408 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | 2398 .WillOnce(Return(password_manager::PasswordStoreChangeList())); |
| 2409 EXPECT_CALL(*tester.store(), DisableAutoSignInForAllLoginsImpl()) | 2399 EXPECT_CALL(*tester.store(), DisableAutoSignInForAllLoginsImpl()) |
| 2410 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | 2400 .WillOnce(Return(password_manager::PasswordStoreChangeList())); |
| 2411 | 2401 |
| 2412 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 2402 BlockUntilBrowsingDataRemoved(browsing_data::EVERYTHING, |
| 2413 BrowsingDataRemover::REMOVE_COOKIES | | 2403 BrowsingDataRemover::REMOVE_COOKIES | |
| 2414 BrowsingDataRemover::REMOVE_PASSWORDS, | 2404 BrowsingDataRemover::REMOVE_PASSWORDS, |
| 2415 false); | 2405 false); |
| 2416 } | 2406 } |
| 2417 | 2407 |
| 2418 TEST_F(BrowsingDataRemoverTest, RemoveContentSettingsWithBlacklist) { | 2408 TEST_F(BrowsingDataRemoverTest, RemoveContentSettingsWithBlacklist) { |
| 2419 // Add our settings. | 2409 // Add our settings. |
| 2420 HostContentSettingsMap* host_content_settings_map = | 2410 HostContentSettingsMap* host_content_settings_map = |
| 2421 HostContentSettingsMapFactory::GetForProfile(GetProfile()); | 2411 HostContentSettingsMapFactory::GetForProfile(GetProfile()); |
| 2422 host_content_settings_map->SetWebsiteSettingDefaultScope( | 2412 host_content_settings_map->SetWebsiteSettingDefaultScope( |
| 2423 kOrigin1, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), | 2413 kOrigin1, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), |
| 2424 base::WrapUnique(new base::DictionaryValue())); | 2414 base::WrapUnique(new base::DictionaryValue())); |
| 2425 host_content_settings_map->SetWebsiteSettingDefaultScope( | 2415 host_content_settings_map->SetWebsiteSettingDefaultScope( |
| 2426 kOrigin2, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), | 2416 kOrigin2, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), |
| 2427 base::WrapUnique(new base::DictionaryValue())); | 2417 base::WrapUnique(new base::DictionaryValue())); |
| 2428 host_content_settings_map->SetWebsiteSettingDefaultScope( | 2418 host_content_settings_map->SetWebsiteSettingDefaultScope( |
| 2429 kOrigin3, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), | 2419 kOrigin3, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), |
| 2430 base::WrapUnique(new base::DictionaryValue())); | 2420 base::WrapUnique(new base::DictionaryValue())); |
| 2431 host_content_settings_map->SetWebsiteSettingDefaultScope( | 2421 host_content_settings_map->SetWebsiteSettingDefaultScope( |
| 2432 kOrigin4, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), | 2422 kOrigin4, GURL(), CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), |
| 2433 base::WrapUnique(new base::DictionaryValue())); | 2423 base::WrapUnique(new base::DictionaryValue())); |
| 2434 | 2424 |
| 2435 // Clear all except for origin1 and origin3. | 2425 // Clear all except for origin1 and origin3. |
| 2436 RegistrableDomainFilterBuilder filter( | 2426 RegistrableDomainFilterBuilder filter( |
| 2437 RegistrableDomainFilterBuilder::BLACKLIST); | 2427 RegistrableDomainFilterBuilder::BLACKLIST); |
| 2438 filter.AddRegisterableDomain(kTestRegisterableDomain1); | 2428 filter.AddRegisterableDomain(kTestRegisterableDomain1); |
| 2439 filter.AddRegisterableDomain(kTestRegisterableDomain3); | 2429 filter.AddRegisterableDomain(kTestRegisterableDomain3); |
| 2440 BlockUntilOriginDataRemoved(BrowsingDataRemover::LAST_HOUR, | 2430 BlockUntilOriginDataRemoved(browsing_data::LAST_HOUR, |
| 2441 BrowsingDataRemover::REMOVE_SITE_USAGE_DATA, | 2431 BrowsingDataRemover::REMOVE_SITE_USAGE_DATA, |
| 2442 filter); | 2432 filter); |
| 2443 | 2433 |
| 2444 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_USAGE_DATA, GetRemovalMask()); | 2434 EXPECT_EQ(BrowsingDataRemover::REMOVE_SITE_USAGE_DATA, GetRemovalMask()); |
| 2445 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 2435 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 2446 | 2436 |
| 2447 // Verify we only have true, and they're origin1, origin3, and origin4. | 2437 // Verify we only have true, and they're origin1, origin3, and origin4. |
| 2448 ContentSettingsForOneType host_settings; | 2438 ContentSettingsForOneType host_settings; |
| 2449 host_content_settings_map->GetSettingsForOneType( | 2439 host_content_settings_map->GetSettingsForOneType( |
| 2450 CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), &host_settings); | 2440 CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), &host_settings); |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2537 BrowsingDataRemover::ClearSettingsForOneTypeWithPredicate( | 2527 BrowsingDataRemover::ClearSettingsForOneTypeWithPredicate( |
| 2538 host_content_settings_map, CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, | 2528 host_content_settings_map, CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, |
| 2539 base::Bind(&MatchPrimaryPattern, http_pattern)); | 2529 base::Bind(&MatchPrimaryPattern, http_pattern)); |
| 2540 // Verify we only have one, and it's url1. | 2530 // Verify we only have one, and it's url1. |
| 2541 host_content_settings_map->GetSettingsForOneType( | 2531 host_content_settings_map->GetSettingsForOneType( |
| 2542 CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), &host_settings); | 2532 CONTENT_SETTINGS_TYPE_SITE_ENGAGEMENT, std::string(), &host_settings); |
| 2543 EXPECT_EQ(1u, host_settings.size()); | 2533 EXPECT_EQ(1u, host_settings.size()); |
| 2544 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(url1), | 2534 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(url1), |
| 2545 host_settings[0].primary_pattern); | 2535 host_settings[0].primary_pattern); |
| 2546 } | 2536 } |
| OLD | NEW |