Chromium Code Reviews| 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..e46e2076ee85d75890cf7ab3f769bb8a3ae38261 100644 |
| --- a/ui/base/accelerators/accelerator_manager_unittest.cc |
| +++ b/ui/base/accelerators/accelerator_manager_unittest.cc |
| @@ -71,8 +71,8 @@ int BuildAcceleratorModifier(int id) { |
| // AcceleratorManagerDelegate implementation that records calls to interface |
| // using the following format. |
| -// . OnAcceleratorRegistered() -> 'Register ' + id |
| -// . OnAcceleratorRegistered() -> 'Unregister' + id |
| +// . OnAcceleratorUnregistered() -> 'Unregister' + id |
| +// . OnAcceleratorVectorRegistered() -> 'Register a list of ' + ids |
|
mfomitchev
2017/01/26 21:39:49
This doesn't seem to match what's implemented in O
thanhph1
2017/01/26 22:24:05
Done. I modified "Register" test to add a vector o
|
| // where the id is specified using SetIdForAccelerator(). |
| class TestAcceleratorManagerDelegate : public AcceleratorManagerDelegate { |
| public: |
| @@ -91,17 +91,21 @@ class TestAcceleratorManagerDelegate : public AcceleratorManagerDelegate { |
| } |
| // AcceleratorManagerDelegate: |
| - void OnAcceleratorRegistered(const Accelerator& accelerator) override { |
| - if (!commands_.empty()) |
| - commands_ += " "; |
| - commands_ += "Register " + accelerator_to_id_[accelerator]; |
| - } |
| void OnAcceleratorUnregistered(const Accelerator& accelerator) override { |
| if (!commands_.empty()) |
| commands_ += " "; |
| commands_ += "Unregister " + accelerator_to_id_[accelerator]; |
| } |
| + void OnAcceleratorVectorRegistered( |
| + const std::vector<ui::Accelerator>& accelerators) override { |
| + for (auto iter = accelerators.begin(); iter != accelerators.end(); ++iter) { |
| + if (!commands_.empty()) |
| + commands_ += " "; |
| + commands_ += "Register " + accelerator_to_id_[*iter]; |
| + } |
| + } |
| + |
| private: |
| std::map<Accelerator, std::string> accelerator_to_id_; |
| std::string commands_; |
| @@ -125,7 +129,7 @@ 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, |
| + manager_.Register({accelerator_a}, AcceleratorManager::kNormalPriority, |
| &target); |
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands()); |
| @@ -138,11 +142,11 @@ 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, |
| + manager_.Register({accelerator_a}, AcceleratorManager::kNormalPriority, |
| &target1); |
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands()); |
| TestTarget target2; |
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority, |
| + manager_.Register({accelerator_a}, AcceleratorManager::kNormalPriority, |
| &target2); |
| // Registering the same command shouldn't notify the delegate. |
| EXPECT_TRUE(delegate_.GetAndClearCommands().empty()); |
| @@ -158,14 +162,14 @@ 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()); |
| + |
| + manager_.Register({accelerator_a, accelerator_b}, |
| + AcceleratorManager::kNormalPriority, &target); |
| + |
| + EXPECT_EQ("Register a Register b", delegate_.GetAndClearCommands()); |
| // Unregistering a different accelerator does not affect the other |
| // accelerator. |
| @@ -186,16 +190,15 @@ 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, |
| - &target1); |
| + manager_.Register({accelerator_a, accelerator_b}, |
| + AcceleratorManager::kNormalPriority, &target1); |
| + |
| const Accelerator accelerator_c(VKEY_C, EF_NONE); |
| delegate_.SetIdForAccelerator(accelerator_c, "c"); |
| TestTarget target2; |
| - manager_.Register(accelerator_c, AcceleratorManager::kNormalPriority, |
| + manager_.Register({accelerator_c}, AcceleratorManager::kNormalPriority, |
| &target2); |
| EXPECT_EQ("Register a Register b Register c", |
| delegate_.GetAndClearCommands()); |
| @@ -224,7 +227,7 @@ 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, |
| + manager_.Register({accelerator}, AcceleratorManager::kNormalPriority, |
| &target); |
| // The registered accelerator is processed. |
| @@ -267,12 +270,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, |
| + manager_.Register({accelerator_a}, AcceleratorManager::kNormalPriority, |
| &target); |
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands()); |
| manager_.UnregisterAll(&target); |
| EXPECT_EQ("Unregister a", delegate_.GetAndClearCommands()); |
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority, |
| + manager_.Register({accelerator_a}, AcceleratorManager::kNormalPriority, |
| &target); |
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands()); |
| } |