Index: chrome/browser/ui/views/find_bar_host_interactive_uitest.cc |
diff --git a/chrome/browser/ui/views/find_bar_host_interactive_uitest.cc b/chrome/browser/ui/views/find_bar_host_interactive_uitest.cc |
deleted file mode 100644 |
index 904fec606817c594ae58708904fb07bedd979a3f..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/views/find_bar_host_interactive_uitest.cc |
+++ /dev/null |
@@ -1,444 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "base/strings/string_util.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "chrome/browser/chrome_notification_types.h" |
-#include "chrome/browser/ui/browser.h" |
-#include "chrome/browser/ui/browser_commands.h" |
-#include "chrome/browser/ui/browser_tabstrip.h" |
-#include "chrome/browser/ui/find_bar/find_bar_controller.h" |
-#include "chrome/browser/ui/find_bar/find_notification_details.h" |
-#include "chrome/browser/ui/tabs/tab_strip_model.h" |
-#include "chrome/browser/ui/view_ids.h" |
-#include "chrome/browser/ui/views/find_bar_host.h" |
-#include "chrome/browser/ui/views/frame/browser_view.h" |
-#include "chrome/test/base/in_process_browser_test.h" |
-#include "chrome/test/base/interactive_test_utils.h" |
-#include "chrome/test/base/ui_test_utils.h" |
-#include "content/public/browser/notification_service.h" |
-#include "content/public/browser/web_contents.h" |
-#include "net/test/spawned_test_server/spawned_test_server.h" |
-#include "ui/base/clipboard/clipboard.h" |
-#include "ui/events/keycodes/keyboard_codes.h" |
-#include "ui/views/focus/focus_manager.h" |
-#include "ui/views/view.h" |
- |
-using base::ASCIIToUTF16; |
-using content::WebContents; |
- |
-namespace { |
- |
-static const char kSimplePage[] = "files/find_in_page/simple.html"; |
- |
-class FindInPageTest : public InProcessBrowserTest { |
- public: |
- FindInPageTest() { |
- FindBarHost::disable_animations_during_testing_ = true; |
- } |
- |
- base::string16 GetFindBarText() { |
- FindBar* find_bar = browser()->GetFindBarController()->find_bar(); |
- return find_bar->GetFindText(); |
- } |
- |
- base::string16 GetFindBarSelectedText() { |
- FindBarTesting* find_bar = |
- browser()->GetFindBarController()->find_bar()->GetFindBarTesting(); |
- return find_bar->GetFindSelectedText(); |
- } |
- |
- private: |
- DISALLOW_COPY_AND_ASSIGN(FindInPageTest); |
-}; |
- |
-} // namespace |
- |
-// Flaky because the test server fails to start? See: http://crbug.com/96594. |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, CrashEscHandlers) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- // First we navigate to our test page (tab A). |
- GURL url = test_server()->GetURL(kSimplePage); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- chrome::Find(browser()); |
- |
- // Open another tab (tab B). |
- chrome::AddSelectedTabWithURL(browser(), url, ui::PAGE_TRANSITION_TYPED); |
- |
- chrome::Find(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- |
- // Select tab A. |
- browser()->tab_strip_model()->ActivateTabAt(0, true); |
- |
- // Close tab B. |
- browser()->tab_strip_model()->CloseWebContentsAt(1, |
- TabStripModel::CLOSE_NONE); |
- |
- // Click on the location bar so that Find box loses focus. |
- ASSERT_NO_FATAL_FAILURE(ui_test_utils::ClickOnView(browser(), |
- VIEW_ID_OMNIBOX)); |
- // Check the location bar is focused. |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
- |
- // This used to crash until bug 1303709 was fixed. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_ESCAPE, false, false, false, false)); |
-} |
- |
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA) |
-// TODO(erg): linux_aura bringup: http://crbug.com/163931 |
-#define MAYBE_FocusRestore DISABLED_FocusRestore |
-#else |
-#define MAYBE_FocusRestore FocusRestore |
-#endif |
- |
-// Flaky because the test server fails to start? See: http://crbug.com/96594. |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, MAYBE_FocusRestore) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- GURL url = test_server()->GetURL("title1.html"); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- // Focus the location bar, open and close the find-in-page, focus should |
- // return to the location bar. |
- chrome::FocusLocationBar(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
- // Ensure the creation of the find bar controller. |
- browser()->GetFindBarController()->Show(); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- browser()->GetFindBarController()->EndFindSession( |
- FindBarController::kKeepSelectionOnPage, |
- FindBarController::kKeepResultsInFindBox); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
- |
- // Focus the location bar, find something on the page, close the find box, |
- // focus should go to the page. |
- chrome::FocusLocationBar(browser()); |
- chrome::Find(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- ui_test_utils::FindInPage( |
- browser()->tab_strip_model()->GetActiveWebContents(), |
- ASCIIToUTF16("a"), true, false, NULL, NULL); |
- browser()->GetFindBarController()->EndFindSession( |
- FindBarController::kKeepSelectionOnPage, |
- FindBarController::kKeepResultsInFindBox); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_TAB_CONTAINER)); |
- |
- // Focus the location bar, open and close the find box, focus should return to |
- // the location bar (same as before, just checking that http://crbug.com/23599 |
- // is fixed). |
- chrome::FocusLocationBar(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
- browser()->GetFindBarController()->Show(); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- browser()->GetFindBarController()->EndFindSession( |
- FindBarController::kKeepSelectionOnPage, |
- FindBarController::kKeepResultsInFindBox); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
-} |
- |
- |
-// TODO(phajdan.jr): Disabling due to possible timing issues on XP |
-// interactive_ui_tests. |
-// http://crbug.com/311363 |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, DISABLED_SelectionRestoreOnTabSwitch) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- // Make sure Chrome is in the foreground, otherwise sending input |
- // won't do anything and the test will hang. |
- ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); |
- |
- // First we navigate to any page in the current tab (tab A). |
- GURL url = test_server()->GetURL(kSimplePage); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- // Show the Find bar. |
- browser()->GetFindBarController()->Show(); |
- |
- // Search for "abc". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_A, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_B, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_C, false, false, false, false)); |
- EXPECT_EQ(ASCIIToUTF16("abc"), GetFindBarText()); |
- |
- // Select "bc". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_LEFT, false, true, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_LEFT, false, true, false, false)); |
- EXPECT_EQ(ASCIIToUTF16("bc"), GetFindBarSelectedText()); |
- |
- // Open another tab (tab B). |
- content::WindowedNotificationObserver observer( |
- content::NOTIFICATION_LOAD_STOP, |
- content::NotificationService::AllSources()); |
- chrome::AddSelectedTabWithURL(browser(), url, ui::PAGE_TRANSITION_TYPED); |
- observer.Wait(); |
- |
- // Show the Find bar. |
- browser()->GetFindBarController()->Show(); |
- |
- // Search for "def". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_D, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_E, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_F, false, false, false, false)); |
- EXPECT_EQ(ASCIIToUTF16("def"), GetFindBarText()); |
- |
- // Select "de". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_HOME, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_RIGHT, false, true, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_RIGHT, false, true, false, false)); |
- EXPECT_EQ(ASCIIToUTF16("de"), GetFindBarSelectedText()); |
- |
- // Select tab A. Find bar should select "bc". |
- browser()->tab_strip_model()->ActivateTabAt(0, true); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- EXPECT_EQ(ASCIIToUTF16("bc"), GetFindBarSelectedText()); |
- |
- // Select tab B. Find bar should select "de". |
- browser()->tab_strip_model()->ActivateTabAt(1, true); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- EXPECT_EQ(ASCIIToUTF16("de"), GetFindBarSelectedText()); |
-} |
- |
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA) |
-// TODO(erg): linux_aura bringup: http://crbug.com/163931 |
-#define MAYBE_FocusRestoreOnTabSwitch DISABLED_FocusRestoreOnTabSwitch |
-#else |
-#define MAYBE_FocusRestoreOnTabSwitch FocusRestoreOnTabSwitch |
-#endif |
- |
-// Flaky because the test server fails to start? See: http://crbug.com/96594. |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, MAYBE_FocusRestoreOnTabSwitch) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- // First we navigate to our test page (tab A). |
- GURL url = test_server()->GetURL(kSimplePage); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- chrome::Find(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- |
- // Search for 'a'. |
- ui_test_utils::FindInPage( |
- browser()->tab_strip_model()->GetActiveWebContents(), |
- ASCIIToUTF16("a"), true, false, NULL, NULL); |
- EXPECT_EQ(ASCIIToUTF16("a"), GetFindBarSelectedText()); |
- |
- // Open another tab (tab B). |
- content::WindowedNotificationObserver observer( |
- content::NOTIFICATION_LOAD_STOP, |
- content::NotificationService::AllSources()); |
- chrome::AddSelectedTabWithURL(browser(), url, ui::PAGE_TRANSITION_TYPED); |
- observer.Wait(); |
- |
- // Make sure Find box is open. |
- chrome::Find(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- |
- // Search for 'b'. |
- ui_test_utils::FindInPage( |
- browser()->tab_strip_model()->GetActiveWebContents(), |
- ASCIIToUTF16("b"), true, false, NULL, NULL); |
- EXPECT_EQ(ASCIIToUTF16("b"), GetFindBarSelectedText()); |
- |
- // Set focus away from the Find bar (to the Location bar). |
- chrome::FocusLocationBar(browser()); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
- |
- // Select tab A. Find bar should get focus. |
- browser()->tab_strip_model()->ActivateTabAt(0, true); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- EXPECT_EQ(ASCIIToUTF16("a"), GetFindBarSelectedText()); |
- |
- // Select tab B. Location bar should get focus. |
- browser()->tab_strip_model()->ActivateTabAt(1, true); |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
-} |
- |
-// FindInPage on Mac doesn't use prepopulated values. Search there is global. |
-#if !defined(OS_MACOSX) && !defined(USE_AURA) |
-// Flaky because the test server fails to start? See: http://crbug.com/96594. |
-// This tests that whenever you clear values from the Find box and close it that |
-// it respects that and doesn't show you the last search, as reported in bug: |
-// http://crbug.com/40121. For Aura see bug http://crbug.com/292299. |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, PrepopulateRespectBlank) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- // Make sure Chrome is in the foreground, otherwise sending input |
- // won't do anything and the test will hang. |
- ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); |
- |
- // First we navigate to any page. |
- GURL url = test_server()->GetURL(kSimplePage); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- // Show the Find bar. |
- browser()->GetFindBarController()->Show(); |
- |
- // Search for "a". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_A, false, false, false, false)); |
- |
- // We should find "a" here. |
- EXPECT_EQ(ASCIIToUTF16("a"), GetFindBarText()); |
- |
- // Delete "a". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_BACK, false, false, false, false)); |
- |
- // Validate we have cleared the text. |
- EXPECT_EQ(base::string16(), GetFindBarText()); |
- |
- // Close the Find box. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_ESCAPE, false, false, false, false)); |
- |
- // Show the Find bar. |
- browser()->GetFindBarController()->Show(); |
- |
- // After the Find box has been reopened, it should not have been prepopulated |
- // with "a" again. |
- EXPECT_EQ(base::string16(), GetFindBarText()); |
- |
- // Close the Find box. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_ESCAPE, false, false, false, false)); |
- |
- // Press F3 to trigger FindNext. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_F3, false, false, false, false)); |
- |
- // After the Find box has been reopened, it should still have no prepopulate |
- // value. |
- EXPECT_EQ(base::string16(), GetFindBarText()); |
-} |
-#endif |
- |
-// Flaky on Win. http://crbug.com/92467 |
-// Flaky on ChromeOS. http://crbug.com/118216 |
-// Flaky on linux aura. http://crbug.com/163931 |
-#if defined(TOOLKIT_VIEWS) |
-#define MAYBE_PasteWithoutTextChange DISABLED_PasteWithoutTextChange |
-#else |
-#define MAYBE_PasteWithoutTextChange PasteWithoutTextChange |
-#endif |
- |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, MAYBE_PasteWithoutTextChange) { |
- ASSERT_TRUE(test_server()->Start()); |
- |
- // Make sure Chrome is in the foreground, otherwise sending input |
- // won't do anything and the test will hang. |
- ASSERT_TRUE(ui_test_utils::BringBrowserWindowToFront(browser())); |
- |
- // First we navigate to any page. |
- GURL url = test_server()->GetURL(kSimplePage); |
- ui_test_utils::NavigateToURL(browser(), url); |
- |
- // Show the Find bar. |
- browser()->GetFindBarController()->Show(); |
- |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- |
- // Search for "a". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_A, false, false, false, false)); |
- |
- // We should find "a" here. |
- EXPECT_EQ(ASCIIToUTF16("a"), GetFindBarText()); |
- |
- // Reload the page to clear the matching result. |
- chrome::Reload(browser(), CURRENT_TAB); |
- |
- // Focus the Find bar again to make sure the text is selected. |
- browser()->GetFindBarController()->Show(); |
- |
- EXPECT_TRUE(ui_test_utils::IsViewFocused(browser(), |
- VIEW_ID_FIND_IN_PAGE_TEXT_FIELD)); |
- |
- // "a" should be selected. |
- EXPECT_EQ(ASCIIToUTF16("a"), GetFindBarSelectedText()); |
- |
- // Press Ctrl-C to copy the content. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_C, true, false, false, false)); |
- |
- base::string16 str; |
- ui::Clipboard::GetForCurrentThread()->ReadText(ui::CLIPBOARD_TYPE_COPY_PASTE, |
- &str); |
- |
- // Make sure the text is copied successfully. |
- EXPECT_EQ(ASCIIToUTF16("a"), str); |
- |
- // Press Ctrl-V to paste the content back, it should start finding even if the |
- // content is not changed. |
- content::Source<WebContents> notification_source( |
- browser()->tab_strip_model()->GetActiveWebContents()); |
- ui_test_utils::WindowedNotificationObserverWithDetails |
- <FindNotificationDetails> observer( |
- chrome::NOTIFICATION_FIND_RESULT_AVAILABLE, notification_source); |
- |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_V, true, false, false, false)); |
- |
- ASSERT_NO_FATAL_FAILURE(observer.Wait()); |
- FindNotificationDetails details; |
- ASSERT_TRUE(observer.GetDetailsFor(notification_source.map_key(), &details)); |
- EXPECT_TRUE(details.number_of_matches() > 0); |
-} |
- |
-#if defined(OS_WIN) |
-// TODO(phajdan.jr): Disabling due to possible timing issues on XP |
-// interactive_ui_tests. |
-// http://crbug.com/311363 |
-IN_PROC_BROWSER_TEST_F(FindInPageTest, DISABLED_CtrlEnter) { |
- ui_test_utils::NavigateToURL(browser(), |
- GURL("data:text/html,This is some text with a " |
- "<a href=\"about:blank\">link</a>.")); |
- |
- browser()->GetFindBarController()->Show(); |
- |
- // Search for "link". |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_L, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_I, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_N, false, false, false, false)); |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_K, false, false, false, false)); |
- EXPECT_EQ(ASCIIToUTF16("link"), GetFindBarText()); |
- |
- ui_test_utils::UrlLoadObserver observer( |
- GURL("about:blank"), content::NotificationService::AllSources()); |
- |
- // Send Ctrl-Enter, should cause navigation to about:blank. |
- ASSERT_TRUE(ui_test_utils::SendKeyPressSync( |
- browser(), ui::VKEY_RETURN, true, false, false, false)); |
- |
- observer.Wait(); |
-} |
-#endif |