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

Side by Side Diff: content/browser/accessibility/accessibility_mode_browsertest.cc

Issue 2558933002: Add more fine-grained accessibility modes. (Closed)
Patch Set: Rename constants Created 4 years 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "content/browser/accessibility/accessibility_mode_helper.h"
6 #include "content/browser/renderer_host/render_view_host_impl.h" 5 #include "content/browser/renderer_host/render_view_host_impl.h"
7 #include "content/browser/renderer_host/render_widget_host_impl.h" 6 #include "content/browser/renderer_host/render_widget_host_impl.h"
8 #include "content/browser/renderer_host/render_widget_host_view_base.h" 7 #include "content/browser/renderer_host/render_widget_host_view_base.h"
9 #include "content/browser/web_contents/web_contents_impl.h" 8 #include "content/browser/web_contents/web_contents_impl.h"
10 #include "content/public/browser/render_view_host.h" 9 #include "content/public/browser/render_view_host.h"
11 #include "content/public/browser/render_widget_host.h" 10 #include "content/public/browser/render_widget_host.h"
12 #include "content/public/browser/render_widget_host_view.h" 11 #include "content/public/browser/render_widget_host_view.h"
13 #include "content/public/browser/web_contents.h" 12 #include "content/public/browser/web_contents.h"
14 #include "content/public/common/url_constants.h" 13 #include "content/public/common/url_constants.h"
15 #include "content/public/test/content_browser_test.h" 14 #include "content/public/test/content_browser_test.h"
(...skipping 19 matching lines...) Expand all
35 EXPECT_NE( 34 EXPECT_NE(
36 (BrowserAccessibilityManager*)NULL, 35 (BrowserAccessibilityManager*)NULL,
37 web_contents()->GetRootBrowserAccessibilityManager()) << message; 36 web_contents()->GetRootBrowserAccessibilityManager()) << message;
38 } else { 37 } else {
39 EXPECT_EQ( 38 EXPECT_EQ(
40 (BrowserAccessibilityManager*)NULL, 39 (BrowserAccessibilityManager*)NULL,
41 web_contents()->GetRootBrowserAccessibilityManager()) << message; 40 web_contents()->GetRootBrowserAccessibilityManager()) << message;
42 } 41 }
43 } 42 }
44 43
45 AccessibilityMode CorrectedAccessibility(AccessibilityMode mode) {
46 return AddAccessibilityModeTo(GetBaseAccessibilityMode(), mode);
47 }
48
49 bool ShouldBeBrowserAccessibilityManager(AccessibilityMode mode) { 44 bool ShouldBeBrowserAccessibilityManager(AccessibilityMode mode) {
50 mode = CorrectedAccessibility(mode);
51 switch (mode) { 45 switch (mode) {
52 case AccessibilityModeOff: 46 case AccessibilityModeOff:
53 case AccessibilityModeTreeOnly: 47 case kAccessibilityModeWebContentsOnly:
54 return false; 48 return false;
55 case AccessibilityModeComplete: 49 case kAccessibilityModeComplete:
56 return true; 50 return true;
57 default: 51 default:
58 NOTREACHED(); 52 NOTREACHED();
59 } 53 }
60 return false; 54 return false;
61 } 55 }
62 }; 56 };
63 57
64 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AccessibilityModeOff) { 58 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AccessibilityModeOff) {
65 NavigateToURL(shell(), GURL(kMinimalPageDataURL)); 59 NavigateToURL(shell(), GURL(kMinimalPageDataURL));
66 60
67 EXPECT_EQ(CorrectedAccessibility(AccessibilityModeOff), 61 EXPECT_EQ(AccessibilityModeOff,
68 web_contents()->GetAccessibilityMode()); 62 web_contents()->GetAccessibilityMode());
69 ExpectBrowserAccessibilityManager( 63 ExpectBrowserAccessibilityManager(
70 ShouldBeBrowserAccessibilityManager(AccessibilityModeOff)); 64 ShouldBeBrowserAccessibilityManager(AccessibilityModeOff));
71 } 65 }
72 66
73 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AccessibilityModeComplete) { 67 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, kAccessibilityModeComplete) {
74 NavigateToURL(shell(), GURL(kMinimalPageDataURL)); 68 NavigateToURL(shell(), GURL(kMinimalPageDataURL));
75 ASSERT_EQ(CorrectedAccessibility(AccessibilityModeOff), 69 ASSERT_EQ(AccessibilityModeOff,
76 web_contents()->GetAccessibilityMode()); 70 web_contents()->GetAccessibilityMode());
77 71
78 AccessibilityNotificationWaiter waiter(shell()->web_contents()); 72 AccessibilityNotificationWaiter waiter(shell()->web_contents());
79 web_contents()->AddAccessibilityMode(AccessibilityModeComplete); 73 web_contents()->AddAccessibilityMode(kAccessibilityModeComplete);
80 EXPECT_EQ(AccessibilityModeComplete, web_contents()->GetAccessibilityMode()); 74 EXPECT_EQ(kAccessibilityModeComplete, web_contents()->GetAccessibilityMode());
81 waiter.WaitForNotification(); 75 waiter.WaitForNotification();
82 ExpectBrowserAccessibilityManager( 76 ExpectBrowserAccessibilityManager(
83 ShouldBeBrowserAccessibilityManager(AccessibilityModeComplete)); 77 ShouldBeBrowserAccessibilityManager(kAccessibilityModeComplete));
84 } 78 }
85 79
86 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AccessibilityModeTreeOnly) { 80 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest,
81 kAccessibilityModeWebContentsOnly) {
87 NavigateToURL(shell(), GURL(kMinimalPageDataURL)); 82 NavigateToURL(shell(), GURL(kMinimalPageDataURL));
88 ASSERT_EQ(CorrectedAccessibility(AccessibilityModeOff), 83 ASSERT_EQ(AccessibilityModeOff,
89 web_contents()->GetAccessibilityMode()); 84 web_contents()->GetAccessibilityMode());
90 85
91 AccessibilityNotificationWaiter waiter(shell()->web_contents()); 86 AccessibilityNotificationWaiter waiter(shell()->web_contents());
92 web_contents()->AddAccessibilityMode(AccessibilityModeTreeOnly); 87 web_contents()->AddAccessibilityMode(kAccessibilityModeWebContentsOnly);
93 EXPECT_EQ(CorrectedAccessibility(AccessibilityModeTreeOnly), 88 EXPECT_EQ(kAccessibilityModeWebContentsOnly,
94 web_contents()->GetAccessibilityMode()); 89 web_contents()->GetAccessibilityMode());
95 waiter.WaitForNotification(); 90 waiter.WaitForNotification();
96 // No BrowserAccessibilityManager expected for AccessibilityModeTreeOnly 91 // No BrowserAccessibilityManager expected for
92 // kAccessibilityModeWebContentsOnly
97 ExpectBrowserAccessibilityManager( 93 ExpectBrowserAccessibilityManager(
98 ShouldBeBrowserAccessibilityManager(AccessibilityModeTreeOnly)); 94 ShouldBeBrowserAccessibilityManager(kAccessibilityModeWebContentsOnly));
99 } 95 }
100 96
101 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AddingModes) { 97 IN_PROC_BROWSER_TEST_F(AccessibilityModeTest, AddingModes) {
102 NavigateToURL(shell(), GURL(kMinimalPageDataURL)); 98 NavigateToURL(shell(), GURL(kMinimalPageDataURL));
103 99
104 AccessibilityNotificationWaiter waiter(shell()->web_contents()); 100 AccessibilityNotificationWaiter waiter(shell()->web_contents());
105 web_contents()->AddAccessibilityMode(AccessibilityModeTreeOnly); 101 web_contents()->AddAccessibilityMode(kAccessibilityModeWebContentsOnly);
106 EXPECT_EQ(CorrectedAccessibility(AccessibilityModeTreeOnly), 102 EXPECT_EQ(kAccessibilityModeWebContentsOnly,
107 web_contents()->GetAccessibilityMode()); 103 web_contents()->GetAccessibilityMode());
108 waiter.WaitForNotification(); 104 waiter.WaitForNotification();
109 ExpectBrowserAccessibilityManager(ShouldBeBrowserAccessibilityManager( 105 ExpectBrowserAccessibilityManager(ShouldBeBrowserAccessibilityManager(
110 AccessibilityModeTreeOnly), 106 kAccessibilityModeWebContentsOnly),
111 "Should be no BrowserAccessibilityManager " 107 "Should be no BrowserAccessibilityManager "
112 "for AccessibilityModeTreeOnly"); 108 "for kAccessibilityModeWebContentsOnly");
113 109
114 AccessibilityNotificationWaiter waiter2(shell()->web_contents()); 110 AccessibilityNotificationWaiter waiter2(shell()->web_contents());
115 web_contents()->AddAccessibilityMode(AccessibilityModeComplete); 111 web_contents()->AddAccessibilityMode(kAccessibilityModeComplete);
116 EXPECT_EQ(AccessibilityModeComplete, web_contents()->GetAccessibilityMode()); 112 EXPECT_EQ(kAccessibilityModeComplete, web_contents()->GetAccessibilityMode());
117 waiter2.WaitForNotification(); 113 waiter2.WaitForNotification();
118 ExpectBrowserAccessibilityManager(ShouldBeBrowserAccessibilityManager( 114 ExpectBrowserAccessibilityManager(ShouldBeBrowserAccessibilityManager(
119 AccessibilityModeComplete), 115 kAccessibilityModeComplete),
120 "Should be a BrowserAccessibilityManager " 116 "Should be a BrowserAccessibilityManager "
121 "for AccessibilityModeComplete"); 117 "for kAccessibilityModeComplete");
122 } 118 }
123 119
124 } // namespace content 120 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698