Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(476)

Side by Side Diff: components/search_engines/template_url_prepopulate_data_unittest.cc

Issue 1135163002: Omnibox - Strip Extra Whitespace from Custom Search Engine Names (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix more tests that don't set short_name Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "base/command_line.h" 5 #include "base/command_line.h"
6 #include "base/files/scoped_temp_dir.h" 6 #include "base/files/scoped_temp_dir.h"
7 #include "base/memory/scoped_vector.h" 7 #include "base/memory/scoped_vector.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "components/google/core/browser/google_switches.h" 9 #include "components/google/core/browser/google_switches.h"
10 #include "components/pref_registry/testing_pref_service_syncable.h" 10 #include "components/pref_registry/testing_pref_service_syncable.h"
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 131
132 int version = TemplateURLPrepopulateData::GetDataVersion(&prefs_); 132 int version = TemplateURLPrepopulateData::GetDataVersion(&prefs_);
133 EXPECT_EQ(1, version); 133 EXPECT_EQ(1, version);
134 134
135 size_t default_index; 135 size_t default_index;
136 ScopedVector<TemplateURLData> t_urls = 136 ScopedVector<TemplateURLData> t_urls =
137 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_, 137 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_,
138 &default_index); 138 &default_index);
139 139
140 ASSERT_EQ(1u, t_urls.size()); 140 ASSERT_EQ(1u, t_urls.size());
141 EXPECT_EQ(ASCIIToUTF16("foo"), t_urls[0]->short_name); 141 EXPECT_EQ(ASCIIToUTF16("foo"), t_urls[0]->short_name());
142 EXPECT_EQ(ASCIIToUTF16("fook"), t_urls[0]->keyword()); 142 EXPECT_EQ(ASCIIToUTF16("fook"), t_urls[0]->keyword());
143 EXPECT_EQ("foo.com", GetHostFromTemplateURLData(*t_urls[0])); 143 EXPECT_EQ("foo.com", GetHostFromTemplateURLData(*t_urls[0]));
144 EXPECT_EQ("foi.com", t_urls[0]->favicon_url.host()); 144 EXPECT_EQ("foi.com", t_urls[0]->favicon_url.host());
145 EXPECT_EQ(1u, t_urls[0]->input_encodings.size()); 145 EXPECT_EQ(1u, t_urls[0]->input_encodings.size());
146 EXPECT_EQ(1001, t_urls[0]->prepopulate_id); 146 EXPECT_EQ(1001, t_urls[0]->prepopulate_id);
147 EXPECT_TRUE(t_urls[0]->suggestions_url.empty()); 147 EXPECT_TRUE(t_urls[0]->suggestions_url.empty());
148 EXPECT_TRUE(t_urls[0]->instant_url.empty()); 148 EXPECT_TRUE(t_urls[0]->instant_url.empty());
149 EXPECT_EQ(0u, t_urls[0]->alternate_urls.size()); 149 EXPECT_EQ(0u, t_urls[0]->alternate_urls.size());
150 EXPECT_TRUE(t_urls[0]->search_terms_replacement_key.empty()); 150 EXPECT_TRUE(t_urls[0]->search_terms_replacement_key.empty());
151 151
152 // Test the optional settings too. 152 // Test the optional settings too.
153 entry->SetString("suggest_url", "http://foo.com/suggest?q={searchTerms}"); 153 entry->SetString("suggest_url", "http://foo.com/suggest?q={searchTerms}");
154 entry->SetString("instant_url", "http://foo.com/instant?q={searchTerms}"); 154 entry->SetString("instant_url", "http://foo.com/instant?q={searchTerms}");
155 base::ListValue* alternate_urls = new base::ListValue; 155 base::ListValue* alternate_urls = new base::ListValue;
156 alternate_urls->AppendString("http://foo.com/alternate?q={searchTerms}"); 156 alternate_urls->AppendString("http://foo.com/alternate?q={searchTerms}");
157 entry->Set("alternate_urls", alternate_urls); 157 entry->Set("alternate_urls", alternate_urls);
158 entry->SetString("search_terms_replacement_key", "espv"); 158 entry->SetString("search_terms_replacement_key", "espv");
159 overrides = new base::ListValue; 159 overrides = new base::ListValue;
160 overrides->Append(entry->DeepCopy()); 160 overrides->Append(entry->DeepCopy());
161 prefs_.SetUserPref(prefs::kSearchProviderOverrides, overrides); 161 prefs_.SetUserPref(prefs::kSearchProviderOverrides, overrides);
162 162
163 t_urls = TemplateURLPrepopulateData::GetPrepopulatedEngines( 163 t_urls = TemplateURLPrepopulateData::GetPrepopulatedEngines(
164 &prefs_, &default_index); 164 &prefs_, &default_index);
165 ASSERT_EQ(1u, t_urls.size()); 165 ASSERT_EQ(1u, t_urls.size());
166 EXPECT_EQ(ASCIIToUTF16("foo"), t_urls[0]->short_name); 166 EXPECT_EQ(ASCIIToUTF16("foo"), t_urls[0]->short_name());
167 EXPECT_EQ(ASCIIToUTF16("fook"), t_urls[0]->keyword()); 167 EXPECT_EQ(ASCIIToUTF16("fook"), t_urls[0]->keyword());
168 EXPECT_EQ("foo.com", GetHostFromTemplateURLData(*t_urls[0])); 168 EXPECT_EQ("foo.com", GetHostFromTemplateURLData(*t_urls[0]));
169 EXPECT_EQ("foi.com", t_urls[0]->favicon_url.host()); 169 EXPECT_EQ("foi.com", t_urls[0]->favicon_url.host());
170 EXPECT_EQ(1u, t_urls[0]->input_encodings.size()); 170 EXPECT_EQ(1u, t_urls[0]->input_encodings.size());
171 EXPECT_EQ(1001, t_urls[0]->prepopulate_id); 171 EXPECT_EQ(1001, t_urls[0]->prepopulate_id);
172 EXPECT_EQ("http://foo.com/suggest?q={searchTerms}", 172 EXPECT_EQ("http://foo.com/suggest?q={searchTerms}",
173 t_urls[0]->suggestions_url); 173 t_urls[0]->suggestions_url);
174 EXPECT_EQ("http://foo.com/instant?q={searchTerms}", 174 EXPECT_EQ("http://foo.com/instant?q={searchTerms}",
175 t_urls[0]->instant_url); 175 t_urls[0]->instant_url);
176 ASSERT_EQ(1u, t_urls[0]->alternate_urls.size()); 176 ASSERT_EQ(1u, t_urls[0]->alternate_urls.size());
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 223
224 version = TemplateURLPrepopulateData::GetDataVersion(&prefs_); 224 version = TemplateURLPrepopulateData::GetDataVersion(&prefs_);
225 EXPECT_EQ(TemplateURLPrepopulateData::kCurrentDataVersion, version); 225 EXPECT_EQ(TemplateURLPrepopulateData::kCurrentDataVersion, version);
226 226
227 size_t default_index; 227 size_t default_index;
228 ScopedVector<TemplateURLData> t_urls = 228 ScopedVector<TemplateURLData> t_urls =
229 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_, 229 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_,
230 &default_index); 230 &default_index);
231 ASSERT_FALSE(t_urls.empty()); 231 ASSERT_FALSE(t_urls.empty());
232 for (size_t i = 0; i < t_urls.size(); ++i) { 232 for (size_t i = 0; i < t_urls.size(); ++i) {
233 EXPECT_NE(ASCIIToUTF16("foo"), t_urls[i]->short_name); 233 EXPECT_NE(ASCIIToUTF16("foo"), t_urls[i]->short_name());
234 EXPECT_NE(ASCIIToUTF16("fook"), t_urls[i]->keyword()); 234 EXPECT_NE(ASCIIToUTF16("fook"), t_urls[i]->keyword());
235 EXPECT_NE("foi.com", t_urls[i]->favicon_url.host()); 235 EXPECT_NE("foi.com", t_urls[i]->favicon_url.host());
236 EXPECT_NE("foo.com", GetHostFromTemplateURLData(*t_urls[i])); 236 EXPECT_NE("foo.com", GetHostFromTemplateURLData(*t_urls[i]));
237 EXPECT_NE(1001, t_urls[i]->prepopulate_id); 237 EXPECT_NE(1001, t_urls[i]->prepopulate_id);
238 } 238 }
239 // Ensures the default URL is Google and has the optional fields filled. 239 // Ensures the default URL is Google and has the optional fields filled.
240 EXPECT_EQ(ASCIIToUTF16("Google"), t_urls[default_index]->short_name); 240 EXPECT_EQ(ASCIIToUTF16("Google"), t_urls[default_index]->short_name());
241 EXPECT_FALSE(t_urls[default_index]->suggestions_url.empty()); 241 EXPECT_FALSE(t_urls[default_index]->suggestions_url.empty());
242 EXPECT_FALSE(t_urls[default_index]->instant_url.empty()); 242 EXPECT_FALSE(t_urls[default_index]->instant_url.empty());
243 EXPECT_FALSE(t_urls[default_index]->image_url.empty()); 243 EXPECT_FALSE(t_urls[default_index]->image_url.empty());
244 EXPECT_FALSE(t_urls[default_index]->new_tab_url.empty()); 244 EXPECT_FALSE(t_urls[default_index]->new_tab_url.empty());
245 EXPECT_FALSE(t_urls[default_index]->contextual_search_url.empty()); 245 EXPECT_FALSE(t_urls[default_index]->contextual_search_url.empty());
246 EXPECT_FALSE(t_urls[default_index]->image_url_post_params.empty()); 246 EXPECT_FALSE(t_urls[default_index]->image_url_post_params.empty());
247 EXPECT_EQ(SEARCH_ENGINE_GOOGLE, 247 EXPECT_EQ(SEARCH_ENGINE_GOOGLE,
248 TemplateURLPrepopulateData::GetEngineType( 248 TemplateURLPrepopulateData::GetEngineType(
249 TemplateURL(*t_urls[default_index]), 249 TemplateURL(*t_urls[default_index]),
250 SearchTermsData())); 250 SearchTermsData()));
251 } 251 }
252 252
253 // Verifies that built-in search providers are processed correctly. 253 // Verifies that built-in search providers are processed correctly.
254 TEST_F(TemplateURLPrepopulateDataTest, ProvidersFromPrepopulated) { 254 TEST_F(TemplateURLPrepopulateDataTest, ProvidersFromPrepopulated) {
255 // Use United States. 255 // Use United States.
256 prefs_.SetInteger(prefs::kCountryIDAtInstall, 'U'<<8|'S'); 256 prefs_.SetInteger(prefs::kCountryIDAtInstall, 'U'<<8|'S');
257 size_t default_index; 257 size_t default_index;
258 ScopedVector<TemplateURLData> t_urls = 258 ScopedVector<TemplateURLData> t_urls =
259 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_, 259 TemplateURLPrepopulateData::GetPrepopulatedEngines(&prefs_,
260 &default_index); 260 &default_index);
261 261
262 // Ensure all the URLs have the required fields populated. 262 // Ensure all the URLs have the required fields populated.
263 ASSERT_FALSE(t_urls.empty()); 263 ASSERT_FALSE(t_urls.empty());
264 for (size_t i = 0; i < t_urls.size(); ++i) { 264 for (size_t i = 0; i < t_urls.size(); ++i) {
265 ASSERT_FALSE(t_urls[i]->short_name.empty()); 265 ASSERT_FALSE(t_urls[i]->short_name().empty());
266 ASSERT_FALSE(t_urls[i]->keyword().empty()); 266 ASSERT_FALSE(t_urls[i]->keyword().empty());
267 ASSERT_FALSE(t_urls[i]->favicon_url.host().empty()); 267 ASSERT_FALSE(t_urls[i]->favicon_url.host().empty());
268 ASSERT_FALSE(GetHostFromTemplateURLData(*t_urls[i]).empty()); 268 ASSERT_FALSE(GetHostFromTemplateURLData(*t_urls[i]).empty());
269 ASSERT_FALSE(t_urls[i]->input_encodings.empty()); 269 ASSERT_FALSE(t_urls[i]->input_encodings.empty());
270 EXPECT_GT(t_urls[i]->prepopulate_id, 0); 270 EXPECT_GT(t_urls[i]->prepopulate_id, 0);
271 } 271 }
272 272
273 // Ensures the default URL is Google and has the optional fields filled. 273 // Ensures the default URL is Google and has the optional fields filled.
274 EXPECT_EQ(ASCIIToUTF16("Google"), t_urls[default_index]->short_name); 274 EXPECT_EQ(ASCIIToUTF16("Google"), t_urls[default_index]->short_name());
275 EXPECT_FALSE(t_urls[default_index]->suggestions_url.empty()); 275 EXPECT_FALSE(t_urls[default_index]->suggestions_url.empty());
276 EXPECT_FALSE(t_urls[default_index]->instant_url.empty()); 276 EXPECT_FALSE(t_urls[default_index]->instant_url.empty());
277 EXPECT_FALSE(t_urls[default_index]->image_url.empty()); 277 EXPECT_FALSE(t_urls[default_index]->image_url.empty());
278 EXPECT_FALSE(t_urls[default_index]->new_tab_url.empty()); 278 EXPECT_FALSE(t_urls[default_index]->new_tab_url.empty());
279 EXPECT_FALSE(t_urls[default_index]->contextual_search_url.empty()); 279 EXPECT_FALSE(t_urls[default_index]->contextual_search_url.empty());
280 EXPECT_FALSE(t_urls[default_index]->image_url_post_params.empty()); 280 EXPECT_FALSE(t_urls[default_index]->image_url_post_params.empty());
281 // Expect at least 2 alternate_urls. 281 // Expect at least 2 alternate_urls.
282 // This caught a bug with static initialization of arrays, so leave this in. 282 // This caught a bug with static initialization of arrays, so leave this in.
283 EXPECT_GT(t_urls[default_index]->alternate_urls.size(), 1u); 283 EXPECT_GT(t_urls[default_index]->alternate_urls.size(), 1u);
284 for (size_t i = 0; i < t_urls[default_index]->alternate_urls.size(); ++i) 284 for (size_t i = 0; i < t_urls[default_index]->alternate_urls.size(); ++i)
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 EXPECT_EQ(SEARCH_ENGINE_OTHER, GetEngineType("invalid:search:url")); 340 EXPECT_EQ(SEARCH_ENGINE_OTHER, GetEngineType("invalid:search:url"));
341 341
342 // URL that doesn't look Google-related, but matches a Google base URL 342 // URL that doesn't look Google-related, but matches a Google base URL
343 // specified on the command line. 343 // specified on the command line.
344 const std::string foo_url("http://www.foo.com/search?q={searchTerms}"); 344 const std::string foo_url("http://www.foo.com/search?q={searchTerms}");
345 EXPECT_EQ(SEARCH_ENGINE_OTHER, GetEngineType(foo_url)); 345 EXPECT_EQ(SEARCH_ENGINE_OTHER, GetEngineType(foo_url));
346 base::CommandLine::ForCurrentProcess()->AppendSwitchASCII( 346 base::CommandLine::ForCurrentProcess()->AppendSwitchASCII(
347 switches::kGoogleBaseURL, "http://www.foo.com/"); 347 switches::kGoogleBaseURL, "http://www.foo.com/");
348 EXPECT_EQ(SEARCH_ENGINE_GOOGLE, GetEngineType(foo_url)); 348 EXPECT_EQ(SEARCH_ENGINE_GOOGLE, GetEngineType(foo_url));
349 } 349 }
OLDNEW
« no previous file with comments | « components/search_engines/template_url_prepopulate_data.cc ('k') | components/search_engines/template_url_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698