OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #import <AppKit/AppKit.h> | 5 #import <AppKit/AppKit.h> |
6 | 6 |
7 #include "base/strings/string16.h" | 7 #include "base/strings/string16.h" |
8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "chrome/app/chrome_command_ids.h" | 10 #include "chrome/app/chrome_command_ids.h" |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 // Add a bookmark and reload and there should be 8 items: the previous | 103 // Add a bookmark and reload and there should be 8 items: the previous |
104 // menu contents plus two new separator, the new bookmark and three | 104 // menu contents plus two new separator, the new bookmark and three |
105 // versions of 'Open All Bookmarks' menu items. | 105 // versions of 'Open All Bookmarks' menu items. |
106 const BookmarkNode* parent = model->bookmark_bar_node(); | 106 const BookmarkNode* parent = model->bookmark_bar_node(); |
107 const char* url = "http://www.zim-bop-a-dee.com/"; | 107 const char* url = "http://www.zim-bop-a-dee.com/"; |
108 model->AddURL(parent, 0, ASCIIToUTF16("Bookmark"), GURL(url)); | 108 model->AddURL(parent, 0, ASCIIToUTF16("Bookmark"), GURL(url)); |
109 bridge_->UpdateMenu(menu); | 109 bridge_->UpdateMenu(menu); |
110 EXPECT_EQ(6, [menu numberOfItems]); | 110 EXPECT_EQ(6, [menu numberOfItems]); |
111 // Remove the new bookmark and reload and we should have 2 items again | 111 // Remove the new bookmark and reload and we should have 2 items again |
112 // because the separator should have been removed as well. | 112 // because the separator should have been removed as well. |
113 model->Remove(parent, 0); | 113 model->Remove(parent->GetChild(0)); |
114 bridge_->UpdateMenu(menu); | 114 bridge_->UpdateMenu(menu); |
115 EXPECT_EQ(0, [menu numberOfItems]); | 115 EXPECT_EQ(0, [menu numberOfItems]); |
116 } | 116 } |
117 | 117 |
118 // Test that ClearBookmarkMenu() removes all bookmark menus. | 118 // Test that ClearBookmarkMenu() removes all bookmark menus. |
119 TEST_F(BookmarkMenuBridgeTest, TestClearBookmarkMenu) { | 119 TEST_F(BookmarkMenuBridgeTest, TestClearBookmarkMenu) { |
120 NSMenu* menu = bridge_->menu_; | 120 NSMenu* menu = bridge_->menu_; |
121 | 121 |
122 AddTestMenuItem(menu, @"hi mom", nil); | 122 AddTestMenuItem(menu, @"hi mom", nil); |
123 AddTestMenuItem(menu, @"not", @selector(openBookmarkMenuItem:)); | 123 AddTestMenuItem(menu, @"not", @selector(openBookmarkMenuItem:)); |
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
322 AddNodeToMenu(bridge_.get(), root, menu); | 322 AddNodeToMenu(bridge_.get(), root, menu); |
323 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); | 323 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); |
324 | 324 |
325 model->AddURL(root, 1, ASCIIToUTF16("Test 2"), GURL("http://second-test")); | 325 model->AddURL(root, 1, ASCIIToUTF16("Test 2"), GURL("http://second-test")); |
326 AddNodeToMenu(bridge_.get(), root, menu); | 326 AddNodeToMenu(bridge_.get(), root, menu); |
327 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); | 327 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); |
328 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(1))); | 328 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(1))); |
329 | 329 |
330 const BookmarkNode* removed_node = root->GetChild(0); | 330 const BookmarkNode* removed_node = root->GetChild(0); |
331 EXPECT_EQ(2, root->child_count()); | 331 EXPECT_EQ(2, root->child_count()); |
332 model->Remove(root, 0); | 332 model->Remove(root->GetChild(0)); |
333 EXPECT_EQ(1, root->child_count()); | 333 EXPECT_EQ(1, root->child_count()); |
334 bridge_->UpdateMenu(menu); | 334 bridge_->UpdateMenu(menu); |
335 EXPECT_FALSE(MenuItemForNode(bridge_.get(), removed_node)); | 335 EXPECT_FALSE(MenuItemForNode(bridge_.get(), removed_node)); |
336 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); | 336 EXPECT_TRUE(MenuItemForNode(bridge_.get(), root->GetChild(0))); |
337 | 337 |
338 const BookmarkNode empty_node(GURL("http://no-where/")); | 338 const BookmarkNode empty_node(GURL("http://no-where/")); |
339 EXPECT_FALSE(MenuItemForNode(bridge_.get(), &empty_node)); | 339 EXPECT_FALSE(MenuItemForNode(bridge_.get(), &empty_node)); |
340 EXPECT_FALSE(MenuItemForNode(bridge_.get(), NULL)); | 340 EXPECT_FALSE(MenuItemForNode(bridge_.get(), NULL)); |
341 } | 341 } |
342 | 342 |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 EXPECT_TRUE([item image]); | 392 EXPECT_TRUE([item image]); |
393 | 393 |
394 model->SetTitle(node, ASCIIToUTF16("New Title")); | 394 model->SetTitle(node, ASCIIToUTF16("New Title")); |
395 | 395 |
396 item = [menu itemWithTitle:@"Test Item"]; | 396 item = [menu itemWithTitle:@"Test Item"]; |
397 EXPECT_FALSE(item); | 397 EXPECT_FALSE(item); |
398 item = [menu itemWithTitle:@"New Title"]; | 398 item = [menu itemWithTitle:@"New Title"]; |
399 EXPECT_TRUE(item); | 399 EXPECT_TRUE(item); |
400 } | 400 } |
401 | 401 |
OLD | NEW |