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

Side by Side Diff: components/omnibox/browser/autocomplete_input_unittest.cc

Issue 2738003002: Add title to current page in zero suggest. (Closed)
Patch Set: Remove debugging info. Created 3 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 "components/omnibox/browser/autocomplete_input.h" 5 #include "components/omnibox/browser/autocomplete_input.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/strings/string16.h" 10 #include "base/strings/string16.h"
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 { ASCIIToUTF16("chrome-devtools:"), metrics::OmniboxInputType::QUERY }, 162 { ASCIIToUTF16("chrome-devtools:"), metrics::OmniboxInputType::QUERY },
163 { ASCIIToUTF16("about://f;"), metrics::OmniboxInputType::QUERY }, 163 { ASCIIToUTF16("about://f;"), metrics::OmniboxInputType::QUERY },
164 { ASCIIToUTF16("://w"), metrics::OmniboxInputType::UNKNOWN }, 164 { ASCIIToUTF16("://w"), metrics::OmniboxInputType::UNKNOWN },
165 { ASCIIToUTF16(":w"), metrics::OmniboxInputType::UNKNOWN }, 165 { ASCIIToUTF16(":w"), metrics::OmniboxInputType::UNKNOWN },
166 { base::WideToUTF16(L".\u062A"), metrics::OmniboxInputType::UNKNOWN }, 166 { base::WideToUTF16(L".\u062A"), metrics::OmniboxInputType::UNKNOWN },
167 }; 167 };
168 168
169 for (size_t i = 0; i < arraysize(input_cases); ++i) { 169 for (size_t i = 0; i < arraysize(input_cases); ++i) {
170 SCOPED_TRACE(input_cases[i].input); 170 SCOPED_TRACE(input_cases[i].input);
171 AutocompleteInput input(input_cases[i].input, base::string16::npos, 171 AutocompleteInput input(input_cases[i].input, base::string16::npos,
172 std::string(), GURL(), 172 std::string(), GURL(), base::string16(),
173 OmniboxEventProto::INVALID_SPEC, true, false, true, 173 OmniboxEventProto::INVALID_SPEC, true, false, true,
174 true, false, TestSchemeClassifier()); 174 true, false, TestSchemeClassifier());
175 EXPECT_EQ(input_cases[i].type, input.type()); 175 EXPECT_EQ(input_cases[i].type, input.type());
176 } 176 }
177 } 177 }
178 178
179 TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) { 179 TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) {
180 struct test_data { 180 struct test_data {
181 const base::string16 input; 181 const base::string16 input;
182 const metrics::OmniboxInputType::Type type; 182 const metrics::OmniboxInputType::Type type;
(...skipping 19 matching lines...) Expand all
202 std::string("http://www.y.com/z%20z") }, 202 std::string("http://www.y.com/z%20z") },
203 { ASCIIToUTF16("abc.com"), metrics::OmniboxInputType::URL, 203 { ASCIIToUTF16("abc.com"), metrics::OmniboxInputType::URL,
204 std::string("http://abc.com/") }, 204 std::string("http://abc.com/") },
205 { ASCIIToUTF16("foo bar"), metrics::OmniboxInputType::QUERY, 205 { ASCIIToUTF16("foo bar"), metrics::OmniboxInputType::QUERY,
206 std::string() }, 206 std::string() },
207 }; 207 };
208 208
209 for (size_t i = 0; i < arraysize(input_cases); ++i) { 209 for (size_t i = 0; i < arraysize(input_cases); ++i) {
210 SCOPED_TRACE(input_cases[i].input); 210 SCOPED_TRACE(input_cases[i].input);
211 AutocompleteInput input(input_cases[i].input, base::string16::npos, "com", 211 AutocompleteInput input(input_cases[i].input, base::string16::npos, "com",
212 GURL(), OmniboxEventProto::INVALID_SPEC, true, 212 GURL(), base::string16(),
213 false, true, true, false, TestSchemeClassifier()); 213 OmniboxEventProto::INVALID_SPEC, true, false, true,
214 true, false, TestSchemeClassifier());
214 EXPECT_EQ(input_cases[i].type, input.type()); 215 EXPECT_EQ(input_cases[i].type, input.type());
215 if (input_cases[i].type == metrics::OmniboxInputType::URL) 216 if (input_cases[i].type == metrics::OmniboxInputType::URL)
216 EXPECT_EQ(input_cases[i].spec, input.canonicalized_url().spec()); 217 EXPECT_EQ(input_cases[i].spec, input.canonicalized_url().spec());
217 } 218 }
218 } 219 }
219 220
220 // This tests for a regression where certain input in the omnibox caused us to 221 // This tests for a regression where certain input in the omnibox caused us to
221 // crash. As long as the test completes without crashing, we're fine. 222 // crash. As long as the test completes without crashing, we're fine.
222 TEST(AutocompleteInputTest, InputCrash) { 223 TEST(AutocompleteInputTest, InputCrash) {
223 AutocompleteInput input(base::WideToUTF16(L"\uff65@s"), base::string16::npos, 224 AutocompleteInput input(base::WideToUTF16(L"\uff65@s"), base::string16::npos,
224 std::string(), GURL(), 225 std::string(), GURL(), base::string16(),
225 OmniboxEventProto::INVALID_SPEC, true, false, true, 226 OmniboxEventProto::INVALID_SPEC, true, false, true,
226 true, false, TestSchemeClassifier()); 227 true, false, TestSchemeClassifier());
227 } 228 }
228 229
229 TEST(AutocompleteInputTest, ParseForEmphasizeComponent) { 230 TEST(AutocompleteInputTest, ParseForEmphasizeComponent) {
230 using url::Component; 231 using url::Component;
231 Component kInvalidComponent(0, -1); 232 Component kInvalidComponent(0, -1);
232 struct test_data { 233 struct test_data {
233 const base::string16 input; 234 const base::string16 input;
234 const Component scheme; 235 const Component scheme;
(...skipping 24 matching lines...) Expand all
259 }; 260 };
260 261
261 for (size_t i = 0; i < arraysize(input_cases); ++i) { 262 for (size_t i = 0; i < arraysize(input_cases); ++i) {
262 SCOPED_TRACE(input_cases[i].input); 263 SCOPED_TRACE(input_cases[i].input);
263 Component scheme, host; 264 Component scheme, host;
264 AutocompleteInput::ParseForEmphasizeComponents(input_cases[i].input, 265 AutocompleteInput::ParseForEmphasizeComponents(input_cases[i].input,
265 TestSchemeClassifier(), 266 TestSchemeClassifier(),
266 &scheme, 267 &scheme,
267 &host); 268 &host);
268 AutocompleteInput input(input_cases[i].input, base::string16::npos, 269 AutocompleteInput input(input_cases[i].input, base::string16::npos,
269 std::string(), GURL(), 270 std::string(), GURL(), base::string16(),
270 OmniboxEventProto::INVALID_SPEC, true, false, true, 271 OmniboxEventProto::INVALID_SPEC, true, false, true,
271 true, false, TestSchemeClassifier()); 272 true, false, TestSchemeClassifier());
272 EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin); 273 EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin);
273 EXPECT_EQ(input_cases[i].scheme.len, scheme.len); 274 EXPECT_EQ(input_cases[i].scheme.len, scheme.len);
274 EXPECT_EQ(input_cases[i].host.begin, host.begin); 275 EXPECT_EQ(input_cases[i].host.begin, host.begin);
275 EXPECT_EQ(input_cases[i].host.len, host.len); 276 EXPECT_EQ(input_cases[i].host.len, host.len);
276 } 277 }
277 } 278 }
278 279
279 TEST(AutocompleteInputTest, InputTypeWithCursorPosition) { 280 TEST(AutocompleteInputTest, InputTypeWithCursorPosition) {
(...skipping 19 matching lines...) Expand all
299 // reaches the AutocompleteInput parser the '?' should just be treated like 300 // reaches the AutocompleteInput parser the '?' should just be treated like
300 // a normal character. 301 // a normal character.
301 { ASCIIToUTF16("?foo bar"), 2, ASCIIToUTF16("?foo bar"), 2 }, 302 { ASCIIToUTF16("?foo bar"), 2, ASCIIToUTF16("?foo bar"), 2 },
302 { ASCIIToUTF16(" ?foo bar"), 4, ASCIIToUTF16("?foo bar"), 2 }, 303 { ASCIIToUTF16(" ?foo bar"), 4, ASCIIToUTF16("?foo bar"), 2 },
303 { ASCIIToUTF16("? foo bar"), 4, ASCIIToUTF16("? foo bar"), 4 }, 304 { ASCIIToUTF16("? foo bar"), 4, ASCIIToUTF16("? foo bar"), 4 },
304 { ASCIIToUTF16(" ? foo bar"), 6, ASCIIToUTF16("? foo bar"), 4 }, 305 { ASCIIToUTF16(" ? foo bar"), 6, ASCIIToUTF16("? foo bar"), 4 },
305 }; 306 };
306 307
307 for (size_t i = 0; i < arraysize(input_cases); ++i) { 308 for (size_t i = 0; i < arraysize(input_cases); ++i) {
308 SCOPED_TRACE(input_cases[i].input); 309 SCOPED_TRACE(input_cases[i].input);
309 AutocompleteInput input(input_cases[i].input, 310 AutocompleteInput input(
310 input_cases[i].cursor_position, std::string(), 311 input_cases[i].input, input_cases[i].cursor_position, std::string(),
311 GURL(), OmniboxEventProto::INVALID_SPEC, true, 312 GURL(), base::string16(), OmniboxEventProto::INVALID_SPEC, true, false,
312 false, true, true, false, TestSchemeClassifier()); 313 true, true, false, TestSchemeClassifier());
313 EXPECT_EQ(input_cases[i].normalized_input, input.text()); 314 EXPECT_EQ(input_cases[i].normalized_input, input.text());
314 EXPECT_EQ(input_cases[i].normalized_cursor_position, 315 EXPECT_EQ(input_cases[i].normalized_cursor_position,
315 input.cursor_position()); 316 input.cursor_position());
316 } 317 }
317 } 318 }
OLDNEW
« no previous file with comments | « components/omnibox/browser/autocomplete_input.cc ('k') | components/omnibox/browser/autocomplete_match_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698