OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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/chrome_browsing_data_remover_delegate.h" | 5 #include "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h" |
6 | 6 |
7 #include "base/guid.h" | 7 #include "base/guid.h" |
8 #include "base/memory/ptr_util.h" | 8 #include "base/memory/ptr_util.h" |
9 #include "base/message_loop/message_loop.h" | 9 #include "base/message_loop/message_loop.h" |
10 #include "base/run_loop.h" | 10 #include "base/run_loop.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 #include "components/autofill/core/browser/credit_card.h" | 36 #include "components/autofill/core/browser/credit_card.h" |
37 #include "components/autofill/core/browser/personal_data_manager.h" | 37 #include "components/autofill/core/browser/personal_data_manager.h" |
38 #include "components/autofill/core/browser/personal_data_manager_observer.h" | 38 #include "components/autofill/core/browser/personal_data_manager_observer.h" |
39 #include "components/autofill/core/common/autofill_constants.h" | 39 #include "components/autofill/core/common/autofill_constants.h" |
40 #include "components/bookmarks/browser/bookmark_model.h" | 40 #include "components/bookmarks/browser/bookmark_model.h" |
41 #include "components/bookmarks/test/bookmark_test_helpers.h" | 41 #include "components/bookmarks/test/bookmark_test_helpers.h" |
42 #include "components/browsing_data/core/browsing_data_utils.h" | 42 #include "components/browsing_data/core/browsing_data_utils.h" |
43 #include "components/content_settings/core/browser/host_content_settings_map.h" | 43 #include "components/content_settings/core/browser/host_content_settings_map.h" |
44 #include "components/content_settings/core/common/content_settings.h" | 44 #include "components/content_settings/core/common/content_settings.h" |
45 #include "components/content_settings/core/common/content_settings_pattern.h" | 45 #include "components/content_settings/core/common/content_settings_pattern.h" |
| 46 #include "components/content_settings/core/common/content_settings_utils.h" |
46 #include "components/domain_reliability/clear_mode.h" | 47 #include "components/domain_reliability/clear_mode.h" |
47 #include "components/domain_reliability/monitor.h" | 48 #include "components/domain_reliability/monitor.h" |
48 #include "components/domain_reliability/service.h" | 49 #include "components/domain_reliability/service.h" |
49 #include "components/favicon/core/favicon_service.h" | 50 #include "components/favicon/core/favicon_service.h" |
50 #include "components/history/core/browser/history_service.h" | 51 #include "components/history/core/browser/history_service.h" |
51 #include "components/ntp_snippets/bookmarks/bookmark_last_visit_utils.h" | 52 #include "components/ntp_snippets/bookmarks/bookmark_last_visit_utils.h" |
52 #include "components/omnibox/browser/omnibox_pref_names.h" | 53 #include "components/omnibox/browser/omnibox_pref_names.h" |
53 #include "components/os_crypt/os_crypt_mocker.h" | 54 #include "components/os_crypt/os_crypt_mocker.h" |
54 #include "components/password_manager/core/browser/mock_password_store.h" | 55 #include "components/password_manager/core/browser/mock_password_store.h" |
55 #include "components/password_manager/core/browser/password_manager_test_utils.h
" | 56 #include "components/password_manager/core/browser/password_manager_test_utils.h
" |
(...skipping 1634 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1690 GetOriginTypeMask()); | 1691 GetOriginTypeMask()); |
1691 | 1692 |
1692 // Verify we still have the allow setting for origin1. | 1693 // Verify we still have the allow setting for origin1. |
1693 ContentSettingsForOneType host_settings; | 1694 ContentSettingsForOneType host_settings; |
1694 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_GEOLOCATION, std::string(), | 1695 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_GEOLOCATION, std::string(), |
1695 &host_settings); | 1696 &host_settings); |
1696 ASSERT_EQ(2u, host_settings.size()); | 1697 ASSERT_EQ(2u, host_settings.size()); |
1697 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin1), | 1698 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin1), |
1698 host_settings[0].primary_pattern) | 1699 host_settings[0].primary_pattern) |
1699 << host_settings[0].primary_pattern.ToString(); | 1700 << host_settings[0].primary_pattern.ToString(); |
1700 EXPECT_EQ(CONTENT_SETTING_ALLOW, host_settings[0].setting); | 1701 EXPECT_EQ(CONTENT_SETTING_ALLOW, content_settings::ValueToContentSetting( |
| 1702 host_settings[0].setting_value.get())); |
1701 // And the wildcard. | 1703 // And the wildcard. |
1702 EXPECT_EQ(ContentSettingsPattern::Wildcard(), | 1704 EXPECT_EQ(ContentSettingsPattern::Wildcard(), |
1703 host_settings[1].primary_pattern) | 1705 host_settings[1].primary_pattern) |
1704 << host_settings[1].primary_pattern.ToString(); | 1706 << host_settings[1].primary_pattern.ToString(); |
1705 EXPECT_EQ(CONTENT_SETTING_ASK, host_settings[1].setting); | 1707 EXPECT_EQ(CONTENT_SETTING_ASK, content_settings::ValueToContentSetting( |
| 1708 host_settings[1].setting_value.get())); |
1706 | 1709 |
1707 // There should also only be one setting for origin3 | 1710 // There should also only be one setting for origin3 |
1708 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, std::string(), | 1711 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, std::string(), |
1709 &host_settings); | 1712 &host_settings); |
1710 ASSERT_EQ(2u, host_settings.size()); | 1713 ASSERT_EQ(2u, host_settings.size()); |
1711 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin3), | 1714 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin3), |
1712 host_settings[0].primary_pattern) | 1715 host_settings[0].primary_pattern) |
1713 << host_settings[0].primary_pattern.ToString(); | 1716 << host_settings[0].primary_pattern.ToString(); |
1714 EXPECT_EQ(CONTENT_SETTING_ALLOW, host_settings[0].setting); | 1717 EXPECT_EQ(CONTENT_SETTING_ALLOW, content_settings::ValueToContentSetting( |
| 1718 host_settings[0].setting_value.get())); |
1715 // And the wildcard. | 1719 // And the wildcard. |
1716 EXPECT_EQ(ContentSettingsPattern::Wildcard(), | 1720 EXPECT_EQ(ContentSettingsPattern::Wildcard(), |
1717 host_settings[1].primary_pattern) | 1721 host_settings[1].primary_pattern) |
1718 << host_settings[1].primary_pattern.ToString(); | 1722 << host_settings[1].primary_pattern.ToString(); |
1719 EXPECT_EQ(CONTENT_SETTING_ASK, host_settings[1].setting); | 1723 EXPECT_EQ(CONTENT_SETTING_ASK, content_settings::ValueToContentSetting( |
| 1724 host_settings[1].setting_value.get())); |
1720 | 1725 |
1721 BlockUntilOriginDataRemoved( | 1726 BlockUntilOriginDataRemoved( |
1722 base::Time(), base::Time::Max(), | 1727 base::Time(), base::Time::Max(), |
1723 ChromeBrowsingDataRemoverDelegate::DATA_TYPE_CONTENT_SETTINGS, | 1728 ChromeBrowsingDataRemoverDelegate::DATA_TYPE_CONTENT_SETTINGS, |
1724 BrowsingDataFilterBuilder::Create(BrowsingDataFilterBuilder::BLACKLIST)); | 1729 BrowsingDataFilterBuilder::Create(BrowsingDataFilterBuilder::BLACKLIST)); |
1725 | 1730 |
1726 // Everything except the wildcard should be deleted now. | 1731 // Everything except the wildcard should be deleted now. |
1727 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_GEOLOCATION, std::string(), | 1732 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_GEOLOCATION, std::string(), |
1728 &host_settings); | 1733 &host_settings); |
1729 ASSERT_EQ(1u, host_settings.size()); | 1734 ASSERT_EQ(1u, host_settings.size()); |
1730 EXPECT_EQ(ContentSettingsPattern::Wildcard(), | 1735 EXPECT_EQ(ContentSettingsPattern::Wildcard(), |
1731 host_settings[0].primary_pattern) | 1736 host_settings[0].primary_pattern) |
1732 << host_settings[0].primary_pattern.ToString(); | 1737 << host_settings[0].primary_pattern.ToString(); |
1733 EXPECT_EQ(CONTENT_SETTING_ASK, host_settings[0].setting); | 1738 EXPECT_EQ(CONTENT_SETTING_ASK, content_settings::ValueToContentSetting( |
| 1739 host_settings[0].setting_value.get())); |
1734 | 1740 |
1735 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, std::string(), | 1741 map->GetSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS, std::string(), |
1736 &host_settings); | 1742 &host_settings); |
1737 ASSERT_EQ(1u, host_settings.size()); | 1743 ASSERT_EQ(1u, host_settings.size()); |
1738 EXPECT_EQ(ContentSettingsPattern::Wildcard(), | 1744 EXPECT_EQ(ContentSettingsPattern::Wildcard(), |
1739 host_settings[0].primary_pattern) | 1745 host_settings[0].primary_pattern) |
1740 << host_settings[0].primary_pattern.ToString(); | 1746 << host_settings[0].primary_pattern.ToString(); |
1741 EXPECT_EQ(CONTENT_SETTING_ASK, host_settings[0].setting); | 1747 EXPECT_EQ(CONTENT_SETTING_ASK, content_settings::ValueToContentSetting( |
| 1748 host_settings[0].setting_value.get())); |
1742 } | 1749 } |
1743 | 1750 |
1744 TEST_F(ChromeBrowsingDataRemoverDelegateTest, RemoveDurablePermission) { | 1751 TEST_F(ChromeBrowsingDataRemoverDelegateTest, RemoveDurablePermission) { |
1745 // Add our settings. | 1752 // Add our settings. |
1746 HostContentSettingsMap* host_content_settings_map = | 1753 HostContentSettingsMap* host_content_settings_map = |
1747 HostContentSettingsMapFactory::GetForProfile(GetProfile()); | 1754 HostContentSettingsMapFactory::GetForProfile(GetProfile()); |
1748 | 1755 |
1749 DurableStoragePermissionContext durable_permission(GetProfile()); | 1756 DurableStoragePermissionContext durable_permission(GetProfile()); |
1750 durable_permission.UpdateContentSetting(kOrigin1, GURL(), | 1757 durable_permission.UpdateContentSetting(kOrigin1, GURL(), |
1751 CONTENT_SETTING_ALLOW); | 1758 CONTENT_SETTING_ALLOW); |
(...skipping 18 matching lines...) Expand all Loading... |
1770 // Verify we only have allow for the first origin. | 1777 // Verify we only have allow for the first origin. |
1771 ContentSettingsForOneType host_settings; | 1778 ContentSettingsForOneType host_settings; |
1772 host_content_settings_map->GetSettingsForOneType( | 1779 host_content_settings_map->GetSettingsForOneType( |
1773 CONTENT_SETTINGS_TYPE_DURABLE_STORAGE, std::string(), &host_settings); | 1780 CONTENT_SETTINGS_TYPE_DURABLE_STORAGE, std::string(), &host_settings); |
1774 | 1781 |
1775 ASSERT_EQ(2u, host_settings.size()); | 1782 ASSERT_EQ(2u, host_settings.size()); |
1776 // Only the first should should have a setting. | 1783 // Only the first should should have a setting. |
1777 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin1), | 1784 EXPECT_EQ(ContentSettingsPattern::FromURLNoWildcard(kOrigin1), |
1778 host_settings[0].primary_pattern) | 1785 host_settings[0].primary_pattern) |
1779 << host_settings[0].primary_pattern.ToString(); | 1786 << host_settings[0].primary_pattern.ToString(); |
1780 EXPECT_EQ(CONTENT_SETTING_ALLOW, host_settings[0].setting); | 1787 EXPECT_EQ(CONTENT_SETTING_ALLOW, content_settings::ValueToContentSetting( |
| 1788 host_settings[0].setting_value.get())); |
1781 | 1789 |
1782 // And our wildcard. | 1790 // And our wildcard. |
1783 EXPECT_EQ(ContentSettingsPattern::Wildcard(), | 1791 EXPECT_EQ(ContentSettingsPattern::Wildcard(), |
1784 host_settings[1].primary_pattern) | 1792 host_settings[1].primary_pattern) |
1785 << host_settings[1].primary_pattern.ToString(); | 1793 << host_settings[1].primary_pattern.ToString(); |
1786 EXPECT_EQ(CONTENT_SETTING_ASK, host_settings[1].setting); | 1794 EXPECT_EQ(CONTENT_SETTING_ASK, content_settings::ValueToContentSetting( |
| 1795 host_settings[1].setting_value.get())); |
1787 } | 1796 } |
1788 | 1797 |
1789 TEST_F(ChromeBrowsingDataRemoverDelegateTest, | 1798 TEST_F(ChromeBrowsingDataRemoverDelegateTest, |
1790 DurablePermissionIsPartOfEmbedderDOMStorage) { | 1799 DurablePermissionIsPartOfEmbedderDOMStorage) { |
1791 HostContentSettingsMap* host_content_settings_map = | 1800 HostContentSettingsMap* host_content_settings_map = |
1792 HostContentSettingsMapFactory::GetForProfile(GetProfile()); | 1801 HostContentSettingsMapFactory::GetForProfile(GetProfile()); |
1793 DurableStoragePermissionContext durable_permission(GetProfile()); | 1802 DurableStoragePermissionContext durable_permission(GetProfile()); |
1794 durable_permission.UpdateContentSetting(kOrigin1, GURL(), | 1803 durable_permission.UpdateContentSetting(kOrigin1, GURL(), |
1795 CONTENT_SETTING_ALLOW); | 1804 CONTENT_SETTING_ALLOW); |
1796 ContentSettingsForOneType host_settings; | 1805 ContentSettingsForOneType host_settings; |
(...skipping 519 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2316 base::Callback<bool(const GURL&)> origin_filter; | 2325 base::Callback<bool(const GURL&)> origin_filter; |
2317 tester.GetMockInfo(&remove_count, &data_type_mask, &origin_filter); | 2326 tester.GetMockInfo(&remove_count, &data_type_mask, &origin_filter); |
2318 | 2327 |
2319 EXPECT_EQ(1, remove_count); | 2328 EXPECT_EQ(1, remove_count); |
2320 EXPECT_EQ(net::ReportingBrowsingDataRemover::DATA_TYPE_REPORTS | | 2329 EXPECT_EQ(net::ReportingBrowsingDataRemover::DATA_TYPE_REPORTS | |
2321 net::ReportingBrowsingDataRemover::DATA_TYPE_CLIENTS, | 2330 net::ReportingBrowsingDataRemover::DATA_TYPE_CLIENTS, |
2322 data_type_mask); | 2331 data_type_mask); |
2323 EXPECT_TRUE( | 2332 EXPECT_TRUE( |
2324 ProbablySameFilters(builder->BuildGeneralFilter(), origin_filter)); | 2333 ProbablySameFilters(builder->BuildGeneralFilter(), origin_filter)); |
2325 } | 2334 } |
OLD | NEW |