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

Unified Diff: ui/base/accelerators/accelerator_manager_unittest.cc

Issue 851853002: It is time. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Trying to reup because the last upload failed. Created 5 years, 11 months 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: ui/base/accelerators/accelerator_manager_unittest.cc
diff --git a/ui/base/accelerators/accelerator_manager_unittest.cc b/ui/base/accelerators/accelerator_manager_unittest.cc
deleted file mode 100644
index ec5a47b1170ee59336667bb0ec0cf88a6cdcbe82..0000000000000000000000000000000000000000
--- a/ui/base/accelerators/accelerator_manager_unittest.cc
+++ /dev/null
@@ -1,183 +0,0 @@
-// Copyright (c) 2012 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 "ui/base/accelerators/accelerator_manager.h"
-
-#include "base/compiler_specific.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/events/event_constants.h"
-#include "ui/events/keycodes/keyboard_codes.h"
-
-namespace ui {
-namespace test {
-
-namespace {
-
-class TestTarget : public AcceleratorTarget {
- public:
- TestTarget() : accelerator_pressed_count_(0) {}
- ~TestTarget() override {}
-
- int accelerator_pressed_count() const {
- return accelerator_pressed_count_;
- }
-
- void set_accelerator_pressed_count(int accelerator_pressed_count) {
- accelerator_pressed_count_ = accelerator_pressed_count;
- }
-
- // Overridden from AcceleratorTarget:
- bool AcceleratorPressed(const Accelerator& accelerator) override;
- bool CanHandleAccelerators() const override;
-
- private:
- int accelerator_pressed_count_;
-
- DISALLOW_COPY_AND_ASSIGN(TestTarget);
-};
-
-bool TestTarget::AcceleratorPressed(const Accelerator& accelerator) {
- ++accelerator_pressed_count_;
- return true;
-}
-
-bool TestTarget::CanHandleAccelerators() const {
- return true;
-}
-
-Accelerator GetAccelerator(KeyboardCode code, int mask) {
- return Accelerator(code, mask);
-}
-
-} // namespace
-
-class AcceleratorManagerTest : public testing::Test {
- public:
- AcceleratorManagerTest() {}
- virtual ~AcceleratorManagerTest() {}
-
- AcceleratorManager manager_;
-};
-
-TEST_F(AcceleratorManagerTest, Register) {
- const Accelerator accelerator_a(VKEY_A, EF_NONE);
- TestTarget target;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
-
- // The registered accelerator is processed.
- EXPECT_TRUE(manager_.Process(accelerator_a));
- EXPECT_EQ(1, target.accelerator_pressed_count());
-}
-
-TEST_F(AcceleratorManagerTest, RegisterMultipleTarget) {
- const Accelerator accelerator_a(VKEY_A, EF_NONE);
- TestTarget target1;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target1);
- TestTarget target2;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target2);
-
- // If multiple targets are registered with the same accelerator, the target
- // registered later processes the accelerator.
- EXPECT_TRUE(manager_.Process(accelerator_a));
- EXPECT_EQ(0, target1.accelerator_pressed_count());
- EXPECT_EQ(1, target2.accelerator_pressed_count());
-}
-
-TEST_F(AcceleratorManagerTest, Unregister) {
- const Accelerator accelerator_a(VKEY_A, EF_NONE);
- TestTarget target;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
- const Accelerator accelerator_b(VKEY_B, EF_NONE);
- manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
- &target);
-
- // Unregistering a different accelerator does not affect the other
- // accelerator.
- manager_.Unregister(accelerator_b, &target);
- EXPECT_TRUE(manager_.Process(accelerator_a));
- EXPECT_EQ(1, target.accelerator_pressed_count());
-
- // The unregistered accelerator is no longer processed.
- target.set_accelerator_pressed_count(0);
- manager_.Unregister(accelerator_a, &target);
- EXPECT_FALSE(manager_.Process(accelerator_a));
- EXPECT_EQ(0, target.accelerator_pressed_count());
-}
-
-TEST_F(AcceleratorManagerTest, UnregisterAll) {
- const Accelerator accelerator_a(VKEY_A, EF_NONE);
- TestTarget target1;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target1);
- const Accelerator accelerator_b(VKEY_B, EF_NONE);
- manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
- &target1);
- const Accelerator accelerator_c(VKEY_C, EF_NONE);
- TestTarget target2;
- manager_.Register(accelerator_c, AcceleratorManager::kNormalPriority,
- &target2);
- manager_.UnregisterAll(&target1);
-
- // All the accelerators registered for |target1| are no longer processed.
- EXPECT_FALSE(manager_.Process(accelerator_a));
- EXPECT_FALSE(manager_.Process(accelerator_b));
- EXPECT_EQ(0, target1.accelerator_pressed_count());
-
- // UnregisterAll with a different target does not affect the other target.
- EXPECT_TRUE(manager_.Process(accelerator_c));
- EXPECT_EQ(1, target2.accelerator_pressed_count());
-}
-
-TEST_F(AcceleratorManagerTest, Process) {
- TestTarget target;
-
- // Test all 2*2*2 cases (shift/control/alt = on/off).
- for (int mask = 0; mask < 2 * 2 * 2; ++mask) {
- Accelerator accelerator(GetAccelerator(VKEY_A, mask));
- const base::string16 text = accelerator.GetShortcutText();
- manager_.Register(accelerator, AcceleratorManager::kNormalPriority,
- &target);
-
- // The registered accelerator is processed.
- const int last_count = target.accelerator_pressed_count();
- EXPECT_TRUE(manager_.Process(accelerator)) << text;
- EXPECT_EQ(last_count + 1, target.accelerator_pressed_count()) << text;
-
- // The non-registered accelerators are not processed.
- accelerator.set_type(ET_UNKNOWN);
- EXPECT_FALSE(manager_.Process(accelerator)) << text; // different type
- accelerator.set_type(ET_TRANSLATED_KEY_PRESS);
- EXPECT_FALSE(manager_.Process(accelerator)) << text; // different type
- accelerator.set_type(ET_KEY_RELEASED);
- EXPECT_FALSE(manager_.Process(accelerator)) << text; // different type
- accelerator.set_type(ET_TRANSLATED_KEY_RELEASE);
- EXPECT_FALSE(manager_.Process(accelerator)) << text; // different type
-
- EXPECT_FALSE(manager_.Process(GetAccelerator(VKEY_UNKNOWN, mask)))
- << text; // different vkey
- EXPECT_FALSE(manager_.Process(GetAccelerator(VKEY_B, mask)))
- << text; // different vkey
- EXPECT_FALSE(manager_.Process(GetAccelerator(VKEY_SHIFT, mask)))
- << text; // different vkey
-
- for (int test_mask = 0; test_mask < 2 * 2 * 2; ++test_mask) {
- if (test_mask == mask)
- continue;
- const Accelerator test_accelerator(GetAccelerator(VKEY_A, test_mask));
- const base::string16 test_text = test_accelerator.GetShortcutText();
- EXPECT_FALSE(manager_.Process(test_accelerator))
- << text << ", " << test_text; // different modifiers
- }
-
- EXPECT_EQ(last_count + 1, target.accelerator_pressed_count()) << text;
- manager_.UnregisterAll(&target);
- }
-}
-
-} // namespace test
-} // namespace ui
« no previous file with comments | « ui/base/accelerators/accelerator_manager.cc ('k') | ui/base/accelerators/menu_label_accelerator_util_linux.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698