| 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 "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
| 9 #include "base/callback.h" | 9 #include "base/callback.h" |
| 10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 TemplateURLData data; | 72 TemplateURLData data; |
| 73 data.SetShortName(base::UTF8ToUTF16(short_name)); | 73 data.SetShortName(base::UTF8ToUTF16(short_name)); |
| 74 data.SetKeyword(base::UTF8ToUTF16(keyword)); | 74 data.SetKeyword(base::UTF8ToUTF16(keyword)); |
| 75 data.SetURL(url); | 75 data.SetURL(url); |
| 76 data.suggestions_url = suggest_url; | 76 data.suggestions_url = suggest_url; |
| 77 if (!alternate_url.empty()) | 77 if (!alternate_url.empty()) |
| 78 data.alternate_urls.push_back(alternate_url); | 78 data.alternate_urls.push_back(alternate_url); |
| 79 data.favicon_url = GURL(favicon_url); | 79 data.favicon_url = GURL(favicon_url); |
| 80 data.safe_for_autoreplace = safe_for_autoreplace; | 80 data.safe_for_autoreplace = safe_for_autoreplace; |
| 81 data.show_in_default_list = show_in_default_list; | 81 data.show_in_default_list = show_in_default_list; |
| 82 base::SplitString(encodings, ';', &data.input_encodings); | 82 data.input_encodings = base::SplitString( |
| 83 encodings, ";", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); |
| 83 data.date_created = date_created; | 84 data.date_created = date_created; |
| 84 data.last_modified = last_modified; | 85 data.last_modified = last_modified; |
| 85 return new TemplateURL(data); | 86 return new TemplateURL(data); |
| 86 } | 87 } |
| 87 | 88 |
| 88 TemplateURL* AddKeywordWithDate( | 89 TemplateURL* AddKeywordWithDate( |
| 89 TemplateURLService* model, | 90 TemplateURLService* model, |
| 90 const std::string& short_name, | 91 const std::string& short_name, |
| 91 const std::string& keyword, | 92 const std::string& keyword, |
| 92 const std::string& url, | 93 const std::string& url, |
| (...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 848 kAlternateURL, | 849 kAlternateURL, |
| 849 kSearchTermsReplacementKey); | 850 kSearchTermsReplacementKey); |
| 850 test_util()->VerifyLoad(); | 851 test_util()->VerifyLoad(); |
| 851 // Verify that the default manager we are getting is the managed one. | 852 // Verify that the default manager we are getting is the managed one. |
| 852 TemplateURLData data; | 853 TemplateURLData data; |
| 853 data.SetShortName(ASCIIToUTF16(kName)); | 854 data.SetShortName(ASCIIToUTF16(kName)); |
| 854 data.SetKeyword(ASCIIToUTF16(kKeyword)); | 855 data.SetKeyword(ASCIIToUTF16(kKeyword)); |
| 855 data.SetURL(kSearchURL); | 856 data.SetURL(kSearchURL); |
| 856 data.favicon_url = GURL(kIconURL); | 857 data.favicon_url = GURL(kIconURL); |
| 857 data.show_in_default_list = true; | 858 data.show_in_default_list = true; |
| 858 base::SplitString(kEncodings, ';', &data.input_encodings); | 859 data.input_encodings = base::SplitString( |
| 860 kEncodings, ";", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); |
| 859 data.alternate_urls.push_back(kAlternateURL); | 861 data.alternate_urls.push_back(kAlternateURL); |
| 860 data.search_terms_replacement_key = kSearchTermsReplacementKey; | 862 data.search_terms_replacement_key = kSearchTermsReplacementKey; |
| 861 scoped_ptr<TemplateURL> expected_managed_default(new TemplateURL(data)); | 863 scoped_ptr<TemplateURL> expected_managed_default(new TemplateURL(data)); |
| 862 EXPECT_TRUE(model()->is_default_search_managed()); | 864 EXPECT_TRUE(model()->is_default_search_managed()); |
| 863 const TemplateURL* actual_managed_default = | 865 const TemplateURL* actual_managed_default = |
| 864 model()->GetDefaultSearchProvider(); | 866 model()->GetDefaultSearchProvider(); |
| 865 ExpectSimilar(expected_managed_default.get(), actual_managed_default); | 867 ExpectSimilar(expected_managed_default.get(), actual_managed_default); |
| 866 | 868 |
| 867 // The following call has no effect on the managed search engine. | 869 // The following call has no effect on the managed search engine. |
| 868 model()->RepairPrepopulatedSearchEngines(); | 870 model()->RepairPrepopulatedSearchEngines(); |
| (...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1227 EXPECT_TRUE(model()->is_default_search_managed()); | 1229 EXPECT_TRUE(model()->is_default_search_managed()); |
| 1228 EXPECT_EQ(initial_count + 2, model()->GetTemplateURLs().size()); | 1230 EXPECT_EQ(initial_count + 2, model()->GetTemplateURLs().size()); |
| 1229 | 1231 |
| 1230 // Verify that the default manager we are getting is the managed one. | 1232 // Verify that the default manager we are getting is the managed one. |
| 1231 TemplateURLData data; | 1233 TemplateURLData data; |
| 1232 data.SetShortName(ASCIIToUTF16(kName)); | 1234 data.SetShortName(ASCIIToUTF16(kName)); |
| 1233 data.SetKeyword(ASCIIToUTF16(kKeyword)); | 1235 data.SetKeyword(ASCIIToUTF16(kKeyword)); |
| 1234 data.SetURL(kSearchURL); | 1236 data.SetURL(kSearchURL); |
| 1235 data.favicon_url = GURL(kIconURL); | 1237 data.favicon_url = GURL(kIconURL); |
| 1236 data.show_in_default_list = true; | 1238 data.show_in_default_list = true; |
| 1237 base::SplitString(kEncodings, ';', &data.input_encodings); | 1239 data.input_encodings = base::SplitString( |
| 1240 kEncodings, ";", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); |
| 1238 data.alternate_urls.push_back(kAlternateURL); | 1241 data.alternate_urls.push_back(kAlternateURL); |
| 1239 data.search_terms_replacement_key = kSearchTermsReplacementKey; | 1242 data.search_terms_replacement_key = kSearchTermsReplacementKey; |
| 1240 scoped_ptr<TemplateURL> expected_managed_default1(new TemplateURL(data)); | 1243 scoped_ptr<TemplateURL> expected_managed_default1(new TemplateURL(data)); |
| 1241 const TemplateURL* actual_managed_default = | 1244 const TemplateURL* actual_managed_default = |
| 1242 model()->GetDefaultSearchProvider(); | 1245 model()->GetDefaultSearchProvider(); |
| 1243 ExpectSimilar(expected_managed_default1.get(), actual_managed_default); | 1246 ExpectSimilar(expected_managed_default1.get(), actual_managed_default); |
| 1244 EXPECT_TRUE(actual_managed_default->show_in_default_list()); | 1247 EXPECT_TRUE(actual_managed_default->show_in_default_list()); |
| 1245 | 1248 |
| 1246 // Update the managed preference and check that the model has changed. | 1249 // Update the managed preference and check that the model has changed. |
| 1247 const char kNewName[] = "test2"; | 1250 const char kNewName[] = "test2"; |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1470 true, kName, kKeyword, kSearchURL, std::string(), kIconURL, kEncodings, | 1473 true, kName, kKeyword, kSearchURL, std::string(), kIconURL, kEncodings, |
| 1471 kAlternateURL, kSearchTermsReplacementKey); | 1474 kAlternateURL, kSearchTermsReplacementKey); |
| 1472 test_util()->VerifyLoad(); | 1475 test_util()->VerifyLoad(); |
| 1473 // Verify that the default manager we are getting is the managed one. | 1476 // Verify that the default manager we are getting is the managed one. |
| 1474 TemplateURLData data; | 1477 TemplateURLData data; |
| 1475 data.SetShortName(ASCIIToUTF16(kName)); | 1478 data.SetShortName(ASCIIToUTF16(kName)); |
| 1476 data.SetKeyword(ASCIIToUTF16(kKeyword)); | 1479 data.SetKeyword(ASCIIToUTF16(kKeyword)); |
| 1477 data.SetURL(kSearchURL); | 1480 data.SetURL(kSearchURL); |
| 1478 data.favicon_url = GURL(kIconURL); | 1481 data.favicon_url = GURL(kIconURL); |
| 1479 data.show_in_default_list = true; | 1482 data.show_in_default_list = true; |
| 1480 base::SplitString(kEncodings, ';', &data.input_encodings); | 1483 data.input_encodings = base::SplitString( |
| 1484 kEncodings, ";", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); |
| 1481 data.alternate_urls.push_back(kAlternateURL); | 1485 data.alternate_urls.push_back(kAlternateURL); |
| 1482 data.search_terms_replacement_key = kSearchTermsReplacementKey; | 1486 data.search_terms_replacement_key = kSearchTermsReplacementKey; |
| 1483 scoped_ptr<TemplateURL> expected_managed_default(new TemplateURL(data)); | 1487 scoped_ptr<TemplateURL> expected_managed_default(new TemplateURL(data)); |
| 1484 EXPECT_TRUE(model()->is_default_search_managed()); | 1488 EXPECT_TRUE(model()->is_default_search_managed()); |
| 1485 const TemplateURL* actual_managed_default = | 1489 const TemplateURL* actual_managed_default = |
| 1486 model()->GetDefaultSearchProvider(); | 1490 model()->GetDefaultSearchProvider(); |
| 1487 ExpectSimilar(expected_managed_default.get(), actual_managed_default); | 1491 ExpectSimilar(expected_managed_default.get(), actual_managed_default); |
| 1488 | 1492 |
| 1489 TemplateURL* ext_dse = CreateKeywordWithDate( | 1493 TemplateURL* ext_dse = CreateKeywordWithDate( |
| 1490 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", | 1494 model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}", |
| 1491 std::string(), std::string(), std::string(), | 1495 std::string(), std::string(), std::string(), |
| 1492 true, true, "UTF-8", Time(), Time()); | 1496 true, true, "UTF-8", Time(), Time()); |
| 1493 scoped_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( | 1497 scoped_ptr<TemplateURL::AssociatedExtensionInfo> extension_info( |
| 1494 new TemplateURL::AssociatedExtensionInfo( | 1498 new TemplateURL::AssociatedExtensionInfo( |
| 1495 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext1")); | 1499 TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext1")); |
| 1496 extension_info->wants_to_be_default_engine = true; | 1500 extension_info->wants_to_be_default_engine = true; |
| 1497 model()->AddExtensionControlledTURL(ext_dse, extension_info.Pass()); | 1501 model()->AddExtensionControlledTURL(ext_dse, extension_info.Pass()); |
| 1498 EXPECT_EQ(ext_dse, model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); | 1502 EXPECT_EQ(ext_dse, model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1"))); |
| 1499 EXPECT_TRUE(model()->is_default_search_managed()); | 1503 EXPECT_TRUE(model()->is_default_search_managed()); |
| 1500 actual_managed_default = model()->GetDefaultSearchProvider(); | 1504 actual_managed_default = model()->GetDefaultSearchProvider(); |
| 1501 ExpectSimilar(expected_managed_default.get(), actual_managed_default); | 1505 ExpectSimilar(expected_managed_default.get(), actual_managed_default); |
| 1502 } | 1506 } |
| OLD | NEW |