| Index: trunk/src/chrome/browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc
|
| ===================================================================
|
| --- trunk/src/chrome/browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc (revision 227696)
|
| +++ trunk/src/chrome/browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc (working copy)
|
| @@ -13,11 +13,11 @@
|
| #include "chrome/test/base/browser_with_test_window_test.h"
|
| #include "chrome/test/base/testing_profile.h"
|
| #include "ui/views/controls/menu/menu_runner.h"
|
| -#include "ui/views/controls/menu/submenu_view.h"
|
|
|
| class BookmarkMenuDelegateTest : public BrowserWithTestWindowTest {
|
| public:
|
| - BookmarkMenuDelegateTest() : model_(NULL) {}
|
| + BookmarkMenuDelegateTest() : model_(NULL) {
|
| + }
|
|
|
| virtual void SetUp() OVERRIDE {
|
| BrowserWithTestWindowTest::SetUp();
|
| @@ -28,6 +28,9 @@
|
| test::WaitForBookmarkModelToLoad(model_);
|
|
|
| AddTestData();
|
| +
|
| + bookmark_menu_delegate_.reset(
|
| + new BookmarkMenuDelegate(browser(), NULL, NULL, 0));
|
| }
|
|
|
| virtual void TearDown() OVERRIDE {
|
| @@ -39,21 +42,6 @@
|
| }
|
|
|
| protected:
|
| - void NewDelegate(int min_menu_id, int max_menu_id) {
|
| - bookmark_menu_delegate_.reset(
|
| - new BookmarkMenuDelegate(browser(), NULL, NULL,
|
| - min_menu_id, max_menu_id));
|
| - }
|
| -
|
| - void NewAndInitDelegateForPermanent(int min_menu_id,
|
| - int max_menu_id) {
|
| - const BookmarkNode* node = model_->bookmark_bar_node();
|
| - NewDelegate(min_menu_id, max_menu_id);
|
| - bookmark_menu_delegate_->Init(&test_delegate_, NULL, node, 0,
|
| - BookmarkMenuDelegate::SHOW_PERMANENT_FOLDERS,
|
| - BOOKMARK_LAUNCH_LOCATION_NONE);
|
| - }
|
| -
|
| BookmarkModel* model_;
|
|
|
| scoped_ptr<BookmarkMenuDelegate> bookmark_menu_delegate_;
|
| @@ -91,8 +79,6 @@
|
| model_->AddURL(of1, 0, ASCIIToUTF16("of1a"), GURL(test_base + "of1a"));
|
| }
|
|
|
| - views::MenuDelegate test_delegate_;
|
| -
|
| DISALLOW_COPY_AND_ASSIGN(BookmarkMenuDelegateTest);
|
| };
|
|
|
| @@ -101,7 +87,6 @@
|
| TEST_F(BookmarkMenuDelegateTest, RemoveBookmarks) {
|
| views::MenuDelegate test_delegate;
|
| const BookmarkNode* node = model_->bookmark_bar_node()->GetChild(1);
|
| - NewDelegate(0, kint32max);
|
| bookmark_menu_delegate_->Init(&test_delegate, NULL, node, 0,
|
| BookmarkMenuDelegate::HIDE_PERMANENT_FOLDERS,
|
| BOOKMARK_LAUNCH_LOCATION_NONE);
|
| @@ -110,111 +95,4 @@
|
| bookmark_menu_delegate_->WillRemoveBookmarks(nodes_to_remove);
|
| nodes_to_remove.clear();
|
| bookmark_menu_delegate_->DidRemoveBookmarks();
|
| -
|
| }
|
| -
|
| -// Verifies menu ID's of items in menu fall within the specified range.
|
| -TEST_F(BookmarkMenuDelegateTest, MenuIdRange) {
|
| - // Start with maximum menu Id of 10 - the number of items that AddTestData()
|
| - // populated. Everything should be created.
|
| - NewAndInitDelegateForPermanent(0, 10);
|
| - views::MenuItemView* root_item = bookmark_menu_delegate_->menu_;
|
| - ASSERT_TRUE(root_item->HasSubmenu());
|
| - EXPECT_EQ(4, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(5, root_item->GetSubmenu()->child_count()); // Includes separator.
|
| - views::MenuItemView* F1_item = root_item->GetSubmenu()->GetMenuItemAt(1);
|
| - ASSERT_TRUE(F1_item->HasSubmenu());
|
| - EXPECT_EQ(2, F1_item->GetSubmenu()->GetMenuItemCount());
|
| - views::MenuItemView* F11_item = F1_item->GetSubmenu()->GetMenuItemAt(1);
|
| - ASSERT_TRUE(F11_item->HasSubmenu());
|
| - EXPECT_EQ(1, F11_item->GetSubmenu()->GetMenuItemCount());
|
| - views::MenuItemView* other_item = root_item->GetSubmenu()->GetMenuItemAt(3);
|
| - ASSERT_TRUE(other_item->HasSubmenu());
|
| - EXPECT_EQ(2, other_item->GetSubmenu()->GetMenuItemCount());
|
| - views::MenuItemView* OF1_item = other_item->GetSubmenu()->GetMenuItemAt(1);
|
| - ASSERT_TRUE(OF1_item->HasSubmenu());
|
| - EXPECT_EQ(1, OF1_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum 9. "of1a" item should not be created.
|
| - NewAndInitDelegateForPermanent(0, 9);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(4, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(5, root_item->GetSubmenu()->child_count()); // Includes separator.
|
| - other_item = root_item->GetSubmenu()->GetMenuItemAt(3);
|
| - OF1_item = other_item->GetSubmenu()->GetMenuItemAt(1);
|
| - EXPECT_EQ(0, OF1_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum 8. "OF1" submenu should not be created.
|
| - NewAndInitDelegateForPermanent(0, 8);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(4, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(5, root_item->GetSubmenu()->child_count()); // Includes separator.
|
| - other_item = root_item->GetSubmenu()->GetMenuItemAt(3);
|
| - EXPECT_EQ(1, other_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum 7. "Other" submenu should be empty.
|
| - NewAndInitDelegateForPermanent(0, 7);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(4, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(5, root_item->GetSubmenu()->child_count()); // Includes separator.
|
| - other_item = root_item->GetSubmenu()->GetMenuItemAt(3);
|
| - EXPECT_EQ(0, other_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum to 6. "Other" submenu should not be created, and no
|
| - // separator.
|
| - NewAndInitDelegateForPermanent(0, 6);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(3, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(3, root_item->GetSubmenu()->child_count()); // No separator.
|
| -
|
| - // Reduce maximum 5. "F2" and "Other" submenus shouldn't be created.
|
| - NewAndInitDelegateForPermanent(0, 5);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->child_count()); // No separator.
|
| - F1_item = root_item->GetSubmenu()->GetMenuItemAt(1);
|
| - F11_item = F1_item->GetSubmenu()->GetMenuItemAt(1);
|
| - EXPECT_EQ(1, F11_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum to 4. "f11a" item and "F2" and "Other" submenus should
|
| - // not be created.
|
| - NewAndInitDelegateForPermanent(0, 4);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->child_count()); // No separator.
|
| - F1_item = root_item->GetSubmenu()->GetMenuItemAt(1);
|
| - F11_item = F1_item->GetSubmenu()->GetMenuItemAt(1);
|
| - EXPECT_EQ(0, F11_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum to 3. "F11", "F2" and "Other" submenus should not be
|
| - // created.
|
| - NewAndInitDelegateForPermanent(0, 3);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->child_count()); // No separator.
|
| - F1_item = root_item->GetSubmenu()->GetMenuItemAt(1);
|
| - EXPECT_EQ(views::MenuItemView::SUBMENU, F1_item->GetType());
|
| - EXPECT_EQ(1, F1_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum 2. Only "a" item and empty "F1" submenu should be created.
|
| - NewAndInitDelegateForPermanent(0, 2);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(2, root_item->GetSubmenu()->child_count()); // No separator.
|
| - F1_item = root_item->GetSubmenu()->GetMenuItemAt(1);
|
| - EXPECT_EQ(views::MenuItemView::SUBMENU, F1_item->GetType());
|
| - EXPECT_EQ(0, F1_item->GetSubmenu()->GetMenuItemCount());
|
| -
|
| - // Reduce maximum to 1. Only "a" item should be created.
|
| - NewAndInitDelegateForPermanent(0, 1);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(1, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(1, root_item->GetSubmenu()->child_count()); // No separator.
|
| -
|
| - // Verify correct handling of integer overflow with range, set kint32max as
|
| - // maximum and 1 less as minimum. Only "a" item should be created.
|
| - NewAndInitDelegateForPermanent(kint32max - 1, kint32max);
|
| - root_item = bookmark_menu_delegate_->menu_;
|
| - EXPECT_EQ(1, root_item->GetSubmenu()->GetMenuItemCount());
|
| - EXPECT_EQ(1, root_item->GetSubmenu()->child_count()); // No separator.
|
| -}
|
|
|