| 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 <set> | 7 #include <set> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 166 return nullptr; | 166 return nullptr; |
| 167 } | 167 } |
| 168 storage::DatabaseTracker* GetDatabaseTracker() override { return nullptr; } | 168 storage::DatabaseTracker* GetDatabaseTracker() override { return nullptr; } |
| 169 content::DOMStorageContext* GetDOMStorageContext() override { | 169 content::DOMStorageContext* GetDOMStorageContext() override { |
| 170 return nullptr; | 170 return nullptr; |
| 171 } | 171 } |
| 172 content::IndexedDBContext* GetIndexedDBContext() override { return nullptr; } | 172 content::IndexedDBContext* GetIndexedDBContext() override { return nullptr; } |
| 173 content::ServiceWorkerContext* GetServiceWorkerContext() override { | 173 content::ServiceWorkerContext* GetServiceWorkerContext() override { |
| 174 return nullptr; | 174 return nullptr; |
| 175 } | 175 } |
| 176 content::CacheStorageContext* GetCacheStorageContext() override { |
| 177 return nullptr; |
| 178 } |
| 176 content::GeofencingManager* GetGeofencingManager() override { | 179 content::GeofencingManager* GetGeofencingManager() override { |
| 177 return nullptr; | 180 return nullptr; |
| 178 } | 181 } |
| 179 content::NavigatorConnectContext* GetNavigatorConnectContext() override { | 182 content::NavigatorConnectContext* GetNavigatorConnectContext() override { |
| 180 return nullptr; | 183 return nullptr; |
| 181 } | 184 } |
| 182 | |
| 183 content::PlatformNotificationContext* GetPlatformNotificationContext() | 185 content::PlatformNotificationContext* GetPlatformNotificationContext() |
| 184 override { | 186 override { |
| 185 return nullptr; | 187 return nullptr; |
| 186 } | 188 } |
| 187 | |
| 188 content::BackgroundSyncContext* GetBackgroundSyncContext() override { | 189 content::BackgroundSyncContext* GetBackgroundSyncContext() override { |
| 189 return nullptr; | 190 return nullptr; |
| 190 } | 191 } |
| 191 | |
| 192 content::HostZoomMap* GetHostZoomMap() override { return nullptr; } | 192 content::HostZoomMap* GetHostZoomMap() override { return nullptr; } |
| 193 content::HostZoomLevelContext* GetHostZoomLevelContext() override { | 193 content::HostZoomLevelContext* GetHostZoomLevelContext() override { |
| 194 return nullptr; | 194 return nullptr; |
| 195 } | 195 } |
| 196 content::ZoomLevelDelegate* GetZoomLevelDelegate() override { | 196 content::ZoomLevelDelegate* GetZoomLevelDelegate() override { |
| 197 return nullptr; | 197 return nullptr; |
| 198 } | 198 } |
| 199 | 199 |
| 200 void ClearDataForOrigin(uint32 remove_mask, | 200 void ClearDataForOrigin(uint32 remove_mask, |
| 201 uint32 quota_storage_remove_mask, | 201 uint32 quota_storage_remove_mask, |
| (...skipping 1190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1392 favicon_tester.VisitAndAddFavicon(bookmarked_page); | 1392 favicon_tester.VisitAndAddFavicon(bookmarked_page); |
| 1393 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(bookmarked_page)); | 1393 ASSERT_TRUE(favicon_tester.HasFaviconForPageURL(bookmarked_page)); |
| 1394 | 1394 |
| 1395 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1395 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, |
| 1396 BrowsingDataRemover::REMOVE_HISTORY, false); | 1396 BrowsingDataRemover::REMOVE_HISTORY, false); |
| 1397 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); | 1397 EXPECT_EQ(BrowsingDataRemover::REMOVE_HISTORY, GetRemovalMask()); |
| 1398 EXPECT_TRUE(favicon_tester.HasExpiredFaviconForPageURL(bookmarked_page)); | 1398 EXPECT_TRUE(favicon_tester.HasExpiredFaviconForPageURL(bookmarked_page)); |
| 1399 } | 1399 } |
| 1400 | 1400 |
| 1401 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { | 1401 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverBoth) { |
| 1402 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1402 BlockUntilBrowsingDataRemoved( |
| 1403 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1403 BrowsingDataRemover::EVERYTHING, |
| 1404 BrowsingDataRemover::REMOVE_WEBSQL | | 1404 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1405 BrowsingDataRemover::REMOVE_APPCACHE | | 1405 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1406 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1406 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1407 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1407 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1408 false); | 1408 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1409 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1410 false); |
| 1409 | 1411 |
| 1410 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1412 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1411 BrowsingDataRemover::REMOVE_WEBSQL | | 1413 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1412 BrowsingDataRemover::REMOVE_APPCACHE | | 1414 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1413 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1415 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1414 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1416 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1417 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1418 GetRemovalMask()); |
| 1415 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1419 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1416 | 1420 |
| 1417 // Verify storage partition related stuffs. | 1421 // Verify storage partition related stuffs. |
| 1418 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1422 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1419 EXPECT_EQ(removal_data.remove_mask, | 1423 EXPECT_EQ(removal_data.remove_mask, |
| 1420 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1424 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1421 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1425 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1422 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1426 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1423 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1427 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1428 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1424 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1429 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1425 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1430 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1426 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1431 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1427 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1432 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1428 } | 1433 } |
| 1429 | 1434 |
| 1430 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { | 1435 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyTemporary) { |
| 1431 #if defined(ENABLE_EXTENSIONS) | 1436 #if defined(ENABLE_EXTENSIONS) |
| 1432 CreateMockPolicy(); | 1437 CreateMockPolicy(); |
| 1433 #endif | 1438 #endif |
| 1434 | 1439 |
| 1435 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1440 BlockUntilBrowsingDataRemoved( |
| 1436 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1441 BrowsingDataRemover::EVERYTHING, |
| 1437 BrowsingDataRemover::REMOVE_WEBSQL | | 1442 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1438 BrowsingDataRemover::REMOVE_APPCACHE | | 1443 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1439 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1444 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1440 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1445 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1441 false); | 1446 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1447 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1448 false); |
| 1442 | 1449 |
| 1443 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1450 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1444 BrowsingDataRemover::REMOVE_WEBSQL | | 1451 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1445 BrowsingDataRemover::REMOVE_APPCACHE | | 1452 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1446 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1453 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1447 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1454 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1455 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1456 GetRemovalMask()); |
| 1448 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1457 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1449 | 1458 |
| 1450 // Verify storage partition related stuffs. | 1459 // Verify storage partition related stuffs. |
| 1451 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1460 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1452 | 1461 |
| 1453 EXPECT_EQ(removal_data.remove_mask, | 1462 EXPECT_EQ(removal_data.remove_mask, |
| 1454 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1463 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1455 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1464 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1456 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1465 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1457 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1466 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1467 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1458 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1468 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1459 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1469 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1460 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1470 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1461 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1471 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1462 | 1472 |
| 1463 // Check that all related origin data would be removed, that is, origin | 1473 // Check that all related origin data would be removed, that is, origin |
| 1464 // matcher would match these origin. | 1474 // matcher would match these origin. |
| 1465 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1475 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1466 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1476 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1467 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1477 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1468 } | 1478 } |
| 1469 | 1479 |
| 1470 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { | 1480 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverOnlyPersistent) { |
| 1471 #if defined(ENABLE_EXTENSIONS) | 1481 #if defined(ENABLE_EXTENSIONS) |
| 1472 CreateMockPolicy(); | 1482 CreateMockPolicy(); |
| 1473 #endif | 1483 #endif |
| 1474 | 1484 |
| 1475 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1485 BlockUntilBrowsingDataRemoved( |
| 1476 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1486 BrowsingDataRemover::EVERYTHING, |
| 1477 BrowsingDataRemover::REMOVE_WEBSQL | | 1487 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1478 BrowsingDataRemover::REMOVE_APPCACHE | | 1488 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1479 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1489 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1480 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1490 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1481 false); | 1491 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1492 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1493 false); |
| 1482 | 1494 |
| 1483 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1495 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1484 BrowsingDataRemover::REMOVE_WEBSQL | | 1496 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1485 BrowsingDataRemover::REMOVE_APPCACHE | | 1497 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1486 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1498 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1487 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1499 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1500 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1501 GetRemovalMask()); |
| 1488 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1502 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1489 | 1503 |
| 1490 // Verify storage partition related stuffs. | 1504 // Verify storage partition related stuffs. |
| 1491 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1505 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1492 | 1506 |
| 1493 EXPECT_EQ(removal_data.remove_mask, | 1507 EXPECT_EQ(removal_data.remove_mask, |
| 1494 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1508 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1495 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1509 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1496 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1510 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1497 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1511 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1512 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1498 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1513 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1499 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1514 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1500 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1515 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1501 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1516 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1502 | 1517 |
| 1503 // Check that all related origin data would be removed, that is, origin | 1518 // Check that all related origin data would be removed, that is, origin |
| 1504 // matcher would match these origin. | 1519 // matcher would match these origin. |
| 1505 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1520 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1506 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1521 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1507 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1522 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1508 } | 1523 } |
| 1509 | 1524 |
| 1510 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { | 1525 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverNeither) { |
| 1511 #if defined(ENABLE_EXTENSIONS) | 1526 #if defined(ENABLE_EXTENSIONS) |
| 1512 CreateMockPolicy(); | 1527 CreateMockPolicy(); |
| 1513 #endif | 1528 #endif |
| 1514 | 1529 |
| 1515 | 1530 BlockUntilBrowsingDataRemoved( |
| 1516 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1531 BrowsingDataRemover::EVERYTHING, |
| 1517 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1532 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1518 BrowsingDataRemover::REMOVE_WEBSQL | | 1533 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1519 BrowsingDataRemover::REMOVE_APPCACHE | | 1534 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1520 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1535 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1521 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1536 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1522 false); | 1537 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1538 false); |
| 1523 | 1539 |
| 1524 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1540 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1525 BrowsingDataRemover::REMOVE_WEBSQL | | 1541 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1526 BrowsingDataRemover::REMOVE_APPCACHE | | 1542 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1527 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1543 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1528 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1544 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1545 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1546 GetRemovalMask()); |
| 1529 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1547 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1530 | 1548 |
| 1531 // Verify storage partition related stuffs. | 1549 // Verify storage partition related stuffs. |
| 1532 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1550 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1533 | 1551 |
| 1534 EXPECT_EQ(removal_data.remove_mask, | 1552 EXPECT_EQ(removal_data.remove_mask, |
| 1535 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1553 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1536 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1554 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1537 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1555 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1538 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1556 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1557 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1539 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1558 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1540 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1559 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1541 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1560 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1542 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1561 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1543 | 1562 |
| 1544 // Check that all related origin data would be removed, that is, origin | 1563 // Check that all related origin data would be removed, that is, origin |
| 1545 // matcher would match these origin. | 1564 // matcher would match these origin. |
| 1546 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1565 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1547 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1566 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1548 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1567 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1549 } | 1568 } |
| 1550 | 1569 |
| 1551 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) { | 1570 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForeverSpecificOrigin) { |
| 1552 // Remove Origin 1. | 1571 // Remove Origin 1. |
| 1553 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1572 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, |
| 1554 BrowsingDataRemover::REMOVE_APPCACHE | | 1573 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1555 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1574 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1556 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1575 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1557 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1576 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1558 BrowsingDataRemover::REMOVE_WEBSQL, | 1577 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1578 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1559 kOrigin1); | 1579 kOrigin1); |
| 1560 | 1580 |
| 1561 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1581 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1562 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1582 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1563 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1583 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1564 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1584 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1565 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask()); | 1585 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1586 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1587 GetRemovalMask()); |
| 1566 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1588 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1567 | 1589 |
| 1568 // Verify storage partition related stuffs. | 1590 // Verify storage partition related stuffs. |
| 1569 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1591 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1570 | 1592 |
| 1571 EXPECT_EQ(removal_data.remove_mask, | 1593 EXPECT_EQ(removal_data.remove_mask, |
| 1572 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1594 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1573 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1595 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1574 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1596 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1575 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1597 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1598 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1576 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1599 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1577 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1600 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1578 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1601 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1579 EXPECT_EQ(removal_data.remove_origin, kOrigin1); | 1602 EXPECT_EQ(removal_data.remove_origin, kOrigin1); |
| 1580 } | 1603 } |
| 1581 | 1604 |
| 1582 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { | 1605 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastHour) { |
| 1583 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_HOUR, | 1606 BlockUntilBrowsingDataRemoved( |
| 1584 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1607 BrowsingDataRemover::LAST_HOUR, |
| 1585 BrowsingDataRemover::REMOVE_WEBSQL | | 1608 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1586 BrowsingDataRemover::REMOVE_APPCACHE | | 1609 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1587 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1610 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1588 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1611 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1589 false); | 1612 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1613 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1614 false); |
| 1590 | 1615 |
| 1591 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1616 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1592 BrowsingDataRemover::REMOVE_WEBSQL | | 1617 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1593 BrowsingDataRemover::REMOVE_APPCACHE | | 1618 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1594 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1619 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1595 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1620 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1621 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1622 GetRemovalMask()); |
| 1596 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1623 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1597 | 1624 |
| 1598 // Verify storage partition related stuffs. | 1625 // Verify storage partition related stuffs. |
| 1599 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1626 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1600 | 1627 |
| 1601 EXPECT_EQ(removal_data.remove_mask, | 1628 EXPECT_EQ(removal_data.remove_mask, |
| 1602 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1629 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1603 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1630 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1604 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1631 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1605 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1632 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1633 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1606 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1634 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1607 | 1635 |
| 1608 // Persistent data would be left out since we are not removing from | 1636 // Persistent data would be left out since we are not removing from |
| 1609 // beginning of time. | 1637 // beginning of time. |
| 1610 uint32 expected_quota_mask = | 1638 uint32 expected_quota_mask = |
| 1611 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; | 1639 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; |
| 1612 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); | 1640 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); |
| 1613 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1641 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1614 // Check removal begin time. | 1642 // Check removal begin time. |
| 1615 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1643 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1616 } | 1644 } |
| 1617 | 1645 |
| 1618 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { | 1646 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedDataForLastWeek) { |
| 1619 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::LAST_WEEK, | 1647 BlockUntilBrowsingDataRemoved( |
| 1620 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1648 BrowsingDataRemover::LAST_WEEK, |
| 1621 BrowsingDataRemover::REMOVE_WEBSQL | | 1649 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1622 BrowsingDataRemover::REMOVE_APPCACHE | | 1650 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1623 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1651 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1624 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1652 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1625 false); | 1653 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1654 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1655 false); |
| 1626 | 1656 |
| 1627 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1657 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1628 BrowsingDataRemover::REMOVE_WEBSQL | | 1658 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1629 BrowsingDataRemover::REMOVE_APPCACHE | | 1659 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1630 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1660 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1631 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1661 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1662 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1663 GetRemovalMask()); |
| 1632 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1664 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1633 | 1665 |
| 1634 // Verify storage partition related stuffs. | 1666 // Verify storage partition related stuffs. |
| 1635 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1667 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1636 | 1668 |
| 1637 EXPECT_EQ(removal_data.remove_mask, | 1669 EXPECT_EQ(removal_data.remove_mask, |
| 1638 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1670 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1639 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1671 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1640 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1672 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1641 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1673 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1674 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1642 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1675 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1643 | 1676 |
| 1644 // Persistent data would be left out since we are not removing from | 1677 // Persistent data would be left out since we are not removing from |
| 1645 // beginning of time. | 1678 // beginning of time. |
| 1646 uint32 expected_quota_mask = | 1679 uint32 expected_quota_mask = |
| 1647 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; | 1680 ~StoragePartition::QUOTA_MANAGED_STORAGE_MASK_PERSISTENT; |
| 1648 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); | 1681 EXPECT_EQ(removal_data.quota_storage_remove_mask, expected_quota_mask); |
| 1649 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1682 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1650 // Check removal begin time. | 1683 // Check removal begin time. |
| 1651 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); | 1684 EXPECT_EQ(removal_data.remove_begin, GetBeginTime()); |
| 1652 } | 1685 } |
| 1653 | 1686 |
| 1654 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { | 1687 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedUnprotectedOrigins) { |
| 1655 #if defined(ENABLE_EXTENSIONS) | 1688 #if defined(ENABLE_EXTENSIONS) |
| 1656 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1689 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1657 // Protect kOrigin1. | 1690 // Protect kOrigin1. |
| 1658 policy->AddProtected(kOrigin1.GetOrigin()); | 1691 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1659 #endif | 1692 #endif |
| 1660 | 1693 |
| 1661 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1694 BlockUntilBrowsingDataRemoved( |
| 1662 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1695 BrowsingDataRemover::EVERYTHING, |
| 1663 BrowsingDataRemover::REMOVE_WEBSQL | | 1696 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1664 BrowsingDataRemover::REMOVE_APPCACHE | | 1697 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1665 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1698 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1666 BrowsingDataRemover::REMOVE_INDEXEDDB, | 1699 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1667 false); | 1700 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1701 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1702 false); |
| 1668 | 1703 |
| 1669 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1704 EXPECT_EQ(BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1670 BrowsingDataRemover::REMOVE_WEBSQL | | 1705 BrowsingDataRemover::REMOVE_WEBSQL | |
| 1671 BrowsingDataRemover::REMOVE_APPCACHE | | 1706 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1672 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1707 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1673 BrowsingDataRemover::REMOVE_INDEXEDDB, GetRemovalMask()); | 1708 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1709 BrowsingDataRemover::REMOVE_INDEXEDDB, |
| 1710 GetRemovalMask()); |
| 1674 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1711 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1675 | 1712 |
| 1676 // Verify storage partition related stuffs. | 1713 // Verify storage partition related stuffs. |
| 1677 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1714 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1678 | 1715 |
| 1679 EXPECT_EQ(removal_data.remove_mask, | 1716 EXPECT_EQ(removal_data.remove_mask, |
| 1680 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1717 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1681 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1718 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1682 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1719 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1683 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1720 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1721 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1684 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1722 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1685 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1723 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1686 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1724 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1687 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1725 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1688 | 1726 |
| 1689 // Check OriginMatcherFunction. | 1727 // Check OriginMatcherFunction. |
| 1690 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), | 1728 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), |
| 1691 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1729 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1692 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1730 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1693 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1731 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1694 } | 1732 } |
| 1695 | 1733 |
| 1696 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) { | 1734 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedSpecificOrigin) { |
| 1697 #if defined(ENABLE_EXTENSIONS) | 1735 #if defined(ENABLE_EXTENSIONS) |
| 1698 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1736 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1699 // Protect kOrigin1. | 1737 // Protect kOrigin1. |
| 1700 policy->AddProtected(kOrigin1.GetOrigin()); | 1738 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1701 #endif | 1739 #endif |
| 1702 | 1740 |
| 1703 // Try to remove kOrigin1. Expect failure. | 1741 // Try to remove kOrigin1. Expect failure. |
| 1704 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 1742 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, |
| 1705 BrowsingDataRemover::REMOVE_APPCACHE | | 1743 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1706 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1744 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1707 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1745 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1708 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1746 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1709 BrowsingDataRemover::REMOVE_WEBSQL, | 1747 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1748 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1710 kOrigin1); | 1749 kOrigin1); |
| 1711 | 1750 |
| 1712 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1751 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1713 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1752 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1714 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1753 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1715 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1754 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1716 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask()); | 1755 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1756 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1757 GetRemovalMask()); |
| 1717 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1758 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1718 | 1759 |
| 1719 // Verify storage partition related stuffs. | 1760 // Verify storage partition related stuffs. |
| 1720 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1761 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1721 | 1762 |
| 1722 EXPECT_EQ(removal_data.remove_mask, | 1763 EXPECT_EQ(removal_data.remove_mask, |
| 1723 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1764 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1724 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1765 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1725 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1766 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1726 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1767 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1768 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1727 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1769 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1728 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1770 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1729 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1771 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1730 EXPECT_EQ(removal_data.remove_origin, kOrigin1); | 1772 EXPECT_EQ(removal_data.remove_origin, kOrigin1); |
| 1731 | 1773 |
| 1732 // Check OriginMatcherFunction. | 1774 // Check OriginMatcherFunction. |
| 1733 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), | 1775 EXPECT_EQ(ShouldRemoveForProtectedOriginOne(), |
| 1734 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1776 removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1735 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1777 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1736 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1778 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1737 } | 1779 } |
| 1738 | 1780 |
| 1739 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) { | 1781 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedProtectedOrigins) { |
| 1740 #if defined(ENABLE_EXTENSIONS) | 1782 #if defined(ENABLE_EXTENSIONS) |
| 1741 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); | 1783 MockExtensionSpecialStoragePolicy* policy = CreateMockPolicy(); |
| 1742 // Protect kOrigin1. | 1784 // Protect kOrigin1. |
| 1743 policy->AddProtected(kOrigin1.GetOrigin()); | 1785 policy->AddProtected(kOrigin1.GetOrigin()); |
| 1744 #endif | 1786 #endif |
| 1745 | 1787 |
| 1746 // Try to remove kOrigin1. Expect success. | 1788 // Try to remove kOrigin1. Expect success. |
| 1747 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1789 BlockUntilBrowsingDataRemoved( |
| 1748 BrowsingDataRemover::REMOVE_APPCACHE | | 1790 BrowsingDataRemover::EVERYTHING, |
| 1749 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1791 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1750 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1792 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1751 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1793 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1752 BrowsingDataRemover::REMOVE_WEBSQL, | 1794 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1753 true); | 1795 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1796 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1797 true); |
| 1754 | 1798 |
| 1755 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1799 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1756 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1800 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1757 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1801 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1758 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1802 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1759 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask()); | 1803 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1804 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1805 GetRemovalMask()); |
| 1760 EXPECT_EQ(BrowsingDataHelper::PROTECTED_WEB | | 1806 EXPECT_EQ(BrowsingDataHelper::PROTECTED_WEB | |
| 1761 BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1807 BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1762 | 1808 |
| 1763 // Verify storage partition related stuffs. | 1809 // Verify storage partition related stuffs. |
| 1764 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1810 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1765 | 1811 |
| 1766 EXPECT_EQ(removal_data.remove_mask, | 1812 EXPECT_EQ(removal_data.remove_mask, |
| 1767 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1813 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1768 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1814 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1769 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1815 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1770 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1816 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1817 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1771 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1818 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1772 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1819 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1773 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1820 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1774 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1821 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1775 | 1822 |
| 1776 // Check OriginMatcherFunction, |kOrigin1| would match mask since we | 1823 // Check OriginMatcherFunction, |kOrigin1| would match mask since we |
| 1777 // would have 'protected' specified in origin_type_mask. | 1824 // would have 'protected' specified in origin_type_mask. |
| 1778 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); | 1825 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin1, mock_policy())); |
| 1779 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); | 1826 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin2, mock_policy())); |
| 1780 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); | 1827 EXPECT_TRUE(removal_data.origin_matcher.Run(kOrigin3, mock_policy())); |
| 1781 } | 1828 } |
| 1782 | 1829 |
| 1783 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) { | 1830 TEST_F(BrowsingDataRemoverTest, RemoveQuotaManagedIgnoreExtensionsAndDevTools) { |
| 1784 #if defined(ENABLE_EXTENSIONS) | 1831 #if defined(ENABLE_EXTENSIONS) |
| 1785 CreateMockPolicy(); | 1832 CreateMockPolicy(); |
| 1786 #endif | 1833 #endif |
| 1787 | 1834 |
| 1788 BlockUntilBrowsingDataRemoved(BrowsingDataRemover::EVERYTHING, | 1835 BlockUntilBrowsingDataRemoved( |
| 1789 BrowsingDataRemover::REMOVE_APPCACHE | | 1836 BrowsingDataRemover::EVERYTHING, |
| 1790 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1837 BrowsingDataRemover::REMOVE_APPCACHE | |
| 1791 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1838 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1792 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1839 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1793 BrowsingDataRemover::REMOVE_WEBSQL, | 1840 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1794 false); | 1841 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1842 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1843 false); |
| 1795 | 1844 |
| 1796 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | | 1845 EXPECT_EQ(BrowsingDataRemover::REMOVE_APPCACHE | |
| 1797 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | | 1846 BrowsingDataRemover::REMOVE_SERVICE_WORKERS | |
| 1798 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | | 1847 BrowsingDataRemover::REMOVE_CACHE_STORAGE | |
| 1799 BrowsingDataRemover::REMOVE_INDEXEDDB | | 1848 BrowsingDataRemover::REMOVE_FILE_SYSTEMS | |
| 1800 BrowsingDataRemover::REMOVE_WEBSQL, GetRemovalMask()); | 1849 BrowsingDataRemover::REMOVE_INDEXEDDB | |
| 1850 BrowsingDataRemover::REMOVE_WEBSQL, |
| 1851 GetRemovalMask()); |
| 1801 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); | 1852 EXPECT_EQ(BrowsingDataHelper::UNPROTECTED_WEB, GetOriginTypeMask()); |
| 1802 | 1853 |
| 1803 // Verify storage partition related stuffs. | 1854 // Verify storage partition related stuffs. |
| 1804 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); | 1855 StoragePartitionRemovalData removal_data = GetStoragePartitionRemovalData(); |
| 1805 | 1856 |
| 1806 EXPECT_EQ(removal_data.remove_mask, | 1857 EXPECT_EQ(removal_data.remove_mask, |
| 1807 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | | 1858 StoragePartition::REMOVE_DATA_MASK_FILE_SYSTEMS | |
| 1808 StoragePartition::REMOVE_DATA_MASK_WEBSQL | | 1859 StoragePartition::REMOVE_DATA_MASK_WEBSQL | |
| 1809 StoragePartition::REMOVE_DATA_MASK_APPCACHE | | 1860 StoragePartition::REMOVE_DATA_MASK_APPCACHE | |
| 1810 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | | 1861 StoragePartition::REMOVE_DATA_MASK_SERVICE_WORKERS | |
| 1862 StoragePartition::REMOVE_DATA_MASK_CACHE_STORAGE | |
| 1811 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); | 1863 StoragePartition::REMOVE_DATA_MASK_INDEXEDDB); |
| 1812 EXPECT_EQ(removal_data.quota_storage_remove_mask, | 1864 EXPECT_EQ(removal_data.quota_storage_remove_mask, |
| 1813 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); | 1865 StoragePartition::QUOTA_MANAGED_STORAGE_MASK_ALL); |
| 1814 EXPECT_TRUE(removal_data.remove_origin.is_empty()); | 1866 EXPECT_TRUE(removal_data.remove_origin.is_empty()); |
| 1815 | 1867 |
| 1816 // Check that extension and devtools data wouldn't be removed, that is, | 1868 // Check that extension and devtools data wouldn't be removed, that is, |
| 1817 // origin matcher would not match these origin. | 1869 // origin matcher would not match these origin. |
| 1818 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); | 1870 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginExt, mock_policy())); |
| 1819 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginDevTools, mock_policy())); | 1871 EXPECT_FALSE(removal_data.origin_matcher.Run(kOriginDevTools, mock_policy())); |
| 1820 } | 1872 } |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2059 TEST_F(BrowsingDataRemoverTest, RemoveSameOriginDownloads) { | 2111 TEST_F(BrowsingDataRemoverTest, RemoveSameOriginDownloads) { |
| 2060 RemoveDownloadsTester tester(GetProfile()); | 2112 RemoveDownloadsTester tester(GetProfile()); |
| 2061 const url::Origin expectedOrigin(kOrigin1); | 2113 const url::Origin expectedOrigin(kOrigin1); |
| 2062 | 2114 |
| 2063 EXPECT_CALL(*tester.download_manager(), | 2115 EXPECT_CALL(*tester.download_manager(), |
| 2064 RemoveDownloadsByOriginAndTime(SameOrigin(expectedOrigin), _, _)); | 2116 RemoveDownloadsByOriginAndTime(SameOrigin(expectedOrigin), _, _)); |
| 2065 | 2117 |
| 2066 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 2118 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, |
| 2067 BrowsingDataRemover::REMOVE_DOWNLOADS, kOrigin1); | 2119 BrowsingDataRemover::REMOVE_DOWNLOADS, kOrigin1); |
| 2068 } | 2120 } |
| OLD | NEW |