| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/views/controls/menu/menu_runner.h" | 5 #include "ui/views/controls/menu/menu_runner.h" |
| 6 | 6 |
| 7 #include <stdint.h> |
| 8 |
| 9 #include "base/macros.h" |
| 7 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| 8 #include "ui/base/ui_base_types.h" | 11 #include "ui/base/ui_base_types.h" |
| 9 #include "ui/views/controls/menu/menu_delegate.h" | 12 #include "ui/views/controls/menu/menu_delegate.h" |
| 10 #include "ui/views/controls/menu/menu_item_view.h" | 13 #include "ui/views/controls/menu/menu_item_view.h" |
| 11 #include "ui/views/controls/menu/menu_types.h" | 14 #include "ui/views/controls/menu/menu_types.h" |
| 12 #include "ui/views/test/views_test_base.h" | 15 #include "ui/views/test/views_test_base.h" |
| 13 #include "ui/views/widget/widget.h" | 16 #include "ui/views/widget/widget.h" |
| 14 | 17 |
| 15 namespace views { | 18 namespace views { |
| 16 namespace test { | 19 namespace test { |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 on_menu_closed_run_result_ = result; | 59 on_menu_closed_run_result_ = result; |
| 57 } | 60 } |
| 58 | 61 |
| 59 class MenuRunnerTest : public ViewsTestBase { | 62 class MenuRunnerTest : public ViewsTestBase { |
| 60 public: | 63 public: |
| 61 MenuRunnerTest(); | 64 MenuRunnerTest(); |
| 62 ~MenuRunnerTest() override; | 65 ~MenuRunnerTest() override; |
| 63 | 66 |
| 64 // Initializes a MenuRunner with |run_types|. It takes ownership of | 67 // Initializes a MenuRunner with |run_types|. It takes ownership of |
| 65 // |menu_item_view_|. | 68 // |menu_item_view_|. |
| 66 void InitMenuRunner(int32 run_types); | 69 void InitMenuRunner(int32_t run_types); |
| 67 | 70 |
| 68 MenuItemView* menu_item_view() { return menu_item_view_; } | 71 MenuItemView* menu_item_view() { return menu_item_view_; } |
| 69 TestMenuDelegate* menu_delegate() { return menu_delegate_.get(); } | 72 TestMenuDelegate* menu_delegate() { return menu_delegate_.get(); } |
| 70 MenuRunner* menu_runner() { return menu_runner_.get(); } | 73 MenuRunner* menu_runner() { return menu_runner_.get(); } |
| 71 Widget* owner() { return owner_.get(); } | 74 Widget* owner() { return owner_.get(); } |
| 72 | 75 |
| 73 // ViewsTestBase: | 76 // ViewsTestBase: |
| 74 void SetUp() override; | 77 void SetUp() override; |
| 75 void TearDown() override; | 78 void TearDown() override; |
| 76 | 79 |
| 77 private: | 80 private: |
| 78 // Owned by MenuRunner. | 81 // Owned by MenuRunner. |
| 79 MenuItemView* menu_item_view_; | 82 MenuItemView* menu_item_view_; |
| 80 | 83 |
| 81 scoped_ptr<TestMenuDelegate> menu_delegate_; | 84 scoped_ptr<TestMenuDelegate> menu_delegate_; |
| 82 scoped_ptr<MenuRunner> menu_runner_; | 85 scoped_ptr<MenuRunner> menu_runner_; |
| 83 scoped_ptr<Widget> owner_; | 86 scoped_ptr<Widget> owner_; |
| 84 | 87 |
| 85 DISALLOW_COPY_AND_ASSIGN(MenuRunnerTest); | 88 DISALLOW_COPY_AND_ASSIGN(MenuRunnerTest); |
| 86 }; | 89 }; |
| 87 | 90 |
| 88 MenuRunnerTest::MenuRunnerTest() {} | 91 MenuRunnerTest::MenuRunnerTest() {} |
| 89 | 92 |
| 90 MenuRunnerTest::~MenuRunnerTest() {} | 93 MenuRunnerTest::~MenuRunnerTest() {} |
| 91 | 94 |
| 92 void MenuRunnerTest::InitMenuRunner(int32 run_types) { | 95 void MenuRunnerTest::InitMenuRunner(int32_t run_types) { |
| 93 menu_runner_.reset(new MenuRunner(menu_item_view_, run_types)); | 96 menu_runner_.reset(new MenuRunner(menu_item_view_, run_types)); |
| 94 } | 97 } |
| 95 | 98 |
| 96 void MenuRunnerTest::SetUp() { | 99 void MenuRunnerTest::SetUp() { |
| 97 ViewsTestBase::SetUp(); | 100 ViewsTestBase::SetUp(); |
| 98 menu_delegate_.reset(new TestMenuDelegate); | 101 menu_delegate_.reset(new TestMenuDelegate); |
| 99 menu_item_view_ = new MenuItemView(menu_delegate_.get()); | 102 menu_item_view_ = new MenuItemView(menu_delegate_.get()); |
| 100 | 103 |
| 101 owner_.reset(new Widget); | 104 owner_.reset(new Widget); |
| 102 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_POPUP); | 105 Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_POPUP); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 124 runner->Cancel(); | 127 runner->Cancel(); |
| 125 EXPECT_FALSE(runner->IsRunning()); | 128 EXPECT_FALSE(runner->IsRunning()); |
| 126 TestMenuDelegate* delegate = menu_delegate(); | 129 TestMenuDelegate* delegate = menu_delegate(); |
| 127 EXPECT_EQ(1, delegate->on_menu_closed_called()); | 130 EXPECT_EQ(1, delegate->on_menu_closed_called()); |
| 128 EXPECT_EQ(nullptr, delegate->on_menu_closed_menu()); | 131 EXPECT_EQ(nullptr, delegate->on_menu_closed_menu()); |
| 129 EXPECT_EQ(MenuRunner::NORMAL_EXIT, delegate->on_menu_closed_run_result()); | 132 EXPECT_EQ(MenuRunner::NORMAL_EXIT, delegate->on_menu_closed_run_result()); |
| 130 } | 133 } |
| 131 | 134 |
| 132 } // namespace test | 135 } // namespace test |
| 133 } // namespace views | 136 } // namespace views |
| OLD | NEW |