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

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

Issue 2694413006: Scope and clean up uses of AccessibilityMode. (Closed)
Patch Set: merge Created 3 years, 9 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
« no previous file with comments | « no previous file | content/browser/accessibility/accessibility_ipc_error_browsertest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "base/logging.h" 5 #include "base/logging.h"
6 #include "content/browser/accessibility/browser_accessibility.h" 6 #include "content/browser/accessibility/browser_accessibility.h"
7 #include "content/browser/accessibility/browser_accessibility_manager.h" 7 #include "content/browser/accessibility/browser_accessibility_manager.h"
8 #include "content/browser/web_contents/web_contents_impl.h" 8 #include "content/browser/web_contents/web_contents_impl.h"
9 #include "content/public/test/browser_test_utils.h" 9 #include "content/public/test/browser_test_utils.h"
10 #include "content/public/test/content_browser_test.h" 10 #include "content/public/test/content_browser_test.h"
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 return nullptr; 72 return nullptr;
73 } 73 }
74 }; 74 };
75 75
76 } // namespace 76 } // namespace
77 77
78 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, FocusAction) { 78 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, FocusAction) {
79 NavigateToURL(shell(), GURL(url::kAboutBlankURL)); 79 NavigateToURL(shell(), GURL(url::kAboutBlankURL));
80 80
81 AccessibilityNotificationWaiter waiter(shell()->web_contents(), 81 AccessibilityNotificationWaiter waiter(shell()->web_contents(),
82 ACCESSIBILITY_MODE_COMPLETE, 82 kAccessibilityModeComplete,
83 ui::AX_EVENT_LOAD_COMPLETE); 83 ui::AX_EVENT_LOAD_COMPLETE);
84 GURL url("data:text/html," 84 GURL url("data:text/html,"
85 "<button>One</button>" 85 "<button>One</button>"
86 "<button>Two</button>" 86 "<button>Two</button>"
87 "<button>Three</button>"); 87 "<button>Three</button>");
88 NavigateToURL(shell(), url); 88 NavigateToURL(shell(), url);
89 waiter.WaitForNotification(); 89 waiter.WaitForNotification();
90 90
91 BrowserAccessibility* target = FindNode(ui::AX_ROLE_BUTTON, "One"); 91 BrowserAccessibility* target = FindNode(ui::AX_ROLE_BUTTON, "One");
92 ASSERT_NE(nullptr, target); 92 ASSERT_NE(nullptr, target);
93 93
94 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 94 AccessibilityNotificationWaiter waiter2(
95 ACCESSIBILITY_MODE_COMPLETE, 95 shell()->web_contents(), kAccessibilityModeComplete, ui::AX_EVENT_FOCUS);
96 ui::AX_EVENT_FOCUS);
97 GetManager()->SetFocus(*target); 96 GetManager()->SetFocus(*target);
98 waiter2.WaitForNotification(); 97 waiter2.WaitForNotification();
99 98
100 BrowserAccessibility* focus = GetManager()->GetFocus(); 99 BrowserAccessibility* focus = GetManager()->GetFocus();
101 EXPECT_EQ(focus->GetId(), target->GetId()); 100 EXPECT_EQ(focus->GetId(), target->GetId());
102 } 101 }
103 102
104 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, 103 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest,
105 IncrementDecrementActions) { 104 IncrementDecrementActions) {
106 NavigateToURL(shell(), GURL(url::kAboutBlankURL)); 105 NavigateToURL(shell(), GURL(url::kAboutBlankURL));
107 106
108 AccessibilityNotificationWaiter waiter(shell()->web_contents(), 107 AccessibilityNotificationWaiter waiter(shell()->web_contents(),
109 ACCESSIBILITY_MODE_COMPLETE, 108 kAccessibilityModeComplete,
110 ui::AX_EVENT_LOAD_COMPLETE); 109 ui::AX_EVENT_LOAD_COMPLETE);
111 GURL url("data:text/html," 110 GURL url("data:text/html,"
112 "<input type=range min=2 value=8 max=10 step=2>"); 111 "<input type=range min=2 value=8 max=10 step=2>");
113 NavigateToURL(shell(), url); 112 NavigateToURL(shell(), url);
114 waiter.WaitForNotification(); 113 waiter.WaitForNotification();
115 114
116 BrowserAccessibility* target = FindNode(ui::AX_ROLE_SLIDER, ""); 115 BrowserAccessibility* target = FindNode(ui::AX_ROLE_SLIDER, "");
117 ASSERT_NE(nullptr, target); 116 ASSERT_NE(nullptr, target);
118 EXPECT_EQ(8.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE)); 117 EXPECT_EQ(8.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE));
119 118
120 // Increment, should result in value changing from 8 to 10. 119 // Increment, should result in value changing from 8 to 10.
121 { 120 {
122 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 121 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
123 ACCESSIBILITY_MODE_COMPLETE, 122 kAccessibilityModeComplete,
124 ui::AX_EVENT_VALUE_CHANGED); 123 ui::AX_EVENT_VALUE_CHANGED);
125 GetManager()->Increment(*target); 124 GetManager()->Increment(*target);
126 waiter2.WaitForNotification(); 125 waiter2.WaitForNotification();
127 } 126 }
128 EXPECT_EQ(10.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE)); 127 EXPECT_EQ(10.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE));
129 128
130 // Increment, should result in value staying the same (max). 129 // Increment, should result in value staying the same (max).
131 { 130 {
132 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 131 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
133 ACCESSIBILITY_MODE_COMPLETE, 132 kAccessibilityModeComplete,
134 ui::AX_EVENT_VALUE_CHANGED); 133 ui::AX_EVENT_VALUE_CHANGED);
135 GetManager()->Increment(*target); 134 GetManager()->Increment(*target);
136 waiter2.WaitForNotification(); 135 waiter2.WaitForNotification();
137 } 136 }
138 EXPECT_EQ(10.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE)); 137 EXPECT_EQ(10.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE));
139 138
140 // Decrement, should result in value changing from 10 to 8. 139 // Decrement, should result in value changing from 10 to 8.
141 { 140 {
142 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 141 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
143 ACCESSIBILITY_MODE_COMPLETE, 142 kAccessibilityModeComplete,
144 ui::AX_EVENT_VALUE_CHANGED); 143 ui::AX_EVENT_VALUE_CHANGED);
145 GetManager()->Decrement(*target); 144 GetManager()->Decrement(*target);
146 waiter2.WaitForNotification(); 145 waiter2.WaitForNotification();
147 } 146 }
148 EXPECT_EQ(8.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE)); 147 EXPECT_EQ(8.0, target->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE));
149 } 148 }
150 149
151 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, CanvasGetImage) { 150 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, CanvasGetImage) {
152 NavigateToURL(shell(), GURL(url::kAboutBlankURL)); 151 NavigateToURL(shell(), GURL(url::kAboutBlankURL));
153 152
154 AccessibilityNotificationWaiter waiter(shell()->web_contents(), 153 AccessibilityNotificationWaiter waiter(shell()->web_contents(),
155 ACCESSIBILITY_MODE_COMPLETE, 154 kAccessibilityModeComplete,
156 ui::AX_EVENT_LOAD_COMPLETE); 155 ui::AX_EVENT_LOAD_COMPLETE);
157 GURL url("data:text/html," 156 GURL url("data:text/html,"
158 "<body>" 157 "<body>"
159 "<canvas aria-label='canvas' id='c' width='4' height='2'></canvas>" 158 "<canvas aria-label='canvas' id='c' width='4' height='2'></canvas>"
160 "<script>\n" 159 "<script>\n"
161 " var c = document.getElementById('c').getContext('2d');\n" 160 " var c = document.getElementById('c').getContext('2d');\n"
162 " c.beginPath();\n" 161 " c.beginPath();\n"
163 " c.moveTo(0, 0.5);\n" 162 " c.moveTo(0, 0.5);\n"
164 " c.lineTo(4, 0.5);\n" 163 " c.lineTo(4, 0.5);\n"
165 " c.strokeStyle = '#ff0000';\n" 164 " c.strokeStyle = '#ff0000';\n"
166 " c.stroke();\n" 165 " c.stroke();\n"
167 " c.beginPath();\n" 166 " c.beginPath();\n"
168 " c.moveTo(0, 1.5);\n" 167 " c.moveTo(0, 1.5);\n"
169 " c.lineTo(4, 1.5);\n" 168 " c.lineTo(4, 1.5);\n"
170 " c.strokeStyle = '#0000ff';\n" 169 " c.strokeStyle = '#0000ff';\n"
171 " c.stroke();\n" 170 " c.stroke();\n"
172 "</script>" 171 "</script>"
173 "</body>"); 172 "</body>");
174 173
175 NavigateToURL(shell(), url); 174 NavigateToURL(shell(), url);
176 waiter.WaitForNotification(); 175 waiter.WaitForNotification();
177 176
178 BrowserAccessibility* target = FindNode(ui::AX_ROLE_CANVAS, "canvas"); 177 BrowserAccessibility* target = FindNode(ui::AX_ROLE_CANVAS, "canvas");
179 ASSERT_NE(nullptr, target); 178 ASSERT_NE(nullptr, target);
180 179
181 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 180 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
182 ACCESSIBILITY_MODE_COMPLETE, 181 kAccessibilityModeComplete,
183 ui::AX_EVENT_IMAGE_FRAME_UPDATED); 182 ui::AX_EVENT_IMAGE_FRAME_UPDATED);
184 GetManager()->GetImageData(*target, gfx::Size()); 183 GetManager()->GetImageData(*target, gfx::Size());
185 waiter2.WaitForNotification(); 184 waiter2.WaitForNotification();
186 185
187 SkBitmap bitmap; 186 SkBitmap bitmap;
188 GetBitmapFromImageDataURL(target, &bitmap); 187 GetBitmapFromImageDataURL(target, &bitmap);
189 ASSERT_EQ(4, bitmap.width()); 188 ASSERT_EQ(4, bitmap.width());
190 ASSERT_EQ(2, bitmap.height()); 189 ASSERT_EQ(2, bitmap.height());
191 EXPECT_EQ(SK_ColorRED, bitmap.getColor(0, 0)); 190 EXPECT_EQ(SK_ColorRED, bitmap.getColor(0, 0));
192 EXPECT_EQ(SK_ColorRED, bitmap.getColor(1, 0)); 191 EXPECT_EQ(SK_ColorRED, bitmap.getColor(1, 0));
193 EXPECT_EQ(SK_ColorRED, bitmap.getColor(2, 0)); 192 EXPECT_EQ(SK_ColorRED, bitmap.getColor(2, 0));
194 EXPECT_EQ(SK_ColorRED, bitmap.getColor(3, 0)); 193 EXPECT_EQ(SK_ColorRED, bitmap.getColor(3, 0));
195 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(0, 1)); 194 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(0, 1));
196 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(1, 1)); 195 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(1, 1));
197 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(2, 1)); 196 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(2, 1));
198 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(3, 1)); 197 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(3, 1));
199 } 198 }
200 199
201 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, CanvasGetImageScale) { 200 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, CanvasGetImageScale) {
202 NavigateToURL(shell(), GURL(url::kAboutBlankURL)); 201 NavigateToURL(shell(), GURL(url::kAboutBlankURL));
203 202
204 AccessibilityNotificationWaiter waiter(shell()->web_contents(), 203 AccessibilityNotificationWaiter waiter(shell()->web_contents(),
205 ACCESSIBILITY_MODE_COMPLETE, 204 kAccessibilityModeComplete,
206 ui::AX_EVENT_LOAD_COMPLETE); 205 ui::AX_EVENT_LOAD_COMPLETE);
207 GURL url("data:text/html," 206 GURL url("data:text/html,"
208 "<body>" 207 "<body>"
209 "<canvas aria-label='canvas' id='c' width='40' height='20'></canvas>" 208 "<canvas aria-label='canvas' id='c' width='40' height='20'></canvas>"
210 "<script>\n" 209 "<script>\n"
211 " var c = document.getElementById('c').getContext('2d');\n" 210 " var c = document.getElementById('c').getContext('2d');\n"
212 " c.fillStyle = '#00ff00';\n" 211 " c.fillStyle = '#00ff00';\n"
213 " c.fillRect(0, 0, 40, 10);\n" 212 " c.fillRect(0, 0, 40, 10);\n"
214 " c.fillStyle = '#ff00ff';\n" 213 " c.fillStyle = '#ff00ff';\n"
215 " c.fillRect(0, 10, 40, 10);\n" 214 " c.fillRect(0, 10, 40, 10);\n"
216 "</script>" 215 "</script>"
217 "</body>"); 216 "</body>");
218 217
219 NavigateToURL(shell(), url); 218 NavigateToURL(shell(), url);
220 waiter.WaitForNotification(); 219 waiter.WaitForNotification();
221 220
222 BrowserAccessibility* target = FindNode(ui::AX_ROLE_CANVAS, "canvas"); 221 BrowserAccessibility* target = FindNode(ui::AX_ROLE_CANVAS, "canvas");
223 ASSERT_NE(nullptr, target); 222 ASSERT_NE(nullptr, target);
224 223
225 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 224 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
226 ACCESSIBILITY_MODE_COMPLETE, 225 kAccessibilityModeComplete,
227 ui::AX_EVENT_IMAGE_FRAME_UPDATED); 226 ui::AX_EVENT_IMAGE_FRAME_UPDATED);
228 GetManager()->GetImageData(*target, gfx::Size(4, 4)); 227 GetManager()->GetImageData(*target, gfx::Size(4, 4));
229 waiter2.WaitForNotification(); 228 waiter2.WaitForNotification();
230 229
231 SkBitmap bitmap; 230 SkBitmap bitmap;
232 GetBitmapFromImageDataURL(target, &bitmap); 231 GetBitmapFromImageDataURL(target, &bitmap);
233 ASSERT_EQ(4, bitmap.width()); 232 ASSERT_EQ(4, bitmap.width());
234 ASSERT_EQ(2, bitmap.height()); 233 ASSERT_EQ(2, bitmap.height());
235 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(0, 0)); 234 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(0, 0));
236 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(1, 0)); 235 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(1, 0));
237 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(2, 0)); 236 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(2, 0));
238 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(3, 0)); 237 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(3, 0));
239 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(0, 1)); 238 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(0, 1));
240 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(1, 1)); 239 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(1, 1));
241 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(2, 1)); 240 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(2, 1));
242 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(3, 1)); 241 EXPECT_EQ(SK_ColorMAGENTA, bitmap.getColor(3, 1));
243 } 242 }
244 243
245 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, ImgElementGetImage) { 244 IN_PROC_BROWSER_TEST_F(AccessibilityActionBrowserTest, ImgElementGetImage) {
246 NavigateToURL(shell(), GURL(url::kAboutBlankURL)); 245 NavigateToURL(shell(), GURL(url::kAboutBlankURL));
247 246
248 AccessibilityNotificationWaiter waiter(shell()->web_contents(), 247 AccessibilityNotificationWaiter waiter(shell()->web_contents(),
249 ACCESSIBILITY_MODE_COMPLETE, 248 kAccessibilityModeComplete,
250 ui::AX_EVENT_LOAD_COMPLETE); 249 ui::AX_EVENT_LOAD_COMPLETE);
251 GURL url("data:text/html," 250 GURL url("data:text/html,"
252 "<body>" 251 "<body>"
253 "<img src='data:image/gif;base64,R0lGODdhAgADAKEDAAAA//" 252 "<img src='data:image/gif;base64,R0lGODdhAgADAKEDAAAA//"
254 "8AAAD/AP///ywAAAAAAgADAAACBEwkAAUAOw=='>" 253 "8AAAD/AP///ywAAAAAAgADAAACBEwkAAUAOw=='>"
255 "</body>"); 254 "</body>");
256 255
257 NavigateToURL(shell(), url); 256 NavigateToURL(shell(), url);
258 waiter.WaitForNotification(); 257 waiter.WaitForNotification();
259 258
260 BrowserAccessibility* target = FindNode(ui::AX_ROLE_IMAGE, ""); 259 BrowserAccessibility* target = FindNode(ui::AX_ROLE_IMAGE, "");
261 ASSERT_NE(nullptr, target); 260 ASSERT_NE(nullptr, target);
262 261
263 AccessibilityNotificationWaiter waiter2(shell()->web_contents(), 262 AccessibilityNotificationWaiter waiter2(shell()->web_contents(),
264 ACCESSIBILITY_MODE_COMPLETE, 263 kAccessibilityModeComplete,
265 ui::AX_EVENT_IMAGE_FRAME_UPDATED); 264 ui::AX_EVENT_IMAGE_FRAME_UPDATED);
266 GetManager()->GetImageData(*target, gfx::Size()); 265 GetManager()->GetImageData(*target, gfx::Size());
267 waiter2.WaitForNotification(); 266 waiter2.WaitForNotification();
268 267
269 SkBitmap bitmap; 268 SkBitmap bitmap;
270 GetBitmapFromImageDataURL(target, &bitmap); 269 GetBitmapFromImageDataURL(target, &bitmap);
271 ASSERT_EQ(2, bitmap.width()); 270 ASSERT_EQ(2, bitmap.width());
272 ASSERT_EQ(3, bitmap.height()); 271 ASSERT_EQ(3, bitmap.height());
273 EXPECT_EQ(SK_ColorRED, bitmap.getColor(0, 0)); 272 EXPECT_EQ(SK_ColorRED, bitmap.getColor(0, 0));
274 EXPECT_EQ(SK_ColorRED, bitmap.getColor(1, 0)); 273 EXPECT_EQ(SK_ColorRED, bitmap.getColor(1, 0));
275 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(0, 1)); 274 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(0, 1));
276 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(1, 1)); 275 EXPECT_EQ(SK_ColorGREEN, bitmap.getColor(1, 1));
277 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(0, 2)); 276 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(0, 2));
278 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(1, 2)); 277 EXPECT_EQ(SK_ColorBLUE, bitmap.getColor(1, 2));
279 } 278 }
280 279
281 } // namespace content 280 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | content/browser/accessibility/accessibility_ipc_error_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698