diff options
author | bryeung@chromium.org <bryeung@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-03 00:38:27 +0000 |
---|---|---|
committer | bryeung@chromium.org <bryeung@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-03 00:38:27 +0000 |
commit | 7f05552488f8f9ea5000512fd1972894aee7ee82 (patch) | |
tree | 0e2ed5a562335907e44307a1d99e9c6ab8d8a3ec /app/keyboard_code_conversion_unittest.cc | |
parent | 9d7e8fd4a448491817b816585d6f375d71c0a97a (diff) | |
download | chromium_src-7f05552488f8f9ea5000512fd1972894aee7ee82.zip chromium_src-7f05552488f8f9ea5000512fd1972894aee7ee82.tar.gz chromium_src-7f05552488f8f9ea5000512fd1972894aee7ee82.tar.bz2 |
Re-lands 58186:
Original message:
"""
Move the keyboard files from base/ to app/.
Also moves the associated classes/enums from base:: to app::.
TEST=try bots compile
BUG=NONE
Review URL: http://codereview.chromium.org/3165064
"""
TBR=phajdan.jr@chromium.org
Review URL: http://codereview.chromium.org/3354005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58438 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'app/keyboard_code_conversion_unittest.cc')
-rw-r--r-- | app/keyboard_code_conversion_unittest.cc | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/app/keyboard_code_conversion_unittest.cc b/app/keyboard_code_conversion_unittest.cc new file mode 100644 index 0000000..0f8d6af --- /dev/null +++ b/app/keyboard_code_conversion_unittest.cc @@ -0,0 +1,43 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "app/keyboard_code_conversion.h" +#include "app/keyboard_codes.h" +#include "base/logging.h" +#include "testing/gtest/include/gtest/gtest.h" + +namespace app { + +TEST(KeyCodeFromKeyIdentifierTest, MatchOnIdentifier) { + EXPECT_EQ(app::VKEY_APPS, KeyCodeFromKeyIdentifier("Apps")); + EXPECT_EQ(app::VKEY_UNKNOWN, KeyCodeFromKeyIdentifier("Nonsense")); +} + +TEST(KeyCodeFromKeyIdentifierTest, MatchOnCharacter) { + EXPECT_EQ(app::VKEY_A, KeyCodeFromKeyIdentifier("a")); + EXPECT_EQ(app::VKEY_A, KeyCodeFromKeyIdentifier("A")); + EXPECT_EQ(app::VKEY_OEM_PERIOD, KeyCodeFromKeyIdentifier(">")); + + std::string non_printing_char(" "); + non_printing_char[0] = static_cast<char>(1); + EXPECT_EQ(app::VKEY_UNKNOWN, KeyCodeFromKeyIdentifier(non_printing_char)); +} + +TEST(KeyCodeFromKeyIdentifierTest, MatchOnUnicodeCodepoint) { + EXPECT_EQ(app::VKEY_A, KeyCodeFromKeyIdentifier("U+0041")); + EXPECT_EQ(app::VKEY_A, KeyCodeFromKeyIdentifier("U+0061")); + EXPECT_EQ(app::VKEY_DELETE, KeyCodeFromKeyIdentifier("U+007F")); + + // this one exists in the map, but has no valid VKEY + EXPECT_EQ(app::VKEY_UNKNOWN, KeyCodeFromKeyIdentifier("U+030A")); + + // this one is not in the map + EXPECT_EQ(app::VKEY_UNKNOWN, KeyCodeFromKeyIdentifier("U+0001")); +} + +TEST(KeyCodeFromKeyIdentifierTest, DoesNotMatchEmptyString) { + EXPECT_EQ(app::VKEY_UNKNOWN, KeyCodeFromKeyIdentifier("")); +} + +} // namespace app |