| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
| 7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
| 8 #include "base/string16.h" |
| 8 #include "base/string_number_conversions.h" | 9 #include "base/string_number_conversions.h" |
| 9 #include "base/string_util.h" | 10 #include "base/string_util.h" |
| 10 #include "base/utf_string_conversions.h" | 11 #include "base/utf_string_conversions.h" |
| 11 #include "chrome/browser/autocomplete/autocomplete.h" | 12 #include "chrome/browser/autocomplete/autocomplete.h" |
| 12 #include "chrome/browser/autocomplete/autocomplete_match.h" | 13 #include "chrome/browser/autocomplete/autocomplete_match.h" |
| 13 #include "chrome/browser/autocomplete/keyword_provider.h" | 14 #include "chrome/browser/autocomplete/keyword_provider.h" |
| 14 #include "chrome/browser/autocomplete/search_provider.h" | 15 #include "chrome/browser/autocomplete/search_provider.h" |
| 15 #include "chrome/browser/search_engines/template_url.h" | 16 #include "chrome/browser/search_engines/template_url.h" |
| 16 #include "chrome/browser/search_engines/template_url_service.h" | 17 #include "chrome/browser/search_engines/template_url_service.h" |
| 17 #include "chrome/browser/search_engines/template_url_service_factory.h" | 18 #include "chrome/browser/search_engines/template_url_service_factory.h" |
| (...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 RunExactKeymatchTest(false); | 273 RunExactKeymatchTest(false); |
| 273 } | 274 } |
| 274 | 275 |
| 275 typedef testing::Test AutocompleteTest; | 276 typedef testing::Test AutocompleteTest; |
| 276 | 277 |
| 277 TEST_F(AutocompleteTest, InputType) { | 278 TEST_F(AutocompleteTest, InputType) { |
| 278 struct test_data { | 279 struct test_data { |
| 279 const string16 input; | 280 const string16 input; |
| 280 const AutocompleteInput::Type type; | 281 const AutocompleteInput::Type type; |
| 281 } input_cases[] = { | 282 } input_cases[] = { |
| 282 { ASCIIToUTF16(""), AutocompleteInput::INVALID }, | 283 { string16(), AutocompleteInput::INVALID }, |
| 283 { ASCIIToUTF16("?"), AutocompleteInput::FORCED_QUERY }, | 284 { ASCIIToUTF16("?"), AutocompleteInput::FORCED_QUERY }, |
| 284 { ASCIIToUTF16("?foo"), AutocompleteInput::FORCED_QUERY }, | 285 { ASCIIToUTF16("?foo"), AutocompleteInput::FORCED_QUERY }, |
| 285 { ASCIIToUTF16("?foo bar"), AutocompleteInput::FORCED_QUERY }, | 286 { ASCIIToUTF16("?foo bar"), AutocompleteInput::FORCED_QUERY }, |
| 286 { ASCIIToUTF16("?http://foo.com/bar"), AutocompleteInput::FORCED_QUERY }, | 287 { ASCIIToUTF16("?http://foo.com/bar"), AutocompleteInput::FORCED_QUERY }, |
| 287 { ASCIIToUTF16("foo"), AutocompleteInput::UNKNOWN }, | 288 { ASCIIToUTF16("foo"), AutocompleteInput::UNKNOWN }, |
| 288 { ASCIIToUTF16("localhost"), AutocompleteInput::URL }, | 289 { ASCIIToUTF16("localhost"), AutocompleteInput::URL }, |
| 289 { ASCIIToUTF16("foo.c"), AutocompleteInput::UNKNOWN }, | 290 { ASCIIToUTF16("foo.c"), AutocompleteInput::UNKNOWN }, |
| 290 { ASCIIToUTF16("foo.com"), AutocompleteInput::URL }, | 291 { ASCIIToUTF16("foo.com"), AutocompleteInput::URL }, |
| 291 { ASCIIToUTF16("-foo.com"), AutocompleteInput::URL }, | 292 { ASCIIToUTF16("-foo.com"), AutocompleteInput::URL }, |
| 292 { ASCIIToUTF16("foo-.com"), AutocompleteInput::UNKNOWN }, | 293 { ASCIIToUTF16("foo-.com"), AutocompleteInput::UNKNOWN }, |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 437 } | 438 } |
| 438 | 439 |
| 439 TEST(AutocompleteInput, ParseForEmphasizeComponent) { | 440 TEST(AutocompleteInput, ParseForEmphasizeComponent) { |
| 440 using url_parse::Component; | 441 using url_parse::Component; |
| 441 Component kInvalidComponent(0, -1); | 442 Component kInvalidComponent(0, -1); |
| 442 struct test_data { | 443 struct test_data { |
| 443 const string16 input; | 444 const string16 input; |
| 444 const Component scheme; | 445 const Component scheme; |
| 445 const Component host; | 446 const Component host; |
| 446 } input_cases[] = { | 447 } input_cases[] = { |
| 447 { ASCIIToUTF16(""), kInvalidComponent, kInvalidComponent }, | 448 { string16(), kInvalidComponent, kInvalidComponent }, |
| 448 { ASCIIToUTF16("?"), kInvalidComponent, kInvalidComponent }, | 449 { ASCIIToUTF16("?"), kInvalidComponent, kInvalidComponent }, |
| 449 { ASCIIToUTF16("?http://foo.com/bar"), kInvalidComponent, | 450 { ASCIIToUTF16("?http://foo.com/bar"), kInvalidComponent, |
| 450 kInvalidComponent }, | 451 kInvalidComponent }, |
| 451 { ASCIIToUTF16("foo/bar baz"), kInvalidComponent, Component(0, 3) }, | 452 { ASCIIToUTF16("foo/bar baz"), kInvalidComponent, Component(0, 3) }, |
| 452 { ASCIIToUTF16("http://foo/bar baz"), Component(0, 4), Component(7, 3) }, | 453 { ASCIIToUTF16("http://foo/bar baz"), Component(0, 4), Component(7, 3) }, |
| 453 { ASCIIToUTF16("link:foo.com"), Component(0, 4), kInvalidComponent }, | 454 { ASCIIToUTF16("link:foo.com"), Component(0, 4), kInvalidComponent }, |
| 454 { ASCIIToUTF16("www.foo.com:81"), kInvalidComponent, Component(0, 11) }, | 455 { ASCIIToUTF16("www.foo.com:81"), kInvalidComponent, Component(0, 11) }, |
| 455 { WideToUTF16(L"\u6d4b\u8bd5"), kInvalidComponent, Component(0, 2) }, | 456 { WideToUTF16(L"\u6d4b\u8bd5"), kInvalidComponent, Component(0, 2) }, |
| 456 { ASCIIToUTF16("view-source:http://www.foo.com/"), Component(12, 4), | 457 { ASCIIToUTF16("view-source:http://www.foo.com/"), Component(12, 4), |
| 457 Component(19, 11) }, | 458 Component(19, 11) }, |
| (...skipping 20 matching lines...) Expand all Loading... |
| 478 AutocompleteInput input(input_cases[i].input, string16(), true, false, | 479 AutocompleteInput input(input_cases[i].input, string16(), true, false, |
| 479 true, AutocompleteInput::ALL_MATCHES); | 480 true, AutocompleteInput::ALL_MATCHES); |
| 480 EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin); | 481 EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin); |
| 481 EXPECT_EQ(input_cases[i].scheme.len, scheme.len); | 482 EXPECT_EQ(input_cases[i].scheme.len, scheme.len); |
| 482 EXPECT_EQ(input_cases[i].host.begin, host.begin); | 483 EXPECT_EQ(input_cases[i].host.begin, host.begin); |
| 483 EXPECT_EQ(input_cases[i].host.len, host.len); | 484 EXPECT_EQ(input_cases[i].host.len, host.len); |
| 484 } | 485 } |
| 485 } | 486 } |
| 486 | 487 |
| 487 } // namespace | 488 } // namespace |
| OLD | NEW |