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 "components/search_engines/template_url_service.h" | 5 #include "components/search_engines/template_url_service.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <memory> | 9 #include <memory> |
10 #include <utility> | 10 #include <utility> |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 GenerateDummyTemplateURLData(keyword); | 268 GenerateDummyTemplateURLData(keyword); |
269 turl_data->safe_for_autoreplace = false; | 269 turl_data->safe_for_autoreplace = false; |
270 | 270 |
271 auto ext_dse = base::MakeUnique<TemplateURL>( | 271 auto ext_dse = base::MakeUnique<TemplateURL>( |
272 *turl_data, TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 272 *turl_data, TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
273 auto extension_info = | 273 auto extension_info = |
274 base::MakeUnique<TemplateURL::AssociatedExtensionInfo>(extension_name); | 274 base::MakeUnique<TemplateURL::AssociatedExtensionInfo>(extension_name); |
275 extension_info->wants_to_be_default_engine = wants_to_be_default_engine; | 275 extension_info->wants_to_be_default_engine = wants_to_be_default_engine; |
276 extension_info->install_time = install_time; | 276 extension_info->install_time = install_time; |
277 | 277 |
278 return model()->AddExtensionControlledTURL(std::move(ext_dse), | 278 return test_util()->AddExtensionControlledTURL(std::move(ext_dse), |
279 std::move(extension_info)); | 279 std::move(extension_info)); |
280 } | 280 } |
281 | 281 |
282 void TemplateURLServiceTest::AssertEquals(const TemplateURL& expected, | 282 void TemplateURLServiceTest::AssertEquals(const TemplateURL& expected, |
283 const TemplateURL& actual) { | 283 const TemplateURL& actual) { |
284 ASSERT_EQ(expected.short_name(), actual.short_name()); | 284 ASSERT_EQ(expected.short_name(), actual.short_name()); |
285 ASSERT_EQ(expected.keyword(), actual.keyword()); | 285 ASSERT_EQ(expected.keyword(), actual.keyword()); |
286 ASSERT_EQ(expected.url(), actual.url()); | 286 ASSERT_EQ(expected.url(), actual.url()); |
287 ASSERT_EQ(expected.suggestions_url(), actual.suggestions_url()); | 287 ASSERT_EQ(expected.suggestions_url(), actual.suggestions_url()); |
288 ASSERT_EQ(expected.favicon_url(), actual.favicon_url()); | 288 ASSERT_EQ(expected.favicon_url(), actual.favicon_url()); |
289 ASSERT_EQ(expected.alternate_urls(), actual.alternate_urls()); | 289 ASSERT_EQ(expected.alternate_urls(), actual.alternate_urls()); |
(...skipping 785 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1075 base::MakeUnique<TemplateURL>(*GenerateDummyTemplateURLData("user_dse"))); | 1075 base::MakeUnique<TemplateURL>(*GenerateDummyTemplateURLData("user_dse"))); |
1076 model()->SetUserSelectedDefaultSearchProvider(user_dse); | 1076 model()->SetUserSelectedDefaultSearchProvider(user_dse); |
1077 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); | 1077 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); |
1078 | 1078 |
1079 // Check that user DSE guid is stored in kSyncedDefaultSearchProviderGUID. | 1079 // Check that user DSE guid is stored in kSyncedDefaultSearchProviderGUID. |
1080 EXPECT_EQ(user_dse->sync_guid(), | 1080 EXPECT_EQ(user_dse->sync_guid(), |
1081 test_util()->profile()->GetTestingPrefService()->GetString( | 1081 test_util()->profile()->GetTestingPrefService()->GetString( |
1082 prefs::kSyncedDefaultSearchProviderGUID)); | 1082 prefs::kSyncedDefaultSearchProviderGUID)); |
1083 | 1083 |
1084 // Add extension controlled default search engine. | 1084 // Add extension controlled default search engine. |
1085 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( | 1085 TemplateURL* extension_dse = |
1086 new TemplateURL::AssociatedExtensionInfo("extension")); | 1086 AddExtensionSearchEngine("extension_dse", "extension_id", true, Time()); |
1087 extension_info->wants_to_be_default_engine = true; | |
1088 TemplateURL* extension_dse = model()->AddExtensionControlledTURL( | |
1089 base::MakeUnique<TemplateURL>( | |
1090 *GenerateDummyTemplateURLData("extension_dse"), | |
1091 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION), | |
1092 std::move(extension_info)); | |
1093 EXPECT_EQ(extension_dse, model()->GetDefaultSearchProvider()); | 1087 EXPECT_EQ(extension_dse, model()->GetDefaultSearchProvider()); |
1094 // Check that user DSE guid is still stored in | 1088 // Check that user DSE guid is still stored in |
1095 // kSyncedDefaultSearchProviderGUID. | 1089 // kSyncedDefaultSearchProviderGUID. |
1096 EXPECT_EQ(user_dse->sync_guid(), | 1090 EXPECT_EQ(user_dse->sync_guid(), |
1097 test_util()->profile()->GetTestingPrefService()->GetString( | 1091 test_util()->profile()->GetTestingPrefService()->GetString( |
1098 prefs::kSyncedDefaultSearchProviderGUID)); | 1092 prefs::kSyncedDefaultSearchProviderGUID)); |
1099 | 1093 |
1100 model()->RepairPrepopulatedSearchEngines(); | 1094 model()->RepairPrepopulatedSearchEngines(); |
1101 // Check that extension engine is still default but sync guid is updated to | 1095 // Check that extension engine is still default but sync guid is updated to |
1102 // initial dse guid. | 1096 // initial dse guid. |
(...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1640 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); | 1634 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); |
1641 | 1635 |
1642 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( | 1636 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( |
1643 model(), "ext", "ext", "http://www.search.com/s?q={searchTerms}", | 1637 model(), "ext", "ext", "http://www.search.com/s?q={searchTerms}", |
1644 std::string(), std::string(), std::string(), true, kPrepopulatedId, | 1638 std::string(), std::string(), std::string(), true, kPrepopulatedId, |
1645 "UTF-8", Time(), Time(), Time(), | 1639 "UTF-8", Time(), Time(), Time(), |
1646 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 1640 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
1647 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( | 1641 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( |
1648 new TemplateURL::AssociatedExtensionInfo("ext")); | 1642 new TemplateURL::AssociatedExtensionInfo("ext")); |
1649 extension_info->wants_to_be_default_engine = true; | 1643 extension_info->wants_to_be_default_engine = true; |
1650 TemplateURL* ext_dse_ptr = model()->AddExtensionControlledTURL( | 1644 TemplateURL* ext_dse_ptr = test_util()->AddExtensionControlledTURL( |
1651 std::move(ext_dse), std::move(extension_info)); | 1645 std::move(ext_dse), std::move(extension_info)); |
1652 EXPECT_EQ(ext_dse_ptr, model()->GetDefaultSearchProvider()); | 1646 EXPECT_EQ(ext_dse_ptr, model()->GetDefaultSearchProvider()); |
1653 | 1647 |
1654 model()->RemoveExtensionControlledTURL( | 1648 test_util()->RemoveExtensionControlledTURL("ext"); |
1655 "ext", TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | |
1656 ExpectSimilar(user_dse, model()->GetDefaultSearchProvider()); | 1649 ExpectSimilar(user_dse, model()->GetDefaultSearchProvider()); |
1657 } | 1650 } |
1658 | 1651 |
1659 TEST_F(TemplateURLServiceTest, ExtensionEnginesNotPersist) { | 1652 TEST_F(TemplateURLServiceTest, DefaultExtensionEnginePersist) { |
1660 test_util()->VerifyLoad(); | 1653 test_util()->VerifyLoad(); |
1661 // Add third-party default search engine. | 1654 // Add third-party default search engine. |
1662 TemplateURL* user_dse = AddKeywordWithDate( | 1655 TemplateURL* user_dse = AddKeywordWithDate( |
1663 "user", "user", "http://www.goo.com/s?q={searchTerms}", std::string(), | 1656 "user", "user", "http://www.goo.com/s?q={searchTerms}", std::string(), |
1664 std::string(), std::string(), true, "UTF-8", Time(), Time(), Time()); | 1657 std::string(), std::string(), true, "UTF-8", Time(), Time(), Time()); |
1665 model()->SetUserSelectedDefaultSearchProvider(user_dse); | 1658 model()->SetUserSelectedDefaultSearchProvider(user_dse); |
1666 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); | 1659 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); |
1667 | 1660 |
| 1661 // Create non-default extension search engine. |
1668 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( | 1662 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( |
1669 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", | 1663 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", |
1670 std::string(), std::string(), std::string(), true, 0, "UTF-8", Time(), | 1664 std::string(), std::string(), std::string(), true, 0, "UTF-8", Time(), |
1671 Time(), Time(), TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 1665 Time(), Time(), TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
1672 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( | 1666 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( |
1673 new TemplateURL::AssociatedExtensionInfo("ext1")); | 1667 new TemplateURL::AssociatedExtensionInfo("ext1")); |
1674 extension_info->wants_to_be_default_engine = false; | 1668 extension_info->wants_to_be_default_engine = false; |
1675 model()->AddExtensionControlledTURL(std::move(ext_dse), | 1669 |
1676 std::move(extension_info)); | 1670 test_util()->AddExtensionControlledTURL(std::move(ext_dse), |
| 1671 std::move(extension_info)); |
1677 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); | 1672 EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider()); |
1678 | 1673 |
| 1674 // Create default extension search engine. |
1679 ext_dse = CreateKeywordWithDate( | 1675 ext_dse = CreateKeywordWithDate( |
1680 model(), "ext2", "ext2", "http://www.ext2.com/s?q={searchTerms}", | 1676 model(), "ext2", "ext2", "http://www.ext2.com/s?q={searchTerms}", |
1681 std::string(), std::string(), std::string(), true, kPrepopulatedId, | 1677 std::string(), std::string(), std::string(), true, kPrepopulatedId, |
1682 "UTF-8", Time(), Time(), Time(), | 1678 "UTF-8", Time(), Time(), Time(), |
1683 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 1679 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
1684 extension_info.reset(new TemplateURL::AssociatedExtensionInfo("ext2")); | 1680 extension_info.reset(new TemplateURL::AssociatedExtensionInfo("ext2")); |
1685 extension_info->wants_to_be_default_engine = true; | 1681 extension_info->wants_to_be_default_engine = true; |
1686 TemplateURL* ext_dse_ptr = model()->AddExtensionControlledTURL( | 1682 |
| 1683 auto cloned_ext_dse = base::MakeUnique<TemplateURL>(ext_dse->data()); |
| 1684 TemplateURL* ext_dse_ptr = test_util()->AddExtensionControlledTURL( |
1687 std::move(ext_dse), std::move(extension_info)); | 1685 std::move(ext_dse), std::move(extension_info)); |
1688 EXPECT_EQ(ext_dse_ptr, model()->GetDefaultSearchProvider()); | 1686 EXPECT_EQ(ext_dse_ptr, model()->GetDefaultSearchProvider()); |
1689 | 1687 |
1690 test_util()->ResetModel(true); | 1688 // A default search engine set by an extension must be persisted across |
1691 user_dse = model()->GetTemplateURLForKeyword(ASCIIToUTF16("user")); | 1689 // browser restarts, until the extension is unloaded/disabled. |
1692 ExpectSimilar(user_dse, model()->GetDefaultSearchProvider()); | 1690 test_util()->ResetModel(false); |
| 1691 EXPECT_TRUE(model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext2"))); |
| 1692 ExpectSimilar(cloned_ext_dse.get(), model()->GetDefaultSearchProvider()); |
| 1693 |
| 1694 // Non-default extension engines are not persisted across restarts. |
1693 EXPECT_FALSE(model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); | 1695 EXPECT_FALSE(model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); |
1694 EXPECT_FALSE(model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext2"))); | 1696 } |
| 1697 |
| 1698 TEST_F(TemplateURLServiceTest, DefaultExtensionEnginePersistsBeforeLoad) { |
| 1699 // Chrome will load the extension system before the TemplateURLService, so |
| 1700 // extensions controlling the default search engine may be registered before |
| 1701 // the service has loaded. |
| 1702 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( |
| 1703 model(), "ext2", "ext2", "http://www.ext2.com/s?q={searchTerms}", |
| 1704 std::string(), std::string(), std::string(), true, kPrepopulatedId, |
| 1705 "UTF-8", Time(), Time(), Time(), |
| 1706 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
| 1707 auto extension_info = |
| 1708 base::MakeUnique<TemplateURL::AssociatedExtensionInfo>("ext2"); |
| 1709 extension_info->wants_to_be_default_engine = true; |
| 1710 |
| 1711 auto cloned_ext_dse = base::MakeUnique<TemplateURL>(ext_dse->data()); |
| 1712 test_util()->AddExtensionControlledTURL(std::move(ext_dse), |
| 1713 std::move(extension_info)); |
| 1714 |
| 1715 // Default search engine from extension must be persisted between browser |
| 1716 // restarts, and should be available before the TemplateURLService is loaded. |
| 1717 EXPECT_TRUE(model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext2"))); |
| 1718 ExpectSimilar(cloned_ext_dse.get(), model()->GetDefaultSearchProvider()); |
| 1719 |
| 1720 // Check extension DSE is the same after service load. |
| 1721 test_util()->VerifyLoad(); |
| 1722 ExpectSimilar(cloned_ext_dse.get(), model()->GetDefaultSearchProvider()); |
1695 } | 1723 } |
1696 | 1724 |
1697 // Checks that correct priority is applied when resolving conflicts between the | 1725 // Checks that correct priority is applied when resolving conflicts between the |
1698 // omnibox extension, search engine extension and user search engines with same | 1726 // omnibox extension, search engine extension and user search engines with same |
1699 // keyword. | 1727 // keyword. |
1700 TEST_F(TemplateURLServiceTest, CheckEnginesWithSameKeywords) { | 1728 TEST_F(TemplateURLServiceTest, CheckEnginesWithSameKeywords) { |
1701 test_util()->VerifyLoad(); | 1729 test_util()->VerifyLoad(); |
1702 // TemplateURLData used for user engines. | 1730 // TemplateURLData used for user engines. |
1703 std::unique_ptr<TemplateURLData> turl_data = | 1731 std::unique_ptr<TemplateURLData> turl_data = |
1704 GenerateDummyTemplateURLData("common_keyword"); | 1732 GenerateDummyTemplateURLData("common_keyword"); |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1762 "extension_id", TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 1790 "extension_id", TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
1763 EXPECT_NE(extension, model()->GetDefaultSearchProvider()); | 1791 EXPECT_NE(extension, model()->GetDefaultSearchProvider()); |
1764 // Now latest user engine is returned for keyword. | 1792 // Now latest user engine is returned for keyword. |
1765 EXPECT_EQ(user2, | 1793 EXPECT_EQ(user2, |
1766 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); | 1794 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); |
1767 } | 1795 } |
1768 | 1796 |
1769 // Check that two extensions with the same engine are handled correctly. | 1797 // Check that two extensions with the same engine are handled correctly. |
1770 TEST_F(TemplateURLServiceTest, ExtensionsWithSameKeywords) { | 1798 TEST_F(TemplateURLServiceTest, ExtensionsWithSameKeywords) { |
1771 test_util()->VerifyLoad(); | 1799 test_util()->VerifyLoad(); |
1772 | |
1773 // Add non default extension engine. | 1800 // Add non default extension engine. |
1774 const TemplateURL* extension1 = AddExtensionSearchEngine( | 1801 const TemplateURL* extension1 = AddExtensionSearchEngine( |
1775 "common_keyword", "extension_id1", false, Time::FromDoubleT(1)); | 1802 "common_keyword", "extension_id1", false, Time::FromDoubleT(1)); |
1776 | 1803 |
1777 // Check that GetTemplateURLForKeyword returns last installed extension. | 1804 // Check that GetTemplateURLForKeyword returns last installed extension. |
1778 EXPECT_EQ(extension1, | 1805 EXPECT_EQ(extension1, |
1779 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); | 1806 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); |
1780 | 1807 |
1781 // Add default extension engine with the same keyword. | 1808 // Add default extension engine with the same keyword. |
1782 const TemplateURL* extension2 = AddExtensionSearchEngine( | 1809 const TemplateURL* extension2 = AddExtensionSearchEngine( |
1783 "common_keyword", "extension_id2", true, Time::FromDoubleT(2)); | 1810 "common_keyword", "extension_id2", true, Time::FromDoubleT(2)); |
1784 | |
1785 // Check that GetTemplateURLForKeyword now returns extension2 because it was | 1811 // Check that GetTemplateURLForKeyword now returns extension2 because it was |
1786 // installed later. | 1812 // installed later. |
1787 EXPECT_EQ(extension2, | 1813 EXPECT_EQ(extension2, |
1788 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); | 1814 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); |
1789 | 1815 |
1790 // Add another non default extension with same keyword. This action must not | 1816 // Add another non default extension with same keyword. This action must not |
1791 // change any keyword due to conflict. | 1817 // change any keyword due to conflict. |
1792 const TemplateURL* extension3 = AddExtensionSearchEngine( | 1818 const TemplateURL* extension3 = AddExtensionSearchEngine( |
1793 "common_keyword", "extension_id3", false, Time::FromDoubleT(3)); | 1819 "common_keyword", "extension_id3", false, Time::FromDoubleT(3)); |
1794 | |
1795 // Check that extension2 is set as default. | 1820 // Check that extension2 is set as default. |
1796 EXPECT_EQ(extension2, model()->GetDefaultSearchProvider()); | 1821 EXPECT_EQ(extension2, model()->GetDefaultSearchProvider()); |
1797 | 1822 |
1798 // Check that GetTemplateURLForKeyword returns last installed extension. | 1823 // Check that GetTemplateURLForKeyword returns last installed extension. |
1799 EXPECT_EQ(extension3, | 1824 EXPECT_EQ(extension3, |
1800 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); | 1825 model()->GetTemplateURLForKeyword(ASCIIToUTF16("common_keyword"))); |
1801 // Check that all keywords for extensions are left unchanged. | 1826 // Check that all keywords for extensions are left unchanged. |
1802 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension1->keyword()); | 1827 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension1->keyword()); |
1803 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension2->keyword()); | 1828 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension2->keyword()); |
1804 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension3->keyword()); | 1829 EXPECT_EQ(ASCIIToUTF16("common_keyword"), extension3->keyword()); |
(...skipping 12 matching lines...) Expand all Loading... |
1817 ExpectSimilar(expected_managed_default.get(), actual_managed_default); | 1842 ExpectSimilar(expected_managed_default.get(), actual_managed_default); |
1818 | 1843 |
1819 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( | 1844 std::unique_ptr<TemplateURL> ext_dse = CreateKeywordWithDate( |
1820 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", | 1845 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", |
1821 std::string(), std::string(), std::string(), true, kPrepopulatedId, | 1846 std::string(), std::string(), std::string(), true, kPrepopulatedId, |
1822 "UTF-8", Time(), Time(), Time(), | 1847 "UTF-8", Time(), Time(), Time(), |
1823 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); | 1848 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION); |
1824 auto extension_info = | 1849 auto extension_info = |
1825 base::MakeUnique<TemplateURL::AssociatedExtensionInfo>("ext1"); | 1850 base::MakeUnique<TemplateURL::AssociatedExtensionInfo>("ext1"); |
1826 extension_info->wants_to_be_default_engine = true; | 1851 extension_info->wants_to_be_default_engine = true; |
1827 TemplateURL* ext_dse_ptr = model()->AddExtensionControlledTURL( | 1852 TemplateURL* ext_dse_ptr = test_util()->AddExtensionControlledTURL( |
1828 std::move(ext_dse), std::move(extension_info)); | 1853 std::move(ext_dse), std::move(extension_info)); |
1829 EXPECT_EQ(ext_dse_ptr, | 1854 EXPECT_EQ(ext_dse_ptr, |
1830 model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); | 1855 model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); |
1831 EXPECT_TRUE(model()->is_default_search_managed()); | 1856 EXPECT_TRUE(model()->is_default_search_managed()); |
1832 actual_managed_default = model()->GetDefaultSearchProvider(); | 1857 actual_managed_default = model()->GetDefaultSearchProvider(); |
1833 ExpectSimilar(expected_managed_default.get(), actual_managed_default); | 1858 ExpectSimilar(expected_managed_default.get(), actual_managed_default); |
1834 } | 1859 } |
1835 | 1860 |
1836 TEST_F(TemplateURLServiceTest, LastVisitedTimeUpdate) { | 1861 TEST_F(TemplateURLServiceTest, LastVisitedTimeUpdate) { |
1837 test_util()->VerifyLoad(); | 1862 test_util()->VerifyLoad(); |
(...skipping 27 matching lines...) Expand all Loading... |
1865 TemplateURL* update_url = | 1890 TemplateURL* update_url = |
1866 model()->GetTemplateURLForKeyword(ASCIIToUTF16("engine_keyword")); | 1891 model()->GetTemplateURLForKeyword(ASCIIToUTF16("engine_keyword")); |
1867 const base::Time update_last_modified = update_url->last_modified(); | 1892 const base::Time update_last_modified = update_url->last_modified(); |
1868 model()->SetUserSelectedDefaultSearchProvider(update_url); | 1893 model()->SetUserSelectedDefaultSearchProvider(update_url); |
1869 TemplateURL* reloaded_url = | 1894 TemplateURL* reloaded_url = |
1870 model()->GetTemplateURLForKeyword(ASCIIToUTF16("engine_keyword")); | 1895 model()->GetTemplateURLForKeyword(ASCIIToUTF16("engine_keyword")); |
1871 const base::Time reloaded_last_modified = reloaded_url->last_modified(); | 1896 const base::Time reloaded_last_modified = reloaded_url->last_modified(); |
1872 EXPECT_NE(original_last_modified, reloaded_last_modified); | 1897 EXPECT_NE(original_last_modified, reloaded_last_modified); |
1873 EXPECT_EQ(update_last_modified, reloaded_last_modified); | 1898 EXPECT_EQ(update_last_modified, reloaded_last_modified); |
1874 } | 1899 } |
OLD | NEW |