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

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

Issue 2586333003: Make mash register initial batch of accelerators in single shot. (Closed)
Patch Set: Remove temporary vector. Add comments. Add AddAcceleratorToVector to use in OnAcceleratorRegistered… Created 4 years 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
index 5383403be6799c3ebcd0900b668ef3a47f622eea..41b5e4ba448f6579de4c688c880930a0da442660 100644
--- a/ui/base/accelerators/accelerator_manager_unittest.cc
+++ b/ui/base/accelerators/accelerator_manager_unittest.cc
@@ -90,6 +90,17 @@ class TestAcceleratorManagerDelegate : public AcceleratorManagerDelegate {
return commands;
}
+ void OnAcceleratorsRegistered(
+ const std::vector<ui::Accelerator>& accelerators) override {
+ for (auto iter = accelerators.begin(); iter != accelerators.end(); ++iter)
+ OnAcceleratorRegistered(*iter);
+ }
+
+ void OnAcceleratorsUnregistered(
+ std::vector<ui::Accelerator>& accelerators) override {
+ for (auto iter = accelerators.begin(); iter != accelerators.end(); ++iter)
+ OnAcceleratorUnregistered(*iter);
+ }
// AcceleratorManagerDelegate:
mfomitchev 2016/12/22 21:18:55 The comment should be preceeding the first method
thanhph 2016/12/24 18:52:16 Done, cool!
void OnAcceleratorRegistered(const Accelerator& accelerator) override {
if (!commands_.empty())
@@ -125,8 +136,8 @@ TEST_F(AcceleratorManagerTest, Register) {
const Accelerator accelerator_a(VKEY_A, EF_NONE);
TestTarget target;
delegate_.SetIdForAccelerator(accelerator_a, "a");
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
+ const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
// The registered accelerator is processed.
@@ -138,11 +149,12 @@ TEST_F(AcceleratorManagerTest, RegisterMultipleTarget) {
const Accelerator accelerator_a(VKEY_A, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_a, "a");
TestTarget target1;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
+ const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
&target1);
EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
TestTarget target2;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
&target2);
// Registering the same command shouldn't notify the delegate.
EXPECT_TRUE(delegate_.GetAndClearCommands().empty());
@@ -158,14 +170,16 @@ TEST_F(AcceleratorManagerTest, Unregister) {
const Accelerator accelerator_a(VKEY_A, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_a, "a");
TestTarget target;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
- EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
+
const Accelerator accelerator_b(VKEY_B, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_b, "b");
- manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
- &target);
- EXPECT_EQ("Register b", delegate_.GetAndClearCommands());
+
+ const std::vector<ui::Accelerator>& accelerators = {accelerator_a,
+ accelerator_b};
+
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
+
+ EXPECT_EQ("Register a Register b", delegate_.GetAndClearCommands());
// Unregistering a different accelerator does not affect the other
// accelerator.
@@ -186,17 +200,25 @@ TEST_F(AcceleratorManagerTest, UnregisterAll) {
const Accelerator accelerator_a(VKEY_A, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_a, "a");
TestTarget target1;
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target1);
+
const Accelerator accelerator_b(VKEY_B, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_b, "b");
- manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
+
+ const std::vector<ui::Accelerator>& accelerators = {accelerator_a,
+ accelerator_b};
+
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
&target1);
+
const Accelerator accelerator_c(VKEY_C, EF_NONE);
delegate_.SetIdForAccelerator(accelerator_c, "c");
+
+ const std::vector<ui::Accelerator>& accelerators_2 = {accelerator_c};
+
TestTarget target2;
- manager_.Register(accelerator_c, AcceleratorManager::kNormalPriority,
+ manager_.Register(accelerators_2, AcceleratorManager::kNormalPriority,
&target2);
+
EXPECT_EQ("Register a Register b Register c",
delegate_.GetAndClearCommands());
manager_.UnregisterAll(&target1);
@@ -224,7 +246,8 @@ TEST_F(AcceleratorManagerTest, Process) {
for (size_t i = 0; i < (1 << arraysize(kAcceleratorModifiers)); ++i) {
const int modifiers = BuildAcceleratorModifier(i);
Accelerator accelerator(GetAccelerator(VKEY_A, modifiers));
- manager_.Register(accelerator, AcceleratorManager::kNormalPriority,
+ const std::vector<ui::Accelerator>& accelerators = {accelerator};
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
&target);
// The registered accelerator is processed.
@@ -267,13 +290,12 @@ TEST_F(AcceleratorManagerTest, Reregister) {
const Accelerator accelerator_a(VKEY_A, EF_NONE);
TestTarget target;
delegate_.SetIdForAccelerator(accelerator_a, "a");
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
+ const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
manager_.UnregisterAll(&target);
EXPECT_EQ("Unregister a", delegate_.GetAndClearCommands());
- manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
- &target);
+ manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
}

Powered by Google App Engine
This is Rietveld 408576698