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

Unified Diff: chrome/browser/chromeos/input_method/xkeyboard_unittest.cc

Issue 8497003: Add unit tests for SetAutoRepeatEnabled and SetAutoRepeatRate. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 9 years, 1 month 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/input_method/xkeyboard_unittest.cc
diff --git a/chrome/browser/chromeos/input_method/xkeyboard_unittest.cc b/chrome/browser/chromeos/input_method/xkeyboard_unittest.cc
index 901c27b83c661bc1cc42c69fd9ee4cc3a903ac51..e833d995f369e7ee580d591786a44f0762d94e97 100644
--- a/chrome/browser/chromeos/input_method/xkeyboard_unittest.cc
+++ b/chrome/browser/chromeos/input_method/xkeyboard_unittest.cc
@@ -42,6 +42,8 @@ class TestableXKeyboard : public XKeyboard {
// Change access rights.
using XKeyboard::CreateFullXkbLayoutName;
using XKeyboard::ContainsModifierKeyAsReplacement;
+ using XKeyboard::GetAutoRepeatEnabled;
+ using XKeyboard::GetAutoRepeatRate;
};
class XKeyboardTest : public testing::Test {
@@ -353,5 +355,39 @@ TEST_F(XKeyboardTest, TestContainsModifierKeyAsReplacement) {
GetMap(kSearchKey, kVoidKey, kVoidKey), kSearchKey));
}
+TEST_F(XKeyboardTest, TestSetAutoRepeatEnabled) {
+ if (!DisplayAvailable()) {
Zachary Kuznia 2011/11/08 03:55:17 Should this fail the test?
Yusuke Sato 2011/11/13 23:24:56 The intension of this check is that to allow devel
+ return;
+ }
+ const bool state = TestableXKeyboard::GetAutoRepeatEnabled();
+ TestableXKeyboard::SetAutoRepeatEnabled(!state);
+ EXPECT_EQ(!state, TestableXKeyboard::GetAutoRepeatEnabled());
+ // Restore the initial state.
+ TestableXKeyboard::SetAutoRepeatEnabled(state);
+ EXPECT_EQ(state, TestableXKeyboard::GetAutoRepeatEnabled());
+}
+
+TEST_F(XKeyboardTest, TestSetAutoRepeatRate) {
+ if (!DisplayAvailable()) {
Zachary Kuznia 2011/11/08 03:55:17 ditto
Yusuke Sato 2011/11/13 23:24:56 the same as above.
+ return;
+ }
+ AutoRepeatRate rate;
+ EXPECT_TRUE(TestableXKeyboard::GetAutoRepeatRate(&rate));
+
+ AutoRepeatRate tmp(rate);
+ ++tmp.initial_delay_in_ms;
+ ++tmp.repeat_interval_in_ms;
+ EXPECT_TRUE(TestableXKeyboard::SetAutoRepeatRate(tmp));
+ EXPECT_TRUE(TestableXKeyboard::GetAutoRepeatRate(&tmp));
+ EXPECT_EQ(rate.initial_delay_in_ms + 1, tmp.initial_delay_in_ms);
+ EXPECT_EQ(rate.repeat_interval_in_ms + 1, tmp.repeat_interval_in_ms);
+
+ // Restore the initial state.
+ EXPECT_TRUE(TestableXKeyboard::SetAutoRepeatRate(rate));
+ EXPECT_TRUE(TestableXKeyboard::GetAutoRepeatRate(&tmp));
+ EXPECT_EQ(rate.initial_delay_in_ms, tmp.initial_delay_in_ms);
+ EXPECT_EQ(rate.repeat_interval_in_ms, tmp.repeat_interval_in_ms);
+}
+
} // namespace input_method
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698