Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/strings/utf_string_conversions.h" | 5 #include "base/strings/utf_string_conversions.h" |
| 6 #include "chrome/browser/ui/views/menu_test_base.h" | 6 #include "chrome/browser/ui/views/menu_test_base.h" |
| 7 #include "chrome/test/base/chrome_unit_test_suite.h" | |
| 7 #include "ui/views/controls/menu/menu_item_view.h" | 8 #include "ui/views/controls/menu/menu_item_view.h" |
| 8 #include "ui/views/controls/menu/submenu_view.h" | 9 #include "ui/views/controls/menu/submenu_view.h" |
| 9 | 10 |
| 10 using base::ASCIIToUTF16; | 11 using base::ASCIIToUTF16; |
| 11 | 12 |
| 12 // Simple test for clicking a menu item. This template class clicks on an | 13 // Simple test for clicking a menu item. This template class clicks on an |
| 13 // item and checks that the returned id matches. The index of the item | 14 // item and checks that the returned id matches. The index of the item |
| 14 // is the template argument. | 15 // is the template argument. |
| 15 template<int INDEX> | 16 template<int INDEX> |
| 16 class MenuItemViewTestBasic : public MenuTestBase { | 17 class MenuItemViewTestBasic : public MenuTestBase { |
| 17 public: | 18 public: |
| 18 MenuItemViewTestBasic() { | 19 MenuItemViewTestBasic() { |
| 19 } | 20 } |
| 20 | 21 |
| 21 virtual ~MenuItemViewTestBasic() { | 22 virtual ~MenuItemViewTestBasic() { |
| 22 } | 23 } |
| 23 | 24 |
| 25 virtual void SetUp() OVERRIDE { | |
| 26 ChromeUnitTestSuite::InitializeProviders(); | |
|
sky
2014/03/14 21:35:56
You have this in MenuTestBase, so presumably you d
jam
2014/03/14 22:35:40
oh, i didn't have it before, but now i do. so i'll
| |
| 27 ChromeUnitTestSuite::InitializeResourceBundle(); | |
| 28 MenuTestBase::SetUp(); | |
| 29 } | |
| 30 | |
| 24 // MenuTestBase implementation | 31 // MenuTestBase implementation |
| 25 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { | 32 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { |
| 26 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); | 33 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); |
| 27 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); | 34 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); |
| 28 menu->AppendSeparator(); | 35 menu->AppendSeparator(); |
| 29 menu->AppendMenuItemWithLabel(3, ASCIIToUTF16("item 3")); | 36 menu->AppendMenuItemWithLabel(3, ASCIIToUTF16("item 3")); |
| 30 } | 37 } |
| 31 | 38 |
| 32 // Click on item INDEX. | 39 // Click on item INDEX. |
| 33 virtual void DoTestWithMenuOpen() OVERRIDE { | 40 virtual void DoTestWithMenuOpen() OVERRIDE { |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 64 // Test class for inserting a menu item while the menu is open. | 71 // Test class for inserting a menu item while the menu is open. |
| 65 template<int INSERT_INDEX, int SELECT_INDEX> | 72 template<int INSERT_INDEX, int SELECT_INDEX> |
| 66 class MenuItemViewTestInsert : public MenuTestBase { | 73 class MenuItemViewTestInsert : public MenuTestBase { |
| 67 public: | 74 public: |
| 68 MenuItemViewTestInsert() : inserted_item_(NULL) { | 75 MenuItemViewTestInsert() : inserted_item_(NULL) { |
| 69 } | 76 } |
| 70 | 77 |
| 71 virtual ~MenuItemViewTestInsert() { | 78 virtual ~MenuItemViewTestInsert() { |
| 72 } | 79 } |
| 73 | 80 |
| 81 virtual void SetUp() OVERRIDE { | |
| 82 ChromeUnitTestSuite::InitializeProviders(); | |
| 83 ChromeUnitTestSuite::InitializeResourceBundle(); | |
| 84 MenuTestBase::SetUp(); | |
| 85 } | |
| 86 | |
| 74 // MenuTestBase implementation | 87 // MenuTestBase implementation |
| 75 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { | 88 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { |
| 76 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); | 89 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); |
| 77 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); | 90 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); |
| 78 } | 91 } |
| 79 | 92 |
| 80 // Insert item at INSERT_INDEX and click item at SELECT_INDEX. | 93 // Insert item at INSERT_INDEX and click item at SELECT_INDEX. |
| 81 virtual void DoTestWithMenuOpen() OVERRIDE { | 94 virtual void DoTestWithMenuOpen() OVERRIDE { |
| 82 views::SubmenuView* submenu = menu()->GetSubmenu(); | 95 views::SubmenuView* submenu = menu()->GetSubmenu(); |
| 83 ASSERT_TRUE(submenu); | 96 ASSERT_TRUE(submenu); |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 146 class MenuItemViewTestInsertWithSubmenu : public MenuTestBase { | 159 class MenuItemViewTestInsertWithSubmenu : public MenuTestBase { |
| 147 public: | 160 public: |
| 148 MenuItemViewTestInsertWithSubmenu() : | 161 MenuItemViewTestInsertWithSubmenu() : |
| 149 submenu_(NULL), | 162 submenu_(NULL), |
| 150 inserted_item_(NULL) { | 163 inserted_item_(NULL) { |
| 151 } | 164 } |
| 152 | 165 |
| 153 virtual ~MenuItemViewTestInsertWithSubmenu() { | 166 virtual ~MenuItemViewTestInsertWithSubmenu() { |
| 154 } | 167 } |
| 155 | 168 |
| 169 virtual void SetUp() OVERRIDE { | |
| 170 ChromeUnitTestSuite::InitializeProviders(); | |
| 171 ChromeUnitTestSuite::InitializeResourceBundle(); | |
| 172 MenuTestBase::SetUp(); | |
| 173 } | |
| 174 | |
| 156 // MenuTestBase implementation | 175 // MenuTestBase implementation |
| 157 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { | 176 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { |
| 158 submenu_ = menu->AppendSubMenu(1, ASCIIToUTF16("My Submenu")); | 177 submenu_ = menu->AppendSubMenu(1, ASCIIToUTF16("My Submenu")); |
| 159 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 1")); | 178 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 1")); |
| 160 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 2")); | 179 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 2")); |
| 161 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); | 180 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); |
| 162 } | 181 } |
| 163 | 182 |
| 164 // Post submenu. | 183 // Post submenu. |
| 165 virtual void DoTestWithMenuOpen() OVERRIDE { | 184 virtual void DoTestWithMenuOpen() OVERRIDE { |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 205 // Test class for removing a menu item while the menu is open. | 224 // Test class for removing a menu item while the menu is open. |
| 206 template<int REMOVE_INDEX, int SELECT_INDEX> | 225 template<int REMOVE_INDEX, int SELECT_INDEX> |
| 207 class MenuItemViewTestRemove : public MenuTestBase { | 226 class MenuItemViewTestRemove : public MenuTestBase { |
| 208 public: | 227 public: |
| 209 MenuItemViewTestRemove() { | 228 MenuItemViewTestRemove() { |
| 210 } | 229 } |
| 211 | 230 |
| 212 virtual ~MenuItemViewTestRemove() { | 231 virtual ~MenuItemViewTestRemove() { |
| 213 } | 232 } |
| 214 | 233 |
| 234 virtual void SetUp() OVERRIDE { | |
| 235 ChromeUnitTestSuite::InitializeProviders(); | |
| 236 ChromeUnitTestSuite::InitializeResourceBundle(); | |
| 237 MenuTestBase::SetUp(); | |
| 238 } | |
| 239 | |
| 215 // MenuTestBase implementation | 240 // MenuTestBase implementation |
| 216 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { | 241 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { |
| 217 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); | 242 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); |
| 218 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); | 243 menu->AppendMenuItemWithLabel(2, ASCIIToUTF16("item 2")); |
| 219 menu->AppendMenuItemWithLabel(3, ASCIIToUTF16("item 3")); | 244 menu->AppendMenuItemWithLabel(3, ASCIIToUTF16("item 3")); |
| 220 } | 245 } |
| 221 | 246 |
| 222 // Remove item at REMOVE_INDEX and click item at SELECT_INDEX. | 247 // Remove item at REMOVE_INDEX and click item at SELECT_INDEX. |
| 223 virtual void DoTestWithMenuOpen() OVERRIDE { | 248 virtual void DoTestWithMenuOpen() OVERRIDE { |
| 224 views::SubmenuView* submenu = menu()->GetSubmenu(); | 249 views::SubmenuView* submenu = menu()->GetSubmenu(); |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 271 // Test class for removing a menu item while a submenu is open. | 296 // Test class for removing a menu item while a submenu is open. |
| 272 template<int REMOVE_INDEX> | 297 template<int REMOVE_INDEX> |
| 273 class MenuItemViewTestRemoveWithSubmenu : public MenuTestBase { | 298 class MenuItemViewTestRemoveWithSubmenu : public MenuTestBase { |
| 274 public: | 299 public: |
| 275 MenuItemViewTestRemoveWithSubmenu() : submenu_(NULL) { | 300 MenuItemViewTestRemoveWithSubmenu() : submenu_(NULL) { |
| 276 } | 301 } |
| 277 | 302 |
| 278 virtual ~MenuItemViewTestRemoveWithSubmenu() { | 303 virtual ~MenuItemViewTestRemoveWithSubmenu() { |
| 279 } | 304 } |
| 280 | 305 |
| 306 virtual void SetUp() OVERRIDE { | |
| 307 ChromeUnitTestSuite::InitializeProviders(); | |
| 308 ChromeUnitTestSuite::InitializeResourceBundle(); | |
| 309 MenuTestBase::SetUp(); | |
| 310 } | |
| 311 | |
| 281 // MenuTestBase implementation | 312 // MenuTestBase implementation |
| 282 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { | 313 virtual void BuildMenu(views::MenuItemView* menu) OVERRIDE { |
| 283 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); | 314 menu->AppendMenuItemWithLabel(1, ASCIIToUTF16("item 1")); |
| 284 submenu_ = menu->AppendSubMenu(2, ASCIIToUTF16("My Submenu")); | 315 submenu_ = menu->AppendSubMenu(2, ASCIIToUTF16("My Submenu")); |
| 285 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 1")); | 316 submenu_->AppendMenuItemWithLabel(101, ASCIIToUTF16("submenu item 1")); |
| 286 submenu_->AppendMenuItemWithLabel(102, ASCIIToUTF16("submenu item 2")); | 317 submenu_->AppendMenuItemWithLabel(102, ASCIIToUTF16("submenu item 2")); |
| 287 } | 318 } |
| 288 | 319 |
| 289 // Post submenu. | 320 // Post submenu. |
| 290 virtual void DoTestWithMenuOpen() OVERRIDE { | 321 virtual void DoTestWithMenuOpen() OVERRIDE { |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 324 private: | 355 private: |
| 325 views::MenuItemView* submenu_; | 356 views::MenuItemView* submenu_; |
| 326 | 357 |
| 327 DISALLOW_COPY_AND_ASSIGN(MenuItemViewTestRemoveWithSubmenu); | 358 DISALLOW_COPY_AND_ASSIGN(MenuItemViewTestRemoveWithSubmenu); |
| 328 }; | 359 }; |
| 329 | 360 |
| 330 typedef MenuItemViewTestRemoveWithSubmenu<0> MenuItemViewTestRemoveWithSubmenu0; | 361 typedef MenuItemViewTestRemoveWithSubmenu<0> MenuItemViewTestRemoveWithSubmenu0; |
| 331 typedef MenuItemViewTestRemoveWithSubmenu<1> MenuItemViewTestRemoveWithSubmenu1; | 362 typedef MenuItemViewTestRemoveWithSubmenu<1> MenuItemViewTestRemoveWithSubmenu1; |
| 332 VIEW_TEST(MenuItemViewTestRemoveWithSubmenu0, RemoveItemWithSubmenu0) | 363 VIEW_TEST(MenuItemViewTestRemoveWithSubmenu0, RemoveItemWithSubmenu0) |
| 333 VIEW_TEST(MenuItemViewTestRemoveWithSubmenu1, RemoveItemWithSubmenu1) | 364 VIEW_TEST(MenuItemViewTestRemoveWithSubmenu1, RemoveItemWithSubmenu1) |
| OLD | NEW |