OLD | NEW |
---|---|
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 <queue> | 5 #include <queue> |
6 | 6 |
7 #include "ash/accelerators/accelerator_controller.h" | 7 #include "ash/accelerators/accelerator_controller.h" |
8 #include "ash/accelerators/accelerator_table.h" | 8 #include "ash/accelerators/accelerator_table.h" |
9 #include "ash/shell.h" | 9 #include "ash/shell.h" |
10 #include "ash/system/tray/system_tray.h" | 10 #include "ash/system/tray/system_tray.h" |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
169 } | 169 } |
170 } | 170 } |
171 | 171 |
172 SpeechMonitor speech_monitor_; | 172 SpeechMonitor speech_monitor_; |
173 | 173 |
174 private: | 174 private: |
175 StubBrailleController braille_controller_; | 175 StubBrailleController braille_controller_; |
176 DISALLOW_COPY_AND_ASSIGN(LoggedInSpokenFeedbackTest); | 176 DISALLOW_COPY_AND_ASSIGN(LoggedInSpokenFeedbackTest); |
177 }; | 177 }; |
178 | 178 |
179 IN_PROC_BROWSER_TEST_F(LoggedInSpokenFeedbackTest, AddBookmark) { | 179 // This test is very flakey with ChromeVox Next since we generate a lot more |
180 // utterances for text fields. | |
181 // TODO(dtseng): Fix properly. | |
182 IN_PROC_BROWSER_TEST_F(LoggedInSpokenFeedbackTest, DISABLED_AddBookmark) { | |
180 EnableChromeVox(); | 183 EnableChromeVox(); |
181 chrome::ExecuteCommand(browser(), IDC_SHOW_BOOKMARK_BAR); | 184 chrome::ExecuteCommand(browser(), IDC_SHOW_BOOKMARK_BAR); |
182 | 185 |
183 // Create a bookmark with title "foo". | 186 // Create a bookmark with title "foo". |
184 chrome::ExecuteCommand(browser(), IDC_BOOKMARK_PAGE); | 187 chrome::ExecuteCommand(browser(), IDC_BOOKMARK_PAGE); |
185 EXPECT_EQ("Bookmark added!,", speech_monitor_.GetNextUtterance()); | 188 EXPECT_EQ("Bookmark added! dialog Bookmark name about:blank Edit text", |
186 EXPECT_EQ("about blank,", speech_monitor_.GetNextUtterance()); | 189 speech_monitor_.GetNextUtterance()); |
187 EXPECT_EQ("Bookmark name,", speech_monitor_.GetNextUtterance()); | 190 EXPECT_EQ("about:blank", speech_monitor_.GetNextUtterance()); |
188 EXPECT_EQ("text box", speech_monitor_.GetNextUtterance()); | |
189 | 191 |
190 SendKeyPress(ui::VKEY_F); | 192 SendKeyPress(ui::VKEY_F); |
191 EXPECT_EQ("f", speech_monitor_.GetNextUtterance()); | 193 EXPECT_EQ("f", speech_monitor_.GetNextUtterance()); |
192 SendKeyPress(ui::VKEY_O); | 194 SendKeyPress(ui::VKEY_O); |
193 EXPECT_EQ("o", speech_monitor_.GetNextUtterance()); | 195 EXPECT_EQ("o", speech_monitor_.GetNextUtterance()); |
194 SendKeyPress(ui::VKEY_O); | 196 SendKeyPress(ui::VKEY_O); |
195 EXPECT_EQ("o", speech_monitor_.GetNextUtterance()); | 197 EXPECT_EQ("o", speech_monitor_.GetNextUtterance()); |
196 | 198 |
197 SendKeyPress(ui::VKEY_TAB); | 199 SendKeyPress(ui::VKEY_TAB); |
198 EXPECT_EQ("Bookmarks bar,", speech_monitor_.GetNextUtterance()); | 200 EXPECT_EQ("Bookmark folder combo Box Bookmarks bar", |
199 EXPECT_EQ("Bookmark folder,", speech_monitor_.GetNextUtterance()); | 201 speech_monitor_.GetNextUtterance()); |
200 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "combo box*")); | |
201 | 202 |
202 SendKeyPress(ui::VKEY_RETURN); | 203 SendKeyPress(ui::VKEY_RETURN); |
203 | 204 |
204 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*oolbar*")); | 205 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*oolbar*")); |
205 // Wait for active window change to be announced to avoid interference from | 206 // Wait for active window change to be announced to avoid interference from |
206 // that below. | 207 // that below. |
207 while (speech_monitor_.GetNextUtterance() != "window about blank tab") { | 208 while (speech_monitor_.GetNextUtterance() != "window about blank tab") { |
208 // Do nothing. | 209 // Do nothing. |
209 } | 210 } |
210 | 211 |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
253 SpokenFeedbackTest, | 254 SpokenFeedbackTest, |
254 ::testing::Values(kTestAsNormalUser, | 255 ::testing::Values(kTestAsNormalUser, |
255 kTestAsGuestUser)); | 256 kTestAsGuestUser)); |
256 | 257 |
257 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, EnableSpokenFeedback) { | 258 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, EnableSpokenFeedback) { |
258 EnableChromeVox(); | 259 EnableChromeVox(); |
259 } | 260 } |
260 | 261 |
261 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, FocusToolbar) { | 262 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, FocusToolbar) { |
262 EnableChromeVox(); | 263 EnableChromeVox(); |
263 | |
264 chrome::ExecuteCommand(browser(), IDC_FOCUS_TOOLBAR); | 264 chrome::ExecuteCommand(browser(), IDC_FOCUS_TOOLBAR); |
265 // Might be "Google Chrome Toolbar" or "Chromium Toolbar". | 265 EXPECT_TRUE( |
266 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*oolbar*")); | 266 MatchPattern(speech_monitor_.GetNextUtterance(), |
267 EXPECT_EQ("Reload,", speech_monitor_.GetNextUtterance()); | 267 "about:blank about:blank*Toolbar toolbar Reload Button")); |
dmazzoni
2014/11/29 08:03:59
Why is about:blank there twice? How about the shor
David Tseng
2014/12/04 17:15:31
about:blank is there twice because the ancestry 'e
| |
268 EXPECT_EQ("button", speech_monitor_.GetNextUtterance()); | |
269 } | 268 } |
270 | 269 |
271 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, TypeInOmnibox) { | 270 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, TypeInOmnibox) { |
272 EnableChromeVox(); | 271 EnableChromeVox(); |
273 | 272 |
274 // Wait for ChromeVox to finish speaking. | |
275 chrome::ExecuteCommand(browser(), IDC_FOCUS_LOCATION); | 273 chrome::ExecuteCommand(browser(), IDC_FOCUS_LOCATION); |
276 while (true) { | 274 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*Edit text")); |
277 std::string utterance = speech_monitor_.GetNextUtterance(); | |
278 VLOG(0) << "Got utterance: " << utterance; | |
279 if (utterance == "text box") | |
280 break; | |
281 } | |
282 | 275 |
283 SendKeyPress(ui::VKEY_X); | 276 SendKeyPress(ui::VKEY_X); |
284 EXPECT_EQ("x", speech_monitor_.GetNextUtterance()); | 277 EXPECT_EQ("x", speech_monitor_.GetNextUtterance()); |
285 | 278 |
286 SendKeyPress(ui::VKEY_Y); | 279 SendKeyPress(ui::VKEY_Y); |
287 EXPECT_EQ("y", speech_monitor_.GetNextUtterance()); | 280 EXPECT_EQ("y", speech_monitor_.GetNextUtterance()); |
288 | 281 |
289 SendKeyPress(ui::VKEY_Z); | 282 SendKeyPress(ui::VKEY_Z); |
290 EXPECT_EQ("z", speech_monitor_.GetNextUtterance()); | 283 EXPECT_EQ("z", speech_monitor_.GetNextUtterance()); |
291 | 284 |
292 SendKeyPress(ui::VKEY_BACK); | 285 SendKeyPress(ui::VKEY_BACK); |
293 EXPECT_EQ("z", speech_monitor_.GetNextUtterance()); | 286 EXPECT_EQ("z", speech_monitor_.GetNextUtterance()); |
294 } | 287 } |
295 | 288 |
296 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, FocusShelf) { | 289 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, FocusShelf) { |
297 EnableChromeVox(); | 290 EnableChromeVox(); |
298 | 291 |
299 EXPECT_TRUE(PerformAcceleratorAction(ash::FOCUS_SHELF)); | 292 EXPECT_TRUE(PerformAcceleratorAction(ash::FOCUS_SHELF)); |
300 EXPECT_EQ("Shelf,", speech_monitor_.GetNextUtterance()); | 293 EXPECT_EQ("Shelf toolbar Apps Button", speech_monitor_.GetNextUtterance()); |
301 EXPECT_EQ("Apps,", speech_monitor_.GetNextUtterance()); | |
302 EXPECT_EQ("button", speech_monitor_.GetNextUtterance()); | |
303 | 294 |
304 SendKeyPress(ui::VKEY_TAB); | 295 SendKeyPress(ui::VKEY_TAB); |
305 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*, button")); | 296 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "* Button")); |
306 } | 297 } |
307 | 298 |
308 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, NavigateAppLauncher) { | 299 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, NavigateAppLauncher) { |
309 EnableChromeVox(); | 300 EnableChromeVox(); |
310 | 301 |
311 EXPECT_TRUE(PerformAcceleratorAction(ash::FOCUS_SHELF)); | 302 EXPECT_TRUE(PerformAcceleratorAction(ash::FOCUS_SHELF)); |
312 while (true) { | 303 while (true) { |
313 std::string utterance = speech_monitor_.GetNextUtterance(); | 304 std::string utterance = speech_monitor_.GetNextUtterance(); |
314 if (utterance == "button") | 305 if (MatchPattern(utterance, "*Button")) |
315 break; | 306 break; |
316 } | 307 } |
317 | 308 |
318 SendKeyPress(ui::VKEY_RETURN); | 309 SendKeyPress(ui::VKEY_RETURN); |
319 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "Chrom*,")); | 310 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*Edit text")); |
320 EXPECT_EQ("text box", speech_monitor_.GetNextUtterance()); | |
321 | 311 |
322 SendKeyPress(ui::VKEY_DOWN); | 312 SendKeyPress(ui::VKEY_DOWN); |
323 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*, button")); | 313 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "* Button")); |
324 } | 314 } |
325 | 315 |
326 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, OpenStatusTray) { | 316 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, OpenStatusTray) { |
327 EnableChromeVox(); | 317 EnableChromeVox(); |
328 | 318 |
329 EXPECT_TRUE(PerformAcceleratorAction(ash::SHOW_SYSTEM_TRAY_BUBBLE)); | 319 EXPECT_TRUE(PerformAcceleratorAction(ash::SHOW_SYSTEM_TRAY_BUBBLE)); |
330 EXPECT_EQ("Status tray,", speech_monitor_.GetNextUtterance()); | 320 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "Status tray*")); |
331 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "time *")); | 321 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "time *")); |
332 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), | 322 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), |
333 "Battery is*full.")); | 323 "Battery is*full.")); |
334 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*, button")); | 324 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*Button")); |
335 } | 325 } |
336 | 326 |
337 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, NavigateSystemTray) { | 327 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, NavigateSystemTray) { |
338 EnableChromeVox(); | 328 EnableChromeVox(); |
339 | 329 |
340 EXPECT_TRUE(PerformAcceleratorAction(ash::SHOW_SYSTEM_TRAY_BUBBLE)); | 330 EXPECT_TRUE(PerformAcceleratorAction(ash::SHOW_SYSTEM_TRAY_BUBBLE)); |
341 while (true) { | 331 while (true) { |
342 std::string utterance = speech_monitor_.GetNextUtterance(); | 332 std::string utterance = speech_monitor_.GetNextUtterance(); |
343 if (MatchPattern(utterance, "*, button")) | 333 if (MatchPattern(utterance, "* Button")) |
344 break; | 334 break; |
345 } | 335 } |
346 | 336 |
347 // Navigate to Bluetooth sub-menu and open it. | 337 // Navigate to Bluetooth sub-menu and open it. |
348 while (true) { | 338 while (true) { |
349 SendKeyPress(ui::VKEY_TAB); | 339 SendKeyPress(ui::VKEY_TAB); |
350 std::string utterance = speech_monitor_.GetNextUtterance(); | 340 std::string utterance = speech_monitor_.GetNextUtterance(); |
351 if (MatchPattern(utterance, "*Bluetooth*, button")) | 341 if (MatchPattern(utterance, "*Bluetooth* Button")) |
dmazzoni
2014/11/29 08:03:59
BTW, are you sure you want to remove this comma be
David Tseng
2014/12/04 17:15:31
It depends. Commas between name role and state see
| |
352 break; | 342 break; |
353 } | 343 } |
354 SendKeyPress(ui::VKEY_RETURN); | 344 SendKeyPress(ui::VKEY_RETURN); |
355 | 345 |
356 // Navigate to return to previous menu button and press it. | 346 // Navigate to return to previous menu button and press it. |
357 while (true) { | 347 while (true) { |
358 SendKeyPress(ui::VKEY_TAB); | 348 SendKeyPress(ui::VKEY_TAB); |
359 std::string utterance = speech_monitor_.GetNextUtterance(); | 349 std::string utterance = speech_monitor_.GetNextUtterance(); |
360 if (MatchPattern(utterance, "Previous menu, button")) | 350 if (MatchPattern(utterance, "Previous menu Button")) |
361 break; | 351 break; |
362 } | 352 } |
363 SendKeyPress(ui::VKEY_RETURN); | 353 SendKeyPress(ui::VKEY_RETURN); |
364 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), | 354 EXPECT_TRUE( |
365 "*Bluetooth*, button")); | 355 MatchPattern(speech_monitor_.GetNextUtterance(), "*Bluetooth* Button")); |
366 } | 356 } |
367 | 357 |
368 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, ScreenBrightness) { | 358 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, ScreenBrightness) { |
369 EnableChromeVox(); | 359 EnableChromeVox(); |
370 | 360 |
371 EXPECT_TRUE(PerformAcceleratorAction(ash::BRIGHTNESS_UP)); | 361 EXPECT_TRUE(PerformAcceleratorAction(ash::BRIGHTNESS_UP)); |
372 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), | 362 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), |
373 "Brightness * percent")); | 363 "Brightness * percent")); |
374 | 364 |
375 EXPECT_TRUE(PerformAcceleratorAction(ash::BRIGHTNESS_DOWN)); | 365 EXPECT_TRUE(PerformAcceleratorAction(ash::BRIGHTNESS_DOWN)); |
376 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), | 366 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), |
377 "Brightness * percent")); | 367 "Brightness * percent")); |
378 } | 368 } |
379 | 369 |
380 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, VolumeSlider) { | 370 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, VolumeSlider) { |
381 EnableChromeVox(); | 371 EnableChromeVox(); |
382 | 372 |
383 EXPECT_TRUE(PerformAcceleratorAction(ash::VOLUME_UP)); | 373 EXPECT_TRUE(PerformAcceleratorAction(ash::VOLUME_UP)); |
384 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*%,")); | 374 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "* percent*")); |
385 EXPECT_EQ("Volume,", speech_monitor_.GetNextUtterance()); | 375 EXPECT_EQ("Volume,", speech_monitor_.GetNextUtterance()); |
386 EXPECT_EQ("slider", speech_monitor_.GetNextUtterance()); | 376 EXPECT_EQ("slider", speech_monitor_.GetNextUtterance()); |
387 } | 377 } |
388 | 378 |
389 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, OverviewMode) { | 379 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, OverviewMode) { |
390 EnableChromeVox(); | 380 EnableChromeVox(); |
391 | 381 |
392 EXPECT_TRUE(PerformAcceleratorAction(ash::TOGGLE_OVERVIEW)); | 382 EXPECT_TRUE(PerformAcceleratorAction(ash::TOGGLE_OVERVIEW)); |
393 EXPECT_EQ("Alert Entered window overview mode", | 383 EXPECT_EQ("Edit text", speech_monitor_.GetNextUtterance()); |
384 EXPECT_EQ("Entered window overview mode, window", | |
394 speech_monitor_.GetNextUtterance()); | 385 speech_monitor_.GetNextUtterance()); |
395 EXPECT_EQ(", text box", speech_monitor_.GetNextUtterance()); | |
396 | 386 |
397 SendKeyPress(ui::VKEY_TAB); | 387 SendKeyPress(ui::VKEY_TAB); |
398 EXPECT_EQ("about blank, button", speech_monitor_.GetNextUtterance()); | 388 EXPECT_EQ("about:blank Button", speech_monitor_.GetNextUtterance()); |
399 } | 389 } |
400 | 390 |
401 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, ChromeVoxShiftSearch) { | 391 IN_PROC_BROWSER_TEST_P(SpokenFeedbackTest, ChromeVoxShiftSearch) { |
402 LoadChromeVoxAndThenNavigateToURL( | 392 LoadChromeVoxAndThenNavigateToURL( |
403 GURL("data:text/html;charset=utf-8,<button autofocus>Click me</button>")); | 393 GURL("data:text/html;charset=utf-8,<button autofocus>Click me</button>")); |
404 while (true) { | 394 while (true) { |
405 std::string utterance = speech_monitor_.GetNextUtterance(); | 395 std::string utterance = speech_monitor_.GetNextUtterance(); |
406 if (utterance == "Click me") | 396 if (utterance == "Click me") |
407 break; | 397 break; |
408 } | 398 } |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
508 EnableChromeVox(); | 498 EnableChromeVox(); |
509 SimulateTouchScreenInChromeVox(); | 499 SimulateTouchScreenInChromeVox(); |
510 | 500 |
511 // Send an accessibility hover event on the system tray, which is | 501 // Send an accessibility hover event on the system tray, which is |
512 // what we get when you tap it on a touch screen when ChromeVox is on. | 502 // what we get when you tap it on a touch screen when ChromeVox is on. |
513 ash::SystemTray* tray = ash::Shell::GetInstance()->GetPrimarySystemTray(); | 503 ash::SystemTray* tray = ash::Shell::GetInstance()->GetPrimarySystemTray(); |
514 tray->NotifyAccessibilityEvent(ui::AX_EVENT_HOVER, true); | 504 tray->NotifyAccessibilityEvent(ui::AX_EVENT_HOVER, true); |
515 | 505 |
516 EXPECT_EQ("Status tray,", speech_monitor_.GetNextUtterance()); | 506 EXPECT_EQ("Status tray,", speech_monitor_.GetNextUtterance()); |
517 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "time*,")); | 507 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "time*,")); |
518 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "Battery*,")); | 508 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "Battery*")); |
519 EXPECT_EQ("button", speech_monitor_.GetNextUtterance()); | 509 EXPECT_EQ("Button", speech_monitor_.GetNextUtterance()); |
520 } | 510 } |
521 | 511 |
522 // | 512 // |
523 // Spoken feedback tests that run only in guest mode. | 513 // Spoken feedback tests that run only in guest mode. |
524 // | 514 // |
525 | 515 |
526 class GuestSpokenFeedbackTest : public LoggedInSpokenFeedbackTest { | 516 class GuestSpokenFeedbackTest : public LoggedInSpokenFeedbackTest { |
527 protected: | 517 protected: |
528 GuestSpokenFeedbackTest() {} | 518 GuestSpokenFeedbackTest() {} |
529 virtual ~GuestSpokenFeedbackTest() {} | 519 virtual ~GuestSpokenFeedbackTest() {} |
530 | 520 |
531 virtual void SetUpCommandLine(CommandLine* command_line) override { | 521 virtual void SetUpCommandLine(CommandLine* command_line) override { |
532 command_line->AppendSwitch(chromeos::switches::kGuestSession); | 522 command_line->AppendSwitch(chromeos::switches::kGuestSession); |
533 command_line->AppendSwitch(::switches::kIncognito); | 523 command_line->AppendSwitch(::switches::kIncognito); |
534 command_line->AppendSwitchASCII(chromeos::switches::kLoginProfile, "user"); | 524 command_line->AppendSwitchASCII(chromeos::switches::kLoginProfile, "user"); |
535 command_line->AppendSwitchASCII(chromeos::switches::kLoginUser, | 525 command_line->AppendSwitchASCII(chromeos::switches::kLoginUser, |
536 chromeos::login::kGuestUserName); | 526 chromeos::login::kGuestUserName); |
537 } | 527 } |
538 | 528 |
539 private: | 529 private: |
540 DISALLOW_COPY_AND_ASSIGN(GuestSpokenFeedbackTest); | 530 DISALLOW_COPY_AND_ASSIGN(GuestSpokenFeedbackTest); |
541 }; | 531 }; |
542 | 532 |
543 IN_PROC_BROWSER_TEST_F(GuestSpokenFeedbackTest, FocusToolbar) { | 533 IN_PROC_BROWSER_TEST_F(GuestSpokenFeedbackTest, FocusToolbar) { |
544 EnableChromeVox(); | 534 EnableChromeVox(); |
545 | 535 |
546 chrome::ExecuteCommand(browser(), IDC_FOCUS_TOOLBAR); | 536 chrome::ExecuteCommand(browser(), IDC_FOCUS_TOOLBAR); |
547 // Might be "Google Chrome Toolbar" or "Chromium Toolbar". | 537 |
548 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), "*oolbar*")); | 538 EXPECT_TRUE( |
549 EXPECT_EQ("Reload,", speech_monitor_.GetNextUtterance()); | 539 MatchPattern(speech_monitor_.GetNextUtterance(), |
550 EXPECT_EQ("button", speech_monitor_.GetNextUtterance()); | 540 "about:blank about:blank*Toolbar toolbar Reload Button")); |
dmazzoni
2014/11/29 08:03:59
same as above
David Tseng
2014/12/04 17:15:31
Ditto.
| |
551 } | 541 } |
552 | 542 |
553 // | 543 // |
554 // Spoken feedback tests of the out-of-box experience. | 544 // Spoken feedback tests of the out-of-box experience. |
555 // | 545 // |
556 | 546 |
557 class OobeSpokenFeedbackTest : public InProcessBrowserTest { | 547 class OobeSpokenFeedbackTest : public InProcessBrowserTest { |
558 protected: | 548 protected: |
559 OobeSpokenFeedbackTest() {} | 549 OobeSpokenFeedbackTest() {} |
560 virtual ~OobeSpokenFeedbackTest() {} | 550 virtual ~OobeSpokenFeedbackTest() {} |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
594 EXPECT_EQ("English ( United States)", speech_monitor_.GetNextUtterance()); | 584 EXPECT_EQ("English ( United States)", speech_monitor_.GetNextUtterance()); |
595 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), | 585 EXPECT_TRUE(MatchPattern(speech_monitor_.GetNextUtterance(), |
596 "Combo box * of *")); | 586 "Combo box * of *")); |
597 ASSERT_TRUE( | 587 ASSERT_TRUE( |
598 ui_test_utils::SendKeyPressToWindowSync( | 588 ui_test_utils::SendKeyPressToWindowSync( |
599 window, ui::VKEY_TAB, false, false, false, false)); | 589 window, ui::VKEY_TAB, false, false, false, false)); |
600 EXPECT_EQ("Select your keyboard:", speech_monitor_.GetNextUtterance()); | 590 EXPECT_EQ("Select your keyboard:", speech_monitor_.GetNextUtterance()); |
601 } | 591 } |
602 | 592 |
603 } // namespace chromeos | 593 } // namespace chromeos |
OLD | NEW |