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 |