Index: ui/events/keycodes/dom/keycode_converter_unittest.cc |
diff --git a/ui/events/keycodes/dom4/keycode_converter_unittest.cc b/ui/events/keycodes/dom/keycode_converter_unittest.cc |
similarity index 59% |
rename from ui/events/keycodes/dom4/keycode_converter_unittest.cc |
rename to ui/events/keycodes/dom/keycode_converter_unittest.cc |
index 1c02eca3f6bd7b263e24dc465e61c72e9ae2ed0b..f5da9a09226a447f0b7f82d77038ec84f134f507 100644 |
--- a/ui/events/keycodes/dom4/keycode_converter_unittest.cc |
+++ b/ui/events/keycodes/dom/keycode_converter_unittest.cc |
@@ -2,19 +2,25 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "ui/events/keycodes/dom4/keycode_converter.h" |
+#include "ui/events/keycodes/dom/keycode_converter.h" |
#include <map> |
#include "base/basictypes.h" |
#include "testing/gtest/include/gtest/gtest.h" |
+#include "ui/events/keycodes/dom/dom_code.h" |
+#include "ui/events/keycodes/dom/dom_key.h" |
using ui::KeycodeConverter; |
namespace { |
-#if defined(OS_LINUX) |
-const size_t kExpectedMappedKeyCount = 145; |
+#if defined(OS_WIN) |
+const size_t kExpectedMappedKeyCount = 138; |
+#elif defined(OS_LINUX) |
+const size_t kExpectedMappedKeyCount = 168; |
+#elif defined(OS_MACOSX) |
+const size_t kExpectedMappedKeyCount = 118; |
#else |
const size_t kExpectedMappedKeyCount = 0; |
#endif |
@@ -31,10 +37,8 @@ TEST(UsbKeycodeMap, Basic) { |
keycode_map[0].usb_keycode); |
EXPECT_EQ(ui::KeycodeConverter::InvalidNativeKeycode(), |
keycode_map[0].native_keycode); |
- EXPECT_STREQ(ui::KeycodeConverter::InvalidKeyboardEventCode(), |
- "Unidentified"); |
EXPECT_EQ(ui::KeycodeConverter::InvalidNativeKeycode(), |
- ui::KeycodeConverter::CodeToNativeKeycode("Unidentified")); |
+ ui::KeycodeConverter::DomCodeToNativeKeycode(ui::DomCode::NONE)); |
// Verify that there are no duplicate entries in the mapping. |
std::map<uint32_t, uint16_t> usb_to_native; |
@@ -51,17 +55,14 @@ TEST(UsbKeycodeMap, Basic) { |
entry->native_keycode, |
ui::KeycodeConverter::UsbKeycodeToNativeKeycode(entry->usb_keycode)); |
- // Verify CodeToNativeKeycode and NativeKeycodeToCode work correctly. |
+ // Verify DomCodeToNativeKeycode works correctly. |
+ ui::DomCode dom_code = |
+ ui::KeycodeConverter::CodeStringToDomCode(entry->code); |
if (entry->code) { |
EXPECT_EQ(entry->native_keycode, |
- ui::KeycodeConverter::CodeToNativeKeycode(entry->code)); |
- EXPECT_STREQ( |
- entry->code, |
- ui::KeycodeConverter::NativeKeycodeToCode(entry->native_keycode)); |
- } |
- else { |
- EXPECT_EQ(ui::KeycodeConverter::InvalidNativeKeycode(), |
- ui::KeycodeConverter::CodeToNativeKeycode(entry->code)); |
+ ui::KeycodeConverter::DomCodeToNativeKeycode(dom_code)); |
+ } else { |
+ EXPECT_EQ(ui::DomCode::NONE, dom_code); |
} |
// Verify that the USB or native codes aren't duplicated. |
@@ -105,4 +106,47 @@ TEST(UsbKeycodeMap, UsBackslashIsNonUsHash) { |
ui::KeycodeConverter::UsbKeycodeToNativeKeycode(kUsbNonUsHash)); |
} |
+TEST(KeycodeConverter, DomCode) { |
+ // Test invalid and unknown arguments to CodeStringToDomCode() |
+ EXPECT_EQ(ui::DomCode::NONE, |
+ ui::KeycodeConverter::CodeStringToDomCode(nullptr)); |
+ EXPECT_EQ(ui::DomCode::NONE, ui::KeycodeConverter::CodeStringToDomCode("-")); |
+ EXPECT_EQ(ui::DomCode::NONE, ui::KeycodeConverter::CodeStringToDomCode("")); |
+ // Round-trip test DOM Level 3 .code strings. |
+ const ui::KeycodeMapEntry* keycode_map = |
+ ui::KeycodeConverter::GetKeycodeMapForTest(); |
+ size_t numEntries = ui::KeycodeConverter::NumKeycodeMapEntriesForTest(); |
+ for (size_t i = 0; i < numEntries; ++i) { |
+ SCOPED_TRACE(i); |
+ const ui::KeycodeMapEntry* entry = &keycode_map[i]; |
+ ui::DomCode code = ui::KeycodeConverter::CodeStringToDomCode(entry->code); |
+ if (entry->code) { |
+ EXPECT_STREQ(entry->code, |
+ ui::KeycodeConverter::DomCodeToCodeString(code)); |
+ } else { |
+ EXPECT_EQ(static_cast<int>(ui::DomCode::NONE), |
+ static_cast<int>(code)); |
+ } |
+ } |
+} |
+ |
+TEST(KeycodeConverter, DomKey) { |
+ // Test invalid and unknown arguments to KeyStringToDomKey() |
+ EXPECT_EQ(ui::DomKey::NONE, ui::KeycodeConverter::KeyStringToDomKey(nullptr)); |
+ EXPECT_EQ(ui::DomKey::NONE, ui::KeycodeConverter::KeyStringToDomKey("-")); |
+ // Round-trip test DOM Level 3 .key strings. |
+ const char* s = nullptr; |
+ for (size_t i = 0; |
+ (s = ui::KeycodeConverter::DomKeyStringForTest(i)) != nullptr; |
+ ++i) { |
+ SCOPED_TRACE(i); |
+ ui::DomKey key = ui::KeycodeConverter::KeyStringToDomKey(s); |
+ if (s) { |
+ EXPECT_STREQ(s, ui::KeycodeConverter::DomKeyToKeyString(key)); |
+ } else { |
+ EXPECT_EQ(ui::DomKey::NONE, key); |
+ } |
+ } |
+} |
+ |
} // namespace |