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

Unified Diff: chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc

Issue 2698273002: Select-to-speak: Stop speech when tapping Search or Control (Closed)
Patch Set: Trigger on tap and release of Search or Control Created 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc
diff --git a/chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc b/chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc
index d17a534334b948ccea2f322db9017581b2a3ae21..e1668387d73c621a31519c6a143503a5cad88306 100644
--- a/chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc
+++ b/chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc
@@ -11,6 +11,7 @@
#include "ash/test/ash_test_helper.h"
#include "ash/test/ash_test_views_delegate.h"
#include "base/macros.h"
+#include "chrome/browser/chromeos/accessibility/speech_monitor.h"
#include "chrome/browser/ui/aura/accessibility/automation_manager_aura.h"
#include "chrome/test/base/testing_profile.h"
#include "ui/aura/window.h"
@@ -114,6 +115,8 @@ class SelectToSpeakEventHandlerTest : public ash::test::AshTestBase {
} // namespace
+namespace chromeos {
+
TEST_F(SelectToSpeakEventHandlerTest, PressAndReleaseSearchNotHandled) {
// If the user presses and releases the Search key, with no mouse
// presses, the key events won't be handled by the SelectToSpeakEventHandler
@@ -275,3 +278,37 @@ TEST_F(SelectToSpeakEventHandlerTest, SearchPlusKeyIgnoresClicks) {
ASSERT_TRUE(event_capturer_.last_key_event());
EXPECT_FALSE(event_capturer_.last_key_event()->handled());
}
+
+TEST_F(SelectToSpeakEventHandlerTest, TappingControlStopsSpeech) {
+ SpeechMonitor monitor;
+ EXPECT_FALSE(monitor.DidStop());
+ generator_->PressKey(ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN);
+ generator_->ReleaseKey(ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN);
+ EXPECT_TRUE(monitor.DidStop());
+}
+
+TEST_F(SelectToSpeakEventHandlerTest, TappingSearchStopsSpeech) {
+ SpeechMonitor monitor;
+ EXPECT_FALSE(monitor.DidStop());
+ generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
+ generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
+ EXPECT_TRUE(monitor.DidStop());
+}
+
+TEST_F(SelectToSpeakEventHandlerTest, TappingShiftDoesNotStopSpeech) {
+ SpeechMonitor monitor;
+ generator_->PressKey(ui::VKEY_SHIFT, ui::EF_SHIFT_DOWN);
+ generator_->ReleaseKey(ui::VKEY_SHIFT, ui::EF_SHIFT_DOWN);
+ EXPECT_FALSE(monitor.DidStop());
+}
+
+TEST_F(SelectToSpeakEventHandlerTest, PressingControlZDoesNotStopSpeech) {
+ SpeechMonitor monitor;
+ generator_->PressKey(ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN);
+ generator_->PressKey(ui::VKEY_Z, ui::EF_CONTROL_DOWN);
+ generator_->ReleaseKey(ui::VKEY_Z, ui::EF_CONTROL_DOWN);
+ generator_->ReleaseKey(ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN);
+ EXPECT_FALSE(monitor.DidStop());
+}
+
+} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698