| Index: chrome/browser/autocomplete/autocomplete_input_unittest.cc
|
| diff --git a/chrome/browser/autocomplete/autocomplete_input_unittest.cc b/chrome/browser/autocomplete/autocomplete_input_unittest.cc
|
| index aaa1531a7ae59e80e953c770201e238fe5c40e6f..ade2db818db815b45d03aa3265fca67737f53d5e 100644
|
| --- a/chrome/browser/autocomplete/autocomplete_input_unittest.cc
|
| +++ b/chrome/browser/autocomplete/autocomplete_input_unittest.cc
|
| @@ -121,8 +121,8 @@ TEST(AutocompleteInputTest, InputType) {
|
|
|
| for (size_t i = 0; i < ARRAYSIZE_UNSAFE(input_cases); ++i) {
|
| SCOPED_TRACE(input_cases[i].input);
|
| - AutocompleteInput input(input_cases[i].input, string16(), true, false,
|
| - true, AutocompleteInput::ALL_MATCHES);
|
| + AutocompleteInput input(input_cases[i].input, string16::npos, string16(),
|
| + true, false, true, AutocompleteInput::ALL_MATCHES);
|
| EXPECT_EQ(input_cases[i].type, input.type());
|
| }
|
| }
|
| @@ -140,8 +140,9 @@ TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) {
|
|
|
| for (size_t i = 0; i < ARRAYSIZE_UNSAFE(input_cases); ++i) {
|
| SCOPED_TRACE(input_cases[i].input);
|
| - AutocompleteInput input(input_cases[i].input, ASCIIToUTF16("com"), true,
|
| - false, true, AutocompleteInput::ALL_MATCHES);
|
| + AutocompleteInput input(input_cases[i].input, string16::npos,
|
| + ASCIIToUTF16("com"), true, false, true,
|
| + AutocompleteInput::ALL_MATCHES);
|
| EXPECT_EQ(input_cases[i].type, input.type());
|
| }
|
| }
|
| @@ -149,8 +150,8 @@ TEST(AutocompleteInputTest, InputTypeWithDesiredTLD) {
|
| // This tests for a regression where certain input in the omnibox caused us to
|
| // crash. As long as the test completes without crashing, we're fine.
|
| TEST(AutocompleteInputTest, InputCrash) {
|
| - AutocompleteInput input(WideToUTF16(L"\uff65@s"), string16(), true, false,
|
| - true, AutocompleteInput::ALL_MATCHES);
|
| + AutocompleteInput input(WideToUTF16(L"\uff65@s"), string16::npos, string16(),
|
| + true, false, true, AutocompleteInput::ALL_MATCHES);
|
| }
|
|
|
| TEST(AutocompleteInputTest, ParseForEmphasizeComponent) {
|
| @@ -192,11 +193,45 @@ TEST(AutocompleteInputTest, ParseForEmphasizeComponent) {
|
| string16(),
|
| &scheme,
|
| &host);
|
| - AutocompleteInput input(input_cases[i].input, string16(), true, false,
|
| - true, AutocompleteInput::ALL_MATCHES);
|
| + AutocompleteInput input(input_cases[i].input, string16::npos, string16(),
|
| + true, false, true, AutocompleteInput::ALL_MATCHES);
|
| EXPECT_EQ(input_cases[i].scheme.begin, scheme.begin);
|
| EXPECT_EQ(input_cases[i].scheme.len, scheme.len);
|
| EXPECT_EQ(input_cases[i].host.begin, host.begin);
|
| EXPECT_EQ(input_cases[i].host.len, host.len);
|
| }
|
| }
|
| +
|
| +TEST(AutocompleteInputTest, InputTypeWithCursorPosition) {
|
| + struct test_data {
|
| + const string16 input;
|
| + size_t cursor_position;
|
| + const string16 normalized_input;
|
| + size_t normalized_cursor_position;
|
| + } input_cases[] = {
|
| + { ASCIIToUTF16("foo bar"), string16::npos,
|
| + ASCIIToUTF16("foo bar"), string16::npos },
|
| +
|
| + // regular case, no changes.
|
| + { ASCIIToUTF16("foo bar"), 3, ASCIIToUTF16("foo bar"), 3 },
|
| +
|
| + // extra leading space.
|
| + { ASCIIToUTF16(" foo bar"), 3, ASCIIToUTF16("foo bar"), 1 },
|
| + { ASCIIToUTF16(" foo bar"), 3, ASCIIToUTF16("foo bar"), 0 },
|
| + { ASCIIToUTF16(" foo bar "), 2, ASCIIToUTF16("foo bar "), 0 },
|
| +
|
| + // forced query.
|
| + { ASCIIToUTF16("?foo bar"), 2, ASCIIToUTF16("foo bar"), 1 },
|
| + };
|
| +
|
| + for (size_t i = 0; i < ARRAYSIZE_UNSAFE(input_cases); ++i) {
|
| + SCOPED_TRACE(input_cases[i].input);
|
| + AutocompleteInput input(input_cases[i].input,
|
| + input_cases[i].cursor_position,
|
| + string16(), true, false, true,
|
| + AutocompleteInput::ALL_MATCHES);
|
| + EXPECT_EQ(input_cases[i].normalized_input, input.text());
|
| + EXPECT_EQ(input_cases[i].normalized_cursor_position,
|
| + input.cursor_position());
|
| + }
|
| +}
|
|
|