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 <stdio.h> | 5 #include <stdio.h> |
6 | 6 |
7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
8 #include "base/string16.h" | 8 #include "base/string16.h" |
9 #include "base/string_util.h" | 9 #include "base/string_util.h" |
10 #include "base/time.h" | 10 #include "base/time.h" |
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_2, true, false, false)); | 344 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_2, true, false, false)); |
345 ASSERT_EQ(1, browser()->selected_index()); | 345 ASSERT_EQ(1, browser()->selected_index()); |
346 | 346 |
347 browser()->FocusLocationBar(); | 347 browser()->FocusLocationBar(); |
348 | 348 |
349 // Try ctrl-w to close a Tab. | 349 // Try ctrl-w to close a Tab. |
350 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_W, true, false, false)); | 350 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_W, true, false, false)); |
351 ASSERT_NO_FATAL_FAILURE(WaitForTabOpenOrClose(tab_count)); | 351 ASSERT_NO_FATAL_FAILURE(WaitForTabOpenOrClose(tab_count)); |
352 | 352 |
353 // Try ctrl-l to focus location bar. | 353 // Try ctrl-l to focus location bar. |
354 edit_view->SetUserText(L"Hello world"); | 354 edit_view->SetUserText(ASCIIToUTF16("Hello world")); |
355 EXPECT_FALSE(edit_view->IsSelectAll()); | 355 EXPECT_FALSE(edit_view->IsSelectAll()); |
356 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_L, true, false, false)); | 356 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_L, true, false, false)); |
357 EXPECT_TRUE(edit_view->IsSelectAll()); | 357 EXPECT_TRUE(edit_view->IsSelectAll()); |
358 | 358 |
359 // Try editing the location bar text. | 359 // Try editing the location bar text. |
360 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RIGHT, false, false, false)); | 360 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RIGHT, false, false, false)); |
361 EXPECT_FALSE(edit_view->IsSelectAll()); | 361 EXPECT_FALSE(edit_view->IsSelectAll()); |
362 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_S, false, false, false)); | 362 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_S, false, false, false)); |
363 EXPECT_EQ(L"Hello worlds", edit_view->GetText()); | 363 EXPECT_EQ(ASCIIToUTF16("Hello worlds"), edit_view->GetText()); |
364 | 364 |
365 // Try ctrl-x to cut text. | 365 // Try ctrl-x to cut text. |
366 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_LEFT, true, true, false)); | 366 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_LEFT, true, true, false)); |
367 EXPECT_FALSE(edit_view->IsSelectAll()); | 367 EXPECT_FALSE(edit_view->IsSelectAll()); |
368 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_X, true, false, false)); | 368 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_X, true, false, false)); |
369 EXPECT_EQ(L"Hello ", edit_view->GetText()); | 369 EXPECT_EQ(ASCIIToUTF16("Hello "), edit_view->GetText()); |
370 | 370 |
371 #if !defined(OS_CHROMEOS) | 371 #if !defined(OS_CHROMEOS) |
372 // Try alt-f4 to close the browser. | 372 // Try alt-f4 to close the browser. |
373 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( | 373 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( |
374 browser(), ui::VKEY_F4, false, false, true, false, | 374 browser(), ui::VKEY_F4, false, false, true, false, |
375 NotificationType::BROWSER_CLOSED, Source<Browser>(browser()))); | 375 NotificationType::BROWSER_CLOSED, Source<Browser>(browser()))); |
376 #endif | 376 #endif |
377 } | 377 } |
378 | 378 |
379 void PopupAcceleratorsTest() { | 379 void PopupAcceleratorsTest() { |
380 // Create a popup. | 380 // Create a popup. |
381 Browser* popup = CreateBrowserForPopup(browser()->profile()); | 381 Browser* popup = CreateBrowserForPopup(browser()->profile()); |
382 AutocompleteEditView* edit_view = NULL; | 382 AutocompleteEditView* edit_view = NULL; |
383 ASSERT_NO_FATAL_FAILURE( | 383 ASSERT_NO_FATAL_FAILURE( |
384 GetAutocompleteEditViewForBrowser(popup, &edit_view)); | 384 GetAutocompleteEditViewForBrowser(popup, &edit_view)); |
385 popup->FocusLocationBar(); | 385 popup->FocusLocationBar(); |
386 EXPECT_TRUE(edit_view->IsSelectAll()); | 386 EXPECT_TRUE(edit_view->IsSelectAll()); |
387 | 387 |
388 // Try ctrl-w to close the popup. | 388 // Try ctrl-w to close the popup. |
389 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( | 389 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( |
390 popup, ui::VKEY_W, true, false, false, false, | 390 popup, ui::VKEY_W, true, false, false, false, |
391 NotificationType::BROWSER_CLOSED, Source<Browser>(popup))); | 391 NotificationType::BROWSER_CLOSED, Source<Browser>(popup))); |
392 | 392 |
393 // Create another popup. | 393 // Create another popup. |
394 popup = CreateBrowserForPopup(browser()->profile()); | 394 popup = CreateBrowserForPopup(browser()->profile()); |
395 ASSERT_NO_FATAL_FAILURE( | 395 ASSERT_NO_FATAL_FAILURE( |
396 GetAutocompleteEditViewForBrowser(popup, &edit_view)); | 396 GetAutocompleteEditViewForBrowser(popup, &edit_view)); |
397 | 397 |
398 // Set the edit text to "Hello world". | 398 // Set the edit text to "Hello world". |
399 edit_view->SetUserText(L"Hello world"); | 399 edit_view->SetUserText(ASCIIToUTF16("Hello world")); |
400 EXPECT_FALSE(edit_view->IsSelectAll()); | 400 EXPECT_FALSE(edit_view->IsSelectAll()); |
401 popup->FocusLocationBar(); | 401 popup->FocusLocationBar(); |
402 EXPECT_TRUE(edit_view->IsSelectAll()); | 402 EXPECT_TRUE(edit_view->IsSelectAll()); |
403 | 403 |
404 // Try editing the location bar text -- should be disallowed. | 404 // Try editing the location bar text -- should be disallowed. |
405 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_RIGHT, false, | 405 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_RIGHT, false, |
406 false, false)); | 406 false, false)); |
407 EXPECT_FALSE(edit_view->IsSelectAll()); | 407 EXPECT_FALSE(edit_view->IsSelectAll()); |
408 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_S, false, false, | 408 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_S, false, false, |
409 false)); | 409 false)); |
410 EXPECT_EQ(L"Hello world", edit_view->GetText()); | 410 EXPECT_EQ(ASCIIToUTF16("Hello world"), edit_view->GetText()); |
411 | 411 |
412 // Try ctrl-x to cut text -- should be disallowed. | 412 // Try ctrl-x to cut text -- should be disallowed. |
413 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_LEFT, true, true, | 413 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_LEFT, true, true, |
414 false)); | 414 false)); |
415 EXPECT_FALSE(edit_view->IsSelectAll()); | 415 EXPECT_FALSE(edit_view->IsSelectAll()); |
416 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_X, true, false, | 416 ASSERT_NO_FATAL_FAILURE(SendKeyForBrowser(popup, ui::VKEY_X, true, false, |
417 false)); | 417 false)); |
418 EXPECT_EQ(L"Hello world", edit_view->GetText()); | 418 EXPECT_EQ(ASCIIToUTF16("Hello world"), edit_view->GetText()); |
419 | 419 |
420 #if !defined(OS_CHROMEOS) | 420 #if !defined(OS_CHROMEOS) |
421 // Try alt-f4 to close the popup. | 421 // Try alt-f4 to close the popup. |
422 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( | 422 ASSERT_TRUE(ui_test_utils::SendKeyPressAndWait( |
423 popup, ui::VKEY_F4, false, false, true, false, | 423 popup, ui::VKEY_F4, false, false, true, false, |
424 NotificationType::BROWSER_CLOSED, Source<Browser>(popup))); | 424 NotificationType::BROWSER_CLOSED, Source<Browser>(popup))); |
425 #endif | 425 #endif |
426 } | 426 } |
427 | 427 |
428 void BackspaceInKeywordModeTest() { | 428 void BackspaceInKeywordModeTest() { |
429 AutocompleteEditView* edit_view = NULL; | 429 AutocompleteEditView* edit_view = NULL; |
430 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 430 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
431 | 431 |
432 // Trigger keyword hint mode. | 432 // Trigger keyword hint mode. |
433 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchKeywordKeys)); | 433 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchKeywordKeys)); |
434 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 434 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
435 ASSERT_EQ(kSearchKeyword, WideToUTF8(edit_view->model()->keyword())); | 435 ASSERT_EQ(kSearchKeyword, UTF16ToUTF8(edit_view->model()->keyword())); |
436 | 436 |
437 // Trigger keyword mode. | 437 // Trigger keyword mode. |
438 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_TAB, false, false, false)); | 438 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_TAB, false, false, false)); |
439 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 439 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
440 ASSERT_EQ(kSearchKeyword, WideToUTF8(edit_view->model()->keyword())); | 440 ASSERT_EQ(kSearchKeyword, UTF16ToUTF8(edit_view->model()->keyword())); |
441 | 441 |
442 // Backspace without search text should bring back keyword hint mode. | 442 // Backspace without search text should bring back keyword hint mode. |
443 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 443 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
444 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 444 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
445 ASSERT_EQ(kSearchKeyword, WideToUTF8(edit_view->model()->keyword())); | 445 ASSERT_EQ(kSearchKeyword, UTF16ToUTF8(edit_view->model()->keyword())); |
446 | 446 |
447 // Trigger keyword mode again. | 447 // Trigger keyword mode again. |
448 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_TAB, false, false, false)); | 448 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_TAB, false, false, false)); |
449 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 449 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
450 ASSERT_EQ(kSearchKeyword, WideToUTF8(edit_view->model()->keyword())); | 450 ASSERT_EQ(kSearchKeyword, UTF16ToUTF8(edit_view->model()->keyword())); |
451 | 451 |
452 // Input something as search text. | 452 // Input something as search text. |
453 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchTextKeys)); | 453 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchTextKeys)); |
454 | 454 |
455 // Should stay in keyword mode while deleting search text by pressing | 455 // Should stay in keyword mode while deleting search text by pressing |
456 // backspace. | 456 // backspace. |
457 for (size_t i = 0; i < arraysize(kSearchText) - 1; ++i) { | 457 for (size_t i = 0; i < arraysize(kSearchText) - 1; ++i) { |
458 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 458 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
459 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 459 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
460 ASSERT_EQ(kSearchKeyword, WideToUTF8(edit_view->model()->keyword())); | 460 ASSERT_EQ(kSearchKeyword, UTF16ToUTF8(edit_view->model()->keyword())); |
461 } | 461 } |
462 | 462 |
463 // Input something as search text. | 463 // Input something as search text. |
464 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchTextKeys)); | 464 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchTextKeys)); |
465 | 465 |
466 // Move cursor to the beginning of the search text. | 466 // Move cursor to the beginning of the search text. |
467 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_HOME, false, false, false)); | 467 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_HOME, false, false, false)); |
468 // Backspace at the beginning of the search text shall turn off | 468 // Backspace at the beginning of the search text shall turn off |
469 // the keyword mode. | 469 // the keyword mode. |
470 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 470 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
471 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 471 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
472 ASSERT_EQ(std::string(), WideToUTF8(edit_view->model()->keyword())); | 472 ASSERT_EQ(string16(), edit_view->model()->keyword()); |
473 ASSERT_EQ(std::string(kSearchKeyword) + kSearchText, | 473 ASSERT_EQ(std::string(kSearchKeyword) + kSearchText, |
474 WideToUTF8(edit_view->GetText())); | 474 UTF16ToUTF8(edit_view->GetText())); |
475 } | 475 } |
476 | 476 |
477 void EscapeTest() { | 477 void EscapeTest() { |
478 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIHistoryURL)); | 478 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIHistoryURL)); |
479 browser()->FocusLocationBar(); | 479 browser()->FocusLocationBar(); |
480 | 480 |
481 AutocompleteEditView* edit_view = NULL; | 481 AutocompleteEditView* edit_view = NULL; |
482 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 482 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
483 | 483 |
484 std::wstring old_text = edit_view->GetText(); | 484 string16 old_text = edit_view->GetText(); |
485 EXPECT_FALSE(old_text.empty()); | 485 EXPECT_FALSE(old_text.empty()); |
486 EXPECT_TRUE(edit_view->IsSelectAll()); | 486 EXPECT_TRUE(edit_view->IsSelectAll()); |
487 | 487 |
488 // Delete all text in omnibox. | 488 // Delete all text in omnibox. |
489 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 489 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
490 EXPECT_TRUE(edit_view->GetText().empty()); | 490 EXPECT_TRUE(edit_view->GetText().empty()); |
491 | 491 |
492 // Escape shall revert the text in omnibox. | 492 // Escape shall revert the text in omnibox. |
493 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_ESCAPE, false, false, false)); | 493 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_ESCAPE, false, false, false)); |
494 EXPECT_EQ(old_text, edit_view->GetText()); | 494 EXPECT_EQ(old_text, edit_view->GetText()); |
495 EXPECT_TRUE(edit_view->IsSelectAll()); | 495 EXPECT_TRUE(edit_view->IsSelectAll()); |
496 } | 496 } |
497 | 497 |
498 void DesiredTLDTest() { | 498 void DesiredTLDTest() { |
499 AutocompleteEditView* edit_view = NULL; | 499 AutocompleteEditView* edit_view = NULL; |
500 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 500 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
501 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); | 501 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); |
502 ASSERT_TRUE(popup_model); | 502 ASSERT_TRUE(popup_model); |
503 | 503 |
504 // Test ctrl-Enter. | 504 // Test ctrl-Enter. |
505 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kDesiredTLDKeys)); | 505 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kDesiredTLDKeys)); |
506 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); | 506 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); |
507 ASSERT_TRUE(popup_model->IsOpen()); | 507 ASSERT_TRUE(popup_model->IsOpen()); |
508 // ctrl-Enter triggers desired_tld feature, thus www.bar.com shall be opened
. | 508 // ctrl-Enter triggers desired_tld feature, thus www.bar.com shall be |
| 509 // opened. |
509 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, true, false, false)); | 510 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, true, false, false)); |
510 | 511 |
511 GURL url = browser()->GetSelectedTabContents()->GetURL(); | 512 GURL url = browser()->GetSelectedTabContents()->GetURL(); |
512 EXPECT_STREQ(kDesiredTLDHostname, url.host().c_str()); | 513 EXPECT_STREQ(kDesiredTLDHostname, url.host().c_str()); |
513 } | 514 } |
514 | 515 |
515 void AltEnterTest() { | 516 void AltEnterTest() { |
516 AutocompleteEditView* edit_view = NULL; | 517 AutocompleteEditView* edit_view = NULL; |
517 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 518 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
518 | 519 |
519 edit_view->SetUserText(ASCIIToWide(chrome::kChromeUIHistoryURL)); | 520 edit_view->SetUserText(ASCIIToUTF16(chrome::kChromeUIHistoryURL)); |
520 int tab_count = browser()->tab_count(); | 521 int tab_count = browser()->tab_count(); |
521 // alt-Enter opens a new tab. | 522 // alt-Enter opens a new tab. |
522 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, true)); | 523 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, true)); |
523 ASSERT_NO_FATAL_FAILURE(WaitForTabOpenOrClose(tab_count + 1)); | 524 ASSERT_NO_FATAL_FAILURE(WaitForTabOpenOrClose(tab_count + 1)); |
524 } | 525 } |
525 | 526 |
526 void EnterToSearchTest() { | 527 void EnterToSearchTest() { |
527 AutocompleteEditView* edit_view = NULL; | 528 AutocompleteEditView* edit_view = NULL; |
528 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 529 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
529 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); | 530 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); |
(...skipping 12 matching lines...) Expand all Loading... |
542 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, false)); | 543 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, false)); |
543 GURL url = browser()->GetSelectedTabContents()->GetURL(); | 544 GURL url = browser()->GetSelectedTabContents()->GetURL(); |
544 EXPECT_STREQ(kSearchTextURL, url.spec().c_str()); | 545 EXPECT_STREQ(kSearchTextURL, url.spec().c_str()); |
545 | 546 |
546 // Test that entering a single character then Enter performs a search. | 547 // Test that entering a single character then Enter performs a search. |
547 browser()->FocusLocationBar(); | 548 browser()->FocusLocationBar(); |
548 EXPECT_TRUE(edit_view->IsSelectAll()); | 549 EXPECT_TRUE(edit_view->IsSelectAll()); |
549 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchSingleCharKeys)); | 550 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchSingleCharKeys)); |
550 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); | 551 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); |
551 ASSERT_TRUE(popup_model->IsOpen()); | 552 ASSERT_TRUE(popup_model->IsOpen()); |
552 EXPECT_EQ(kSearchSingleChar, WideToUTF8(edit_view->GetText())); | 553 EXPECT_EQ(kSearchSingleChar, UTF16ToUTF8(edit_view->GetText())); |
553 | 554 |
554 // Check if the default match result is Search Primary Provider. | 555 // Check if the default match result is Search Primary Provider. |
555 ASSERT_EQ(AutocompleteMatch::SEARCH_WHAT_YOU_TYPED, | 556 ASSERT_EQ(AutocompleteMatch::SEARCH_WHAT_YOU_TYPED, |
556 popup_model->result().default_match()->type); | 557 popup_model->result().default_match()->type); |
557 | 558 |
558 // Open the default match. | 559 // Open the default match. |
559 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, false)); | 560 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_RETURN, false, false, false)); |
560 url = browser()->GetSelectedTabContents()->GetURL(); | 561 url = browser()->GetSelectedTabContents()->GetURL(); |
561 EXPECT_STREQ(kSearchSingleCharURL, url.spec().c_str()); | 562 EXPECT_STREQ(kSearchSingleCharURL, url.spec().c_str()); |
562 } | 563 } |
563 | 564 |
564 void EscapeToDefaultMatchTest() { | 565 void EscapeToDefaultMatchTest() { |
565 AutocompleteEditView* edit_view = NULL; | 566 AutocompleteEditView* edit_view = NULL; |
566 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 567 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
567 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); | 568 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); |
568 ASSERT_TRUE(popup_model); | 569 ASSERT_TRUE(popup_model); |
569 | 570 |
570 // Input something to trigger inline autocomplete. | 571 // Input something to trigger inline autocomplete. |
571 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kInlineAutocompleteTextKeys)); | 572 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kInlineAutocompleteTextKeys)); |
572 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); | 573 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); |
573 ASSERT_TRUE(popup_model->IsOpen()); | 574 ASSERT_TRUE(popup_model->IsOpen()); |
574 | 575 |
575 std::wstring old_text = edit_view->GetText(); | 576 string16 old_text = edit_view->GetText(); |
576 | 577 |
577 // Make sure inline autocomplete is triggerred. | 578 // Make sure inline autocomplete is triggerred. |
578 EXPECT_GT(old_text.length(), arraysize(kInlineAutocompleteText) - 1); | 579 EXPECT_GT(old_text.length(), arraysize(kInlineAutocompleteText) - 1); |
579 | 580 |
580 size_t old_selected_line = popup_model->selected_line(); | 581 size_t old_selected_line = popup_model->selected_line(); |
581 EXPECT_EQ(0U, old_selected_line); | 582 EXPECT_EQ(0U, old_selected_line); |
582 | 583 |
583 // Move to another line with different text. | 584 // Move to another line with different text. |
584 size_t size = popup_model->result().size(); | 585 size_t size = popup_model->result().size(); |
585 while (popup_model->selected_line() < size - 1) { | 586 while (popup_model->selected_line() < size - 1) { |
(...skipping 11 matching lines...) Expand all Loading... |
597 EXPECT_EQ(old_selected_line, popup_model->selected_line()); | 598 EXPECT_EQ(old_selected_line, popup_model->selected_line()); |
598 } | 599 } |
599 | 600 |
600 void BasicTextOperationsTest() { | 601 void BasicTextOperationsTest() { |
601 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kAboutBlankURL)); | 602 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kAboutBlankURL)); |
602 browser()->FocusLocationBar(); | 603 browser()->FocusLocationBar(); |
603 | 604 |
604 AutocompleteEditView* edit_view = NULL; | 605 AutocompleteEditView* edit_view = NULL; |
605 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 606 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
606 | 607 |
607 std::wstring old_text = edit_view->GetText(); | 608 string16 old_text = edit_view->GetText(); |
608 EXPECT_EQ(UTF8ToWide(chrome::kAboutBlankURL), old_text); | 609 EXPECT_EQ(UTF8ToUTF16(chrome::kAboutBlankURL), old_text); |
609 EXPECT_TRUE(edit_view->IsSelectAll()); | 610 EXPECT_TRUE(edit_view->IsSelectAll()); |
610 | 611 |
611 std::wstring::size_type start, end; | 612 string16::size_type start, end; |
612 edit_view->GetSelectionBounds(&start, &end); | 613 edit_view->GetSelectionBounds(&start, &end); |
613 EXPECT_EQ(0U, start); | 614 EXPECT_EQ(0U, start); |
614 EXPECT_EQ(old_text.size(), end); | 615 EXPECT_EQ(old_text.size(), end); |
615 | 616 |
616 // Move the cursor to the end. | 617 // Move the cursor to the end. |
617 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); | 618 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); |
618 EXPECT_FALSE(edit_view->IsSelectAll()); | 619 EXPECT_FALSE(edit_view->IsSelectAll()); |
619 | 620 |
620 // Make sure the cursor is placed correctly. | 621 // Make sure the cursor is placed correctly. |
621 edit_view->GetSelectionBounds(&start, &end); | 622 edit_view->GetSelectionBounds(&start, &end); |
622 EXPECT_EQ(old_text.size(), start); | 623 EXPECT_EQ(old_text.size(), start); |
623 EXPECT_EQ(old_text.size(), end); | 624 EXPECT_EQ(old_text.size(), end); |
624 | 625 |
625 // Insert one character at the end. Make sure we won't insert | 626 // Insert one character at the end. Make sure we won't insert |
626 // anything after the special ZWS mark used in gtk implementation. | 627 // anything after the special ZWS mark used in gtk implementation. |
627 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_A, false, false, false)); | 628 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_A, false, false, false)); |
628 EXPECT_EQ(old_text + L"a", edit_view->GetText()); | 629 EXPECT_EQ(old_text + char16('a'), edit_view->GetText()); |
629 | 630 |
630 // Delete one character from the end. Make sure we won't delete the special | 631 // Delete one character from the end. Make sure we won't delete the special |
631 // ZWS mark used in gtk implementation. | 632 // ZWS mark used in gtk implementation. |
632 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 633 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
633 EXPECT_EQ(old_text, edit_view->GetText()); | 634 EXPECT_EQ(old_text, edit_view->GetText()); |
634 | 635 |
635 edit_view->SelectAll(true); | 636 edit_view->SelectAll(true); |
636 EXPECT_TRUE(edit_view->IsSelectAll()); | 637 EXPECT_TRUE(edit_view->IsSelectAll()); |
637 edit_view->GetSelectionBounds(&start, &end); | 638 edit_view->GetSelectionBounds(&start, &end); |
638 EXPECT_EQ(0U, start); | 639 EXPECT_EQ(0U, start); |
(...skipping 13 matching lines...) Expand all Loading... |
652 EXPECT_EQ(old_text, edit_view->GetText()); | 653 EXPECT_EQ(old_text, edit_view->GetText()); |
653 edit_view->GetSelectionBounds(&start, &end); | 654 edit_view->GetSelectionBounds(&start, &end); |
654 EXPECT_EQ(old_text.size(), start); | 655 EXPECT_EQ(old_text.size(), start); |
655 EXPECT_EQ(old_text.size(), end); | 656 EXPECT_EQ(old_text.size(), end); |
656 } | 657 } |
657 | 658 |
658 void AcceptKeywordBySpaceTest() { | 659 void AcceptKeywordBySpaceTest() { |
659 AutocompleteEditView* edit_view = NULL; | 660 AutocompleteEditView* edit_view = NULL; |
660 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 661 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
661 | 662 |
662 std::wstring text = UTF8ToWide(kSearchKeyword); | 663 string16 text = UTF8ToUTF16(kSearchKeyword); |
663 | 664 |
664 // Trigger keyword hint mode. | 665 // Trigger keyword hint mode. |
665 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchKeywordKeys)); | 666 ASSERT_NO_FATAL_FAILURE(SendKeySequence(kSearchKeywordKeys)); |
666 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 667 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
667 ASSERT_EQ(text, edit_view->model()->keyword()); | 668 ASSERT_EQ(text, edit_view->model()->keyword()); |
668 ASSERT_EQ(text, edit_view->GetText()); | 669 ASSERT_EQ(text, edit_view->GetText()); |
669 | 670 |
670 // Trigger keyword mode by space. | 671 // Trigger keyword mode by space. |
671 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); | 672 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); |
672 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 673 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
673 ASSERT_EQ(text, edit_view->model()->keyword()); | 674 ASSERT_EQ(text, edit_view->model()->keyword()); |
674 ASSERT_TRUE(edit_view->GetText().empty()); | 675 ASSERT_TRUE(edit_view->GetText().empty()); |
675 | 676 |
676 // Revert to keyword hint mode. | 677 // Revert to keyword hint mode. |
677 edit_view->model()->ClearKeyword(std::wstring()); | 678 edit_view->model()->ClearKeyword(string16()); |
678 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 679 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
679 ASSERT_EQ(text, edit_view->model()->keyword()); | 680 ASSERT_EQ(text, edit_view->model()->keyword()); |
680 ASSERT_EQ(text, edit_view->GetText()); | 681 ASSERT_EQ(text, edit_view->GetText()); |
681 | 682 |
682 // Keyword should also be accepted by typing an ideographic space. | 683 // Keyword should also be accepted by typing an ideographic space. |
683 edit_view->OnBeforePossibleChange(); | 684 edit_view->OnBeforePossibleChange(); |
684 edit_view->SetWindowTextAndCaretPos(text + L"\x3000", text.length() + 1); | 685 edit_view->SetWindowTextAndCaretPos(text + WideToUTF16(L"\x3000"), |
| 686 text.length() + 1); |
685 edit_view->OnAfterPossibleChange(); | 687 edit_view->OnAfterPossibleChange(); |
686 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 688 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
687 ASSERT_EQ(text, edit_view->model()->keyword()); | 689 ASSERT_EQ(text, edit_view->model()->keyword()); |
688 ASSERT_TRUE(edit_view->GetText().empty()); | 690 ASSERT_TRUE(edit_view->GetText().empty()); |
689 | 691 |
690 // Revert to keyword hint mode. | 692 // Revert to keyword hint mode. |
691 edit_view->model()->ClearKeyword(std::wstring()); | 693 edit_view->model()->ClearKeyword(string16()); |
692 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 694 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
693 ASSERT_EQ(text, edit_view->model()->keyword()); | 695 ASSERT_EQ(text, edit_view->model()->keyword()); |
694 ASSERT_EQ(text, edit_view->GetText()); | 696 ASSERT_EQ(text, edit_view->GetText()); |
695 | 697 |
696 // Keyword shouldn't be accepted by pasting. | 698 // Keyword shouldn't be accepted by pasting. |
697 // Simulate pasting a whitespace to the end of content. | 699 // Simulate pasting a whitespace to the end of content. |
698 edit_view->OnBeforePossibleChange(); | 700 edit_view->OnBeforePossibleChange(); |
699 edit_view->model()->on_paste(); | 701 edit_view->model()->on_paste(); |
700 edit_view->SetWindowTextAndCaretPos(text + L" ", text.length() + 1); | 702 edit_view->SetWindowTextAndCaretPos(text + char16(' '), text.length() + 1); |
701 edit_view->OnAfterPossibleChange(); | 703 edit_view->OnAfterPossibleChange(); |
702 // Should be still in keyword hint mode. | 704 // Should be still in keyword hint mode. |
703 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 705 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
704 ASSERT_EQ(text, edit_view->model()->keyword()); | 706 ASSERT_EQ(text, edit_view->model()->keyword()); |
705 ASSERT_EQ(text + L" ", edit_view->GetText()); | 707 ASSERT_EQ(text + char16(' '), edit_view->GetText()); |
706 | 708 |
707 // Keyword shouldn't be accepted by pressing space with a trailing | 709 // Keyword shouldn't be accepted by pressing space with a trailing |
708 // whitespace. | 710 // whitespace. |
709 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); | 711 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); |
710 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 712 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
711 ASSERT_EQ(text, edit_view->model()->keyword()); | 713 ASSERT_EQ(text, edit_view->model()->keyword()); |
712 ASSERT_EQ(text + L" ", edit_view->GetText()); | 714 ASSERT_EQ(text + ASCIIToUTF16(" "), edit_view->GetText()); |
713 | 715 |
714 // Keyword shouldn't be accepted by deleting the trailing space. | 716 // Keyword shouldn't be accepted by deleting the trailing space. |
715 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 717 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
716 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 718 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
717 ASSERT_EQ(text, edit_view->model()->keyword()); | 719 ASSERT_EQ(text, edit_view->model()->keyword()); |
718 ASSERT_EQ(text + L" ", edit_view->GetText()); | 720 ASSERT_EQ(text + char16(' '), edit_view->GetText()); |
719 | 721 |
720 // Keyword shouldn't be accepted by pressing space in the middle | 722 // Keyword shouldn't be accepted by pressing space in the middle |
721 // of content. | 723 // of content. |
722 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_LEFT, false, false, false)); | 724 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_LEFT, false, false, false)); |
723 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); | 725 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); |
724 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 726 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
725 ASSERT_EQ(text, edit_view->model()->keyword()); | 727 ASSERT_EQ(text, edit_view->model()->keyword()); |
726 ASSERT_EQ(text + L" ", edit_view->GetText()); | 728 ASSERT_EQ(text + ASCIIToUTF16(" "), edit_view->GetText()); |
727 | 729 |
728 // Keyword shouldn't be accepted by pasting "foo bar". | 730 // Keyword shouldn't be accepted by pasting "foo bar". |
729 edit_view->SetUserText(std::wstring()); | 731 edit_view->SetUserText(string16()); |
730 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 732 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
731 ASSERT_TRUE(edit_view->model()->keyword().empty()); | 733 ASSERT_TRUE(edit_view->model()->keyword().empty()); |
732 | 734 |
733 edit_view->OnBeforePossibleChange(); | 735 edit_view->OnBeforePossibleChange(); |
734 edit_view->model()->on_paste(); | 736 edit_view->model()->on_paste(); |
735 edit_view->SetWindowTextAndCaretPos(text + L" bar", text.length() + 4); | 737 edit_view->SetWindowTextAndCaretPos(text + ASCIIToUTF16(" bar"), |
| 738 text.length() + 4); |
736 edit_view->OnAfterPossibleChange(); | 739 edit_view->OnAfterPossibleChange(); |
737 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); | 740 ASSERT_FALSE(edit_view->model()->is_keyword_hint()); |
738 ASSERT_TRUE(edit_view->model()->keyword().empty()); | 741 ASSERT_TRUE(edit_view->model()->keyword().empty()); |
739 ASSERT_EQ(text + L" bar", edit_view->GetText()); | 742 ASSERT_EQ(text + ASCIIToUTF16(" bar"), edit_view->GetText()); |
740 | 743 |
741 // Keyword shouldn't be accepted by pressing space with a selected range. | 744 // Keyword shouldn't be accepted by pressing space with a selected range. |
742 edit_view->OnBeforePossibleChange(); | 745 edit_view->OnBeforePossibleChange(); |
743 edit_view->OnInlineAutocompleteTextMaybeChanged( | 746 edit_view->OnInlineAutocompleteTextMaybeChanged( |
744 text + L" ", text.length()); | 747 text + ASCIIToUTF16(" "), text.length()); |
745 edit_view->OnAfterPossibleChange(); | 748 edit_view->OnAfterPossibleChange(); |
746 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 749 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
747 ASSERT_EQ(text, edit_view->model()->keyword()); | 750 ASSERT_EQ(text, edit_view->model()->keyword()); |
748 ASSERT_EQ(text + L" ", edit_view->GetText()); | 751 ASSERT_EQ(text + ASCIIToUTF16(" "), edit_view->GetText()); |
749 | 752 |
750 std::wstring::size_type start, end; | 753 string16::size_type start, end; |
751 edit_view->GetSelectionBounds(&start, &end); | 754 edit_view->GetSelectionBounds(&start, &end); |
752 ASSERT_NE(start, end); | 755 ASSERT_NE(start, end); |
753 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); | 756 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_SPACE, false, false, false)); |
754 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); | 757 ASSERT_TRUE(edit_view->model()->is_keyword_hint()); |
755 ASSERT_EQ(text, edit_view->model()->keyword()); | 758 ASSERT_EQ(text, edit_view->model()->keyword()); |
756 ASSERT_EQ(text + L" ", edit_view->GetText()); | 759 ASSERT_EQ(text + ASCIIToUTF16(" "), edit_view->GetText()); |
757 | 760 |
758 edit_view->GetSelectionBounds(&start, &end); | 761 edit_view->GetSelectionBounds(&start, &end); |
759 ASSERT_EQ(start, end); | 762 ASSERT_EQ(start, end); |
760 } | 763 } |
761 | 764 |
762 }; | 765 }; |
763 | 766 |
764 // Test if ctrl-* accelerators are workable in omnibox. | 767 // Test if ctrl-* accelerators are workable in omnibox. |
765 // See http://crbug.com/19193: omnibox blocks ctrl-* commands | 768 // See http://crbug.com/19193: omnibox blocks ctrl-* commands |
766 // | 769 // |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
816 // TODO(oshima): enable these tests for views-implmentation when | 819 // TODO(oshima): enable these tests for views-implmentation when |
817 // these featuers are supported. | 820 // these featuers are supported. |
818 | 821 |
819 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, UndoRedoLinux) { | 822 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, UndoRedoLinux) { |
820 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kAboutBlankURL)); | 823 ui_test_utils::NavigateToURL(browser(), GURL(chrome::kAboutBlankURL)); |
821 browser()->FocusLocationBar(); | 824 browser()->FocusLocationBar(); |
822 | 825 |
823 AutocompleteEditView* edit_view = NULL; | 826 AutocompleteEditView* edit_view = NULL; |
824 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 827 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
825 | 828 |
826 std::wstring old_text = edit_view->GetText(); | 829 string16 old_text = edit_view->GetText(); |
827 EXPECT_EQ(UTF8ToWide(chrome::kAboutBlankURL), old_text); | 830 EXPECT_EQ(UTF8ToUTF16(chrome::kAboutBlankURL), old_text); |
828 EXPECT_TRUE(edit_view->IsSelectAll()); | 831 EXPECT_TRUE(edit_view->IsSelectAll()); |
829 | 832 |
830 // Undo should clear the omnibox. | 833 // Undo should clear the omnibox. |
831 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); | 834 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); |
832 EXPECT_TRUE(edit_view->GetText().empty()); | 835 EXPECT_TRUE(edit_view->GetText().empty()); |
833 | 836 |
834 // Nothing should happen if undo again. | 837 // Nothing should happen if undo again. |
835 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); | 838 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); |
836 EXPECT_TRUE(edit_view->GetText().empty()); | 839 EXPECT_TRUE(edit_view->GetText().empty()); |
837 | 840 |
838 // Redo should restore the original text. | 841 // Redo should restore the original text. |
839 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, true, false)); | 842 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, true, false)); |
840 EXPECT_EQ(old_text, edit_view->GetText()); | 843 EXPECT_EQ(old_text, edit_view->GetText()); |
841 | 844 |
842 // Looks like the undo manager doesn't support restoring selection. | 845 // Looks like the undo manager doesn't support restoring selection. |
843 EXPECT_FALSE(edit_view->IsSelectAll()); | 846 EXPECT_FALSE(edit_view->IsSelectAll()); |
844 | 847 |
845 // The cursor should be at the end. | 848 // The cursor should be at the end. |
846 std::wstring::size_type start, end; | 849 string16::size_type start, end; |
847 edit_view->GetSelectionBounds(&start, &end); | 850 edit_view->GetSelectionBounds(&start, &end); |
848 EXPECT_EQ(old_text.size(), start); | 851 EXPECT_EQ(old_text.size(), start); |
849 EXPECT_EQ(old_text.size(), end); | 852 EXPECT_EQ(old_text.size(), end); |
850 | 853 |
851 // Delete two characters. | 854 // Delete two characters. |
852 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 855 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
853 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 856 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
854 EXPECT_EQ(old_text.substr(0, old_text.size() - 2), edit_view->GetText()); | 857 EXPECT_EQ(old_text.substr(0, old_text.size() - 2), edit_view->GetText()); |
855 | 858 |
856 // Undo delete. | 859 // Undo delete. |
(...skipping 19 matching lines...) Expand all Loading... |
876 | 879 |
877 // Undo again. | 880 // Undo again. |
878 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); | 881 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_Z, true, false, false)); |
879 EXPECT_TRUE(edit_view->GetText().empty()); | 882 EXPECT_TRUE(edit_view->GetText().empty()); |
880 } | 883 } |
881 | 884 |
882 // See http://crbug.com/63860 | 885 // See http://crbug.com/63860 |
883 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, PrimarySelection) { | 886 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, PrimarySelection) { |
884 AutocompleteEditView* edit_view = NULL; | 887 AutocompleteEditView* edit_view = NULL; |
885 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 888 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
886 edit_view->SetUserText(L"Hello world"); | 889 edit_view->SetUserText(ASCIIToUTF16("Hello world")); |
887 EXPECT_FALSE(edit_view->IsSelectAll()); | 890 EXPECT_FALSE(edit_view->IsSelectAll()); |
888 | 891 |
889 // Move the cursor to the end. | 892 // Move the cursor to the end. |
890 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); | 893 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); |
891 | 894 |
892 // Select all text by pressing Shift+Home | 895 // Select all text by pressing Shift+Home |
893 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_HOME, false, true, false)); | 896 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_HOME, false, true, false)); |
894 EXPECT_TRUE(edit_view->IsSelectAll()); | 897 EXPECT_TRUE(edit_view->IsSelectAll()); |
895 | 898 |
896 // The selected content should be saved to the PRIMARY clipboard. | 899 // The selected content should be saved to the PRIMARY clipboard. |
897 EXPECT_EQ("Hello world", GetPrimarySelectionText()); | 900 EXPECT_EQ("Hello world", GetPrimarySelectionText()); |
898 | 901 |
899 // Move the cursor to the end. | 902 // Move the cursor to the end. |
900 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); | 903 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); |
901 EXPECT_FALSE(edit_view->IsSelectAll()); | 904 EXPECT_FALSE(edit_view->IsSelectAll()); |
902 | 905 |
903 // The content in the PRIMARY clipboard should not be cleared. | 906 // The content in the PRIMARY clipboard should not be cleared. |
904 EXPECT_EQ("Hello world", GetPrimarySelectionText()); | 907 EXPECT_EQ("Hello world", GetPrimarySelectionText()); |
905 } | 908 } |
906 | 909 |
907 // See http://crosbug.com/10306 | 910 // See http://crosbug.com/10306 |
908 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, | 911 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, |
909 BackspaceDeleteHalfWidthKatakana) { | 912 BackspaceDeleteHalfWidthKatakana) { |
910 AutocompleteEditView* edit_view = NULL; | 913 AutocompleteEditView* edit_view = NULL; |
911 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 914 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
912 // Insert text: ダ | 915 // Insert text: ダ |
913 edit_view->SetUserText(UTF8ToWide("\357\276\200\357\276\236")); | 916 edit_view->SetUserText(UTF8ToUTF16("\357\276\200\357\276\236")); |
914 | 917 |
915 // Move the cursor to the end. | 918 // Move the cursor to the end. |
916 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); | 919 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_END, false, false, false)); |
917 | 920 |
918 // Backspace should delete one character. | 921 // Backspace should delete one character. |
919 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); | 922 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_BACK, false, false, false)); |
920 EXPECT_EQ(UTF8ToWide("\357\276\200"), edit_view->GetText()); | 923 EXPECT_EQ(UTF8ToUTF16("\357\276\200"), edit_view->GetText()); |
921 } | 924 } |
922 | 925 |
923 // http://crbug.com/12316 | 926 // http://crbug.com/12316 |
924 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, PasteReplacingAll) { | 927 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewTest, PasteReplacingAll) { |
925 AutocompleteEditView* edit_view = NULL; | 928 AutocompleteEditView* edit_view = NULL; |
926 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); | 929 ASSERT_NO_FATAL_FAILURE(GetAutocompleteEditView(&edit_view)); |
927 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); | 930 AutocompletePopupModel* popup_model = edit_view->model()->popup_model(); |
928 ASSERT_TRUE(popup_model); | 931 ASSERT_TRUE(popup_model); |
929 | 932 |
930 SetClipboardText(kSearchText); | 933 SetClipboardText(kSearchText); |
931 | 934 |
932 // Paste text. | 935 // Paste text. |
933 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_V, true, false, false)); | 936 ASSERT_NO_FATAL_FAILURE(SendKey(ui::VKEY_V, true, false, false)); |
934 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); | 937 ASSERT_NO_FATAL_FAILURE(WaitForAutocompleteControllerDone()); |
935 ASSERT_TRUE(popup_model->IsOpen()); | 938 ASSERT_TRUE(popup_model->IsOpen()); |
936 | 939 |
937 // Inline autocomplete shouldn't be triggered. | 940 // Inline autocomplete shouldn't be triggered. |
938 ASSERT_EQ(L"abc", edit_view->GetText()); | 941 ASSERT_EQ(ASCIIToUTF16("abc"), edit_view->GetText()); |
939 } | 942 } |
940 #endif | 943 #endif |
941 | 944 |
942 #if defined(TOOLKIT_VIEWS) | 945 #if defined(TOOLKIT_VIEWS) |
943 class AutocompleteEditViewViewsTest : public AutocompleteEditViewTest { | 946 class AutocompleteEditViewViewsTest : public AutocompleteEditViewTest { |
944 public: | 947 public: |
945 AutocompleteEditViewViewsTest() { | 948 AutocompleteEditViewViewsTest() { |
946 views::NativeTextfieldViews::SetEnableTextfieldViews(true); | 949 views::NativeTextfieldViews::SetEnableTextfieldViews(true); |
947 } | 950 } |
948 }; | 951 }; |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
982 | 985 |
983 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewViewsTest, BasicTextOperations) { | 986 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewViewsTest, BasicTextOperations) { |
984 BasicTextOperationsTest(); | 987 BasicTextOperationsTest(); |
985 } | 988 } |
986 | 989 |
987 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewViewsTest, AcceptKeywordBySpace) { | 990 IN_PROC_BROWSER_TEST_F(AutocompleteEditViewViewsTest, AcceptKeywordBySpace) { |
988 AcceptKeywordBySpaceTest(); | 991 AcceptKeywordBySpaceTest(); |
989 } | 992 } |
990 | 993 |
991 #endif | 994 #endif |
OLD | NEW |