Index: ash/virtual_keyboard_controller_unittest.cc |
diff --git a/ash/virtual_keyboard_controller_unittest.cc b/ash/virtual_keyboard_controller_unittest.cc |
index ccfdab5f6250f073f66ae2e638fa704be5b2db61..dc45cc1413f4feeeff2d162441b667bbc1714822 100644 |
--- a/ash/virtual_keyboard_controller_unittest.cc |
+++ b/ash/virtual_keyboard_controller_unittest.cc |
@@ -185,5 +185,18 @@ TEST_F(VirtualKeyboardControllerAutoTest, SuppressedIfExternalKeyboardPresent) { |
ASSERT_FALSE(IsVirtualKeyboardSuppressed()); |
} |
+// Tests handling multiple keyboards. Catches crbug.com/430252 |
+TEST_F(VirtualKeyboardControllerAutoTest, HandleMultipleKeyboardsPresent) { |
+ std::vector<ui::KeyboardDevice> keyboards; |
+ keyboards.push_back(ui::KeyboardDevice( |
+ 1, ui::InputDeviceType::INPUT_DEVICE_INTERNAL, "keyboard")); |
+ keyboards.push_back(ui::KeyboardDevice( |
+ 2, ui::InputDeviceType::INPUT_DEVICE_EXTERNAL, "keyboard")); |
+ keyboards.push_back(ui::KeyboardDevice( |
+ 3, ui::InputDeviceType::INPUT_DEVICE_EXTERNAL, "keyboard")); |
+ UpdateKeyboardDevices(keyboards); |
+ ASSERT_FALSE(keyboard::IsKeyboardEnabled()); |
+} |
+ |
} // namespace test |
} // namespace ash |