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::TRIM_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::TRIM_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::TRIM_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::TRIM_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 |