OLD | NEW |
---|---|
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/base_paths.h" | 5 #include "base/base_paths.h" |
6 #include "base/command_line.h" | 6 #include "base/command_line.h" |
7 #include "base/strings/string_number_conversions.h" | 7 #include "base/strings/string_number_conversions.h" |
8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "components/metrics/proto/omnibox_event.pb.h" | 10 #include "components/metrics/proto/omnibox_event.pb.h" |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
151 TemplateURLData data; | 151 TemplateURLData data; |
152 data.image_url = KImageSearchURL; | 152 data.image_url = KImageSearchURL; |
153 | 153 |
154 // Try to parse invalid post parameters. | 154 // Try to parse invalid post parameters. |
155 data.image_url_post_params = kInvalidPostParamsString; | 155 data.image_url_post_params = kInvalidPostParamsString; |
156 TemplateURL url_bad(data); | 156 TemplateURL url_bad(data); |
157 ASSERT_FALSE(url_bad.image_url_ref().IsValid(search_terms_data_)); | 157 ASSERT_FALSE(url_bad.image_url_ref().IsValid(search_terms_data_)); |
158 const TemplateURLRef::PostParams& bad_post_params = | 158 const TemplateURLRef::PostParams& bad_post_params = |
159 url_bad.image_url_ref().post_params_; | 159 url_bad.image_url_ref().post_params_; |
160 ASSERT_EQ(2U, bad_post_params.size()); | 160 ASSERT_EQ(2U, bad_post_params.size()); |
161 EXPECT_EQ("unknown_template", bad_post_params[0].first); | 161 EXPECT_EQ("unknown_template", bad_post_params[0].value_name); |
Peter Kasting
2015/02/18 21:55:52
Nit: Many of these place you're touching might get
Vitaly Baranov
2015/02/19 17:31:20
Done.
| |
162 EXPECT_EQ("{UnknownTemplate}", bad_post_params[0].second); | 162 EXPECT_EQ("{UnknownTemplate}", bad_post_params[0].value); |
163 EXPECT_EQ("bad_value", bad_post_params[1].first); | 163 EXPECT_TRUE(bad_post_params[0].content_type.empty()); |
164 EXPECT_EQ("bad{value}", bad_post_params[1].second); | 164 EXPECT_EQ("bad_value", bad_post_params[1].value_name); |
165 EXPECT_EQ("bad{value}", bad_post_params[1].value); | |
166 EXPECT_TRUE(bad_post_params[1].content_type.empty()); | |
165 | 167 |
166 // Try to parse valid post parameters. | 168 // Try to parse valid post parameters. |
167 data.image_url_post_params = kValidPostParamsString; | 169 data.image_url_post_params = kValidPostParamsString; |
168 TemplateURL url(data); | 170 TemplateURL url(data); |
169 ASSERT_TRUE(url.image_url_ref().IsValid(search_terms_data_)); | 171 ASSERT_TRUE(url.image_url_ref().IsValid(search_terms_data_)); |
170 ASSERT_FALSE(url.image_url_ref().SupportsReplacement(search_terms_data_)); | 172 ASSERT_FALSE(url.image_url_ref().SupportsReplacement(search_terms_data_)); |
171 | 173 |
172 // Check term replacement. | 174 // Check term replacement. |
173 TemplateURLRef::SearchTermsArgs search_args(ASCIIToUTF16("X")); | 175 TemplateURLRef::SearchTermsArgs search_args(ASCIIToUTF16("X")); |
174 search_args.image_thumbnail_content = "dummy-image-thumbnail"; | 176 search_args.image_thumbnail_content = "dummy-image-thumbnail"; |
177 search_args.image_thumbnail_format = "jpeg"; | |
175 search_args.image_url = GURL("http://dummyimage.com/dummy.jpg"); | 178 search_args.image_url = GURL("http://dummyimage.com/dummy.jpg"); |
176 search_args.image_original_size = gfx::Size(10, 10); | 179 search_args.image_original_size = gfx::Size(10, 10); |
177 // Replacement operation with no post_data buffer should still return | 180 // Replacement operation with no post_data buffer should still return |
178 // the parsed URL. | 181 // the parsed URL. |
179 TestingSearchTermsData search_terms_data("http://X"); | 182 TestingSearchTermsData search_terms_data("http://X"); |
180 GURL result(url.image_url_ref().ReplaceSearchTerms( | 183 GURL result(url.image_url_ref().ReplaceSearchTerms( |
181 search_args, search_terms_data)); | 184 search_args, search_terms_data)); |
182 ASSERT_TRUE(result.is_valid()); | 185 ASSERT_TRUE(result.is_valid()); |
183 EXPECT_EQ(KImageSearchURL, result.spec()); | 186 EXPECT_EQ(KImageSearchURL, result.spec()); |
184 TemplateURLRef::PostContent post_content; | 187 TemplateURLRef::PostContent post_content; |
(...skipping 11 matching lines...) Expand all Loading... | |
196 url.image_url_ref().post_params_; | 199 url.image_url_ref().post_params_; |
197 EXPECT_EQ(7U, post_params.size()); | 200 EXPECT_EQ(7U, post_params.size()); |
198 for (TemplateURLRef::PostParams::const_iterator i = post_params.begin(); | 201 for (TemplateURLRef::PostParams::const_iterator i = post_params.begin(); |
199 i != post_params.end(); ++i) { | 202 i != post_params.end(); ++i) { |
200 TemplateURLRef::Replacements::const_iterator j = replacements.begin(); | 203 TemplateURLRef::Replacements::const_iterator j = replacements.begin(); |
201 for (; j != replacements.end(); ++j) { | 204 for (; j != replacements.end(); ++j) { |
202 if (j->is_post_param && j->index == | 205 if (j->is_post_param && j->index == |
203 static_cast<size_t>(i - post_params.begin())) { | 206 static_cast<size_t>(i - post_params.begin())) { |
204 switch (j->type) { | 207 switch (j->type) { |
205 case TemplateURLRef::GOOGLE_IMAGE_ORIGINAL_WIDTH: | 208 case TemplateURLRef::GOOGLE_IMAGE_ORIGINAL_WIDTH: |
206 EXPECT_EQ("width", i->first); | 209 EXPECT_EQ("width", i->value_name); |
207 EXPECT_EQ( | 210 EXPECT_EQ( |
208 base::IntToString(search_args.image_original_size.width()), | 211 base::IntToString(search_args.image_original_size.width()), |
209 i->second); | 212 i->value); |
213 EXPECT_TRUE(i->content_type.empty()); | |
210 break; | 214 break; |
211 case TemplateURLRef::GOOGLE_IMAGE_SEARCH_SOURCE: | 215 case TemplateURLRef::GOOGLE_IMAGE_SEARCH_SOURCE: |
212 EXPECT_EQ("sbisrc", i->first); | 216 EXPECT_EQ("sbisrc", i->value_name); |
213 EXPECT_EQ(search_terms_data.GoogleImageSearchSource(), i->second); | 217 EXPECT_EQ(search_terms_data.GoogleImageSearchSource(), i->value); |
218 EXPECT_TRUE(i->content_type.empty()); | |
214 break; | 219 break; |
215 case TemplateURLRef::GOOGLE_IMAGE_THUMBNAIL: | 220 case TemplateURLRef::GOOGLE_IMAGE_THUMBNAIL: |
216 EXPECT_EQ("image_content", i->first); | 221 EXPECT_EQ("image_content", i->value_name); |
217 EXPECT_EQ(search_args.image_thumbnail_content, i->second); | 222 EXPECT_EQ(search_args.image_thumbnail_content, i->value); |
223 EXPECT_EQ("image/" + search_args.image_thumbnail_format, | |
224 i->content_type); | |
218 break; | 225 break; |
219 case TemplateURLRef::GOOGLE_IMAGE_URL: | 226 case TemplateURLRef::GOOGLE_IMAGE_URL: |
220 EXPECT_EQ("image_url", i->first); | 227 EXPECT_EQ("image_url", i->value_name); |
221 EXPECT_EQ(search_args.image_url.spec(), i->second); | 228 EXPECT_EQ(search_args.image_url.spec(), i->value); |
229 EXPECT_TRUE(i->content_type.empty()); | |
222 break; | 230 break; |
223 case TemplateURLRef::LANGUAGE: | 231 case TemplateURLRef::LANGUAGE: |
224 EXPECT_EQ("language", i->first); | 232 EXPECT_EQ("language", i->value_name); |
225 EXPECT_EQ("en", i->second); | 233 EXPECT_EQ("en", i->value); |
234 EXPECT_TRUE(i->content_type.empty()); | |
226 break; | 235 break; |
227 default: | 236 default: |
228 ADD_FAILURE(); // Should never go here. | 237 ADD_FAILURE(); // Should never go here. |
229 } | 238 } |
230 break; | 239 break; |
231 } | 240 } |
232 } | 241 } |
233 if (j != replacements.end()) | 242 if (j != replacements.end()) |
234 continue; | 243 continue; |
235 if (i->first == "empty_param") { | 244 if (i->value_name == "empty_param") { |
236 EXPECT_TRUE(i->second.empty()); | 245 EXPECT_TRUE(i->value.empty()); |
237 } else if (i->first == "sbisrc") { | 246 EXPECT_TRUE(i->content_type.empty()); |
238 EXPECT_FALSE(i->second.empty()); | 247 } else if (i->value_name == "sbisrc") { |
248 EXPECT_FALSE(i->value.empty()); | |
249 EXPECT_TRUE(i->content_type.empty()); | |
239 } else { | 250 } else { |
240 EXPECT_EQ("constant_param", i->first); | 251 EXPECT_EQ("constant_param", i->value_name); |
241 EXPECT_EQ("constant", i->second); | 252 EXPECT_EQ("constant", i->value); |
253 EXPECT_TRUE(i->content_type.empty()); | |
242 } | 254 } |
243 } | 255 } |
244 } | 256 } |
245 | 257 |
246 // Test that setting the prepopulate ID from TemplateURL causes the stored | 258 // Test that setting the prepopulate ID from TemplateURL causes the stored |
247 // TemplateURLRef to handle parsing the URL parameters differently. | 259 // TemplateURLRef to handle parsing the URL parameters differently. |
248 TEST_F(TemplateURLTest, SetPrepopulatedAndParse) { | 260 TEST_F(TemplateURLTest, SetPrepopulatedAndParse) { |
249 TemplateURLData data; | 261 TemplateURLData data; |
250 data.SetURL("http://foo{fhqwhgads}bar"); | 262 data.SetURL("http://foo{fhqwhgads}bar"); |
251 TemplateURL url(data); | 263 TemplateURL url(data); |
(...skipping 1243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1495 EXPECT_EQ("http://bar/search?q=foo&pfq=full%20query%20text&qha=2338&xssi=t", | 1507 EXPECT_EQ("http://bar/search?q=foo&pfq=full%20query%20text&qha=2338&xssi=t", |
1496 result); | 1508 result); |
1497 | 1509 |
1498 TemplateURL url2(data); | 1510 TemplateURL url2(data); |
1499 search_terms_args.prefetch_query.clear(); | 1511 search_terms_args.prefetch_query.clear(); |
1500 search_terms_args.prefetch_query_type.clear(); | 1512 search_terms_args.prefetch_query_type.clear(); |
1501 result = | 1513 result = |
1502 url2.url_ref().ReplaceSearchTerms(search_terms_args, search_terms_data_); | 1514 url2.url_ref().ReplaceSearchTerms(search_terms_args, search_terms_data_); |
1503 EXPECT_EQ("http://bar/search?q=foo&xssi=t", result); | 1515 EXPECT_EQ("http://bar/search?q=foo&xssi=t", result); |
1504 } | 1516 } |
OLD | NEW |