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

Side by Side Diff: chrome/browser/apps/web_view_browsertest.cc

Issue 153263006: Add test for ChromeVox injection into webview (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more fixes Created 6 years, 10 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "apps/ui/native_app_window.h" 5 #include "apps/ui/native_app_window.h"
6 #include "base/path_service.h" 6 #include "base/path_service.h"
7 #include "base/strings/stringprintf.h" 7 #include "base/strings/stringprintf.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "chrome/browser/apps/app_browsertest_util.h" 9 #include "chrome/browser/apps/app_browsertest_util.h"
10 #include "chrome/browser/automation/automation_util.h" 10 #include "chrome/browser/automation/automation_util.h"
(...skipping 14 matching lines...) Expand all
25 #include "content/public/common/content_switches.h" 25 #include "content/public/common/content_switches.h"
26 #include "content/public/test/browser_test_utils.h" 26 #include "content/public/test/browser_test_utils.h"
27 #include "content/public/test/fake_speech_recognition_manager.h" 27 #include "content/public/test/fake_speech_recognition_manager.h"
28 #include "extensions/common/extension.h" 28 #include "extensions/common/extension.h"
29 #include "extensions/common/extensions_client.h" 29 #include "extensions/common/extensions_client.h"
30 #include "net/test/embedded_test_server/embedded_test_server.h" 30 #include "net/test/embedded_test_server/embedded_test_server.h"
31 #include "net/test/embedded_test_server/http_request.h" 31 #include "net/test/embedded_test_server/http_request.h"
32 #include "net/test/embedded_test_server/http_response.h" 32 #include "net/test/embedded_test_server/http_response.h"
33 #include "ui/gl/gl_switches.h" 33 #include "ui/gl/gl_switches.h"
34 34
35 #if defined(OS_CHROMEOS)
36 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
37 #include "chrome/browser/chromeos/accessibility/speech_monitor.h"
38 #endif
39
35 // For fine-grained suppression on flaky tests. 40 // For fine-grained suppression on flaky tests.
36 #if defined(OS_WIN) 41 #if defined(OS_WIN)
37 #include "base/win/windows_version.h" 42 #include "base/win/windows_version.h"
38 #endif 43 #endif
39 44
40 using prerender::PrerenderLinkManager; 45 using prerender::PrerenderLinkManager;
41 using prerender::PrerenderLinkManagerFactory; 46 using prerender::PrerenderLinkManagerFactory;
42 47
43 namespace { 48 namespace {
44 const char kEmptyResponsePath[] = "/close-socket"; 49 const char kEmptyResponsePath[] = "/close-socket";
(...skipping 1493 matching lines...) Expand 10 before | Expand all | Expand 10 after
1538 // way that this will trigger clicking on speech recognition input mic. 1543 // way that this will trigger clicking on speech recognition input mic.
1539 SimulateMouseClick(guest_web_contents, 0, blink::WebMouseEvent::ButtonLeft); 1544 SimulateMouseClick(guest_web_contents, 0, blink::WebMouseEvent::ButtonLeft);
1540 1545
1541 base::string16 expected_title(base::ASCIIToUTF16("PASSED")); 1546 base::string16 expected_title(base::ASCIIToUTF16("PASSED"));
1542 base::string16 error_title(base::ASCIIToUTF16("FAILED")); 1547 base::string16 error_title(base::ASCIIToUTF16("FAILED"));
1543 content::TitleWatcher title_watcher(guest_web_contents, expected_title); 1548 content::TitleWatcher title_watcher(guest_web_contents, expected_title);
1544 title_watcher.AlsoWaitForTitle(error_title); 1549 title_watcher.AlsoWaitForTitle(error_title);
1545 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); 1550 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle());
1546 } 1551 }
1547 1552
1553 #if defined(OS_CHROMEOS)
1554 IN_PROC_BROWSER_TEST_F(WebViewTest, ChromeVoxInjection) {
1555 EXPECT_FALSE(
1556 chromeos::AccessibilityManager::Get()->IsSpokenFeedbackEnabled());
1557
1558 ASSERT_TRUE(StartEmbeddedTestServer());
1559 content::WebContents* guest_web_contents = LoadGuest(
1560 "/extensions/platform_apps/web_view/chromevox_injection/guest.html",
1561 "web_view/chromevox_injection");
1562 ASSERT_TRUE(guest_web_contents);
1563
1564 chromeos::SpeechMonitor monitor;
1565 chromeos::AccessibilityManager::Get()->EnableSpokenFeedback(
1566 true, ash::A11Y_NOTIFICATION_NONE);
1567 EXPECT_TRUE(monitor.SkipChromeVoxEnabledMessage());
1568
1569 EXPECT_EQ("chrome vox test title", monitor.GetNextUtterance());
1570 }
1571 #endif
1572
1548 // Flaky on Windows. http://crbug.com/303966 1573 // Flaky on Windows. http://crbug.com/303966
1549 #if defined(OS_WIN) 1574 #if defined(OS_WIN)
1550 #define MAYBE_TearDownTest DISABLED_TearDownTest 1575 #define MAYBE_TearDownTest DISABLED_TearDownTest
1551 #else 1576 #else
1552 #define MAYBE_TearDownTest TearDownTest 1577 #define MAYBE_TearDownTest TearDownTest
1553 #endif 1578 #endif
1554 IN_PROC_BROWSER_TEST_F(WebViewTest, MAYBE_TearDownTest) { 1579 IN_PROC_BROWSER_TEST_F(WebViewTest, MAYBE_TearDownTest) {
1555 ExtensionTestMessageListener first_loaded_listener("guest-loaded", false); 1580 ExtensionTestMessageListener first_loaded_listener("guest-loaded", false);
1556 const extensions::Extension* extension = 1581 const extensions::Extension* extension =
1557 LoadAndLaunchPlatformApp("web_view/teardown"); 1582 LoadAndLaunchPlatformApp("web_view/teardown");
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
1867 INSTANTIATE_TEST_CASE_P(WithoutThreadedCompositor, 1892 INSTANTIATE_TEST_CASE_P(WithoutThreadedCompositor,
1868 WebViewCaptureTest, 1893 WebViewCaptureTest,
1869 ::testing::Values(std::string(switches::kDisableThreadedCompositing))); 1894 ::testing::Values(std::string(switches::kDisableThreadedCompositing)));
1870 1895
1871 // http://crbug.com/171744 1896 // http://crbug.com/171744
1872 #if !defined(OS_MACOSX) 1897 #if !defined(OS_MACOSX)
1873 INSTANTIATE_TEST_CASE_P(WithThreadedCompositor, 1898 INSTANTIATE_TEST_CASE_P(WithThreadedCompositor,
1874 WebViewCaptureTest, 1899 WebViewCaptureTest,
1875 ::testing::Values(std::string(switches::kEnableThreadedCompositing))); 1900 ::testing::Values(std::string(switches::kEnableThreadedCompositing)));
1876 #endif 1901 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698