| Index: components/bookmarks/browser/bookmark_utils_unittest.cc
|
| diff --git a/components/bookmarks/browser/bookmark_utils_unittest.cc b/components/bookmarks/browser/bookmark_utils_unittest.cc
|
| index 724d2340e080fb1d8a99f1b4c7af9c09c8d0ad34..34cafcd4167e3c8bd5404b900af5c104f0db71d4 100644
|
| --- a/components/bookmarks/browser/bookmark_utils_unittest.cc
|
| +++ b/components/bookmarks/browser/bookmark_utils_unittest.cc
|
| @@ -271,7 +271,7 @@ TEST_F(BookmarkUtilsTest, CopyPaste) {
|
| CopyToClipboard(model.get(), nodes, false);
|
|
|
| // And make sure we can paste a bookmark from the clipboard.
|
| - EXPECT_TRUE(CanPasteFromClipboard(model->bookmark_bar_node()));
|
| + EXPECT_TRUE(CanPasteFromClipboard(model.get(), model->bookmark_bar_node()));
|
|
|
| // Write some text to the clipboard.
|
| {
|
| @@ -282,7 +282,7 @@ TEST_F(BookmarkUtilsTest, CopyPaste) {
|
| }
|
|
|
| // Now we shouldn't be able to paste from the clipboard.
|
| - EXPECT_FALSE(CanPasteFromClipboard(model->bookmark_bar_node()));
|
| + EXPECT_FALSE(CanPasteFromClipboard(model.get(), model->bookmark_bar_node()));
|
| }
|
|
|
| TEST_F(BookmarkUtilsTest, CutToClipboard) {
|
| @@ -308,7 +308,35 @@ TEST_F(BookmarkUtilsTest, CutToClipboard) {
|
| ExpectGroupedChangeCount(1, 1);
|
|
|
| // And make sure we can paste from the clipboard.
|
| - EXPECT_TRUE(CanPasteFromClipboard(model->other_node()));
|
| + EXPECT_TRUE(CanPasteFromClipboard(model.get(), model->other_node()));
|
| +}
|
| +
|
| +TEST_F(BookmarkUtilsTest, PasteNonEditableNodes) {
|
| + test::TestBookmarkClient client;
|
| + // Load a model with an extra node that is not editable.
|
| + BookmarkPermanentNode* extra_node = new BookmarkPermanentNode(100);
|
| + bookmarks::BookmarkPermanentNodeList extra_nodes;
|
| + extra_nodes.push_back(extra_node);
|
| + client.SetExtraNodesToLoad(extra_nodes.Pass());
|
| +
|
| + scoped_ptr<BookmarkModel> model(client.CreateModel(false));
|
| + const BookmarkNode* node = model->AddURL(model->other_node(),
|
| + 0,
|
| + ASCIIToUTF16("foo bar"),
|
| + GURL("http://www.google.com"));
|
| +
|
| + // Copy a node to the clipboard.
|
| + std::vector<const BookmarkNode*> nodes;
|
| + nodes.push_back(node);
|
| + CopyToClipboard(model.get(), nodes, false);
|
| +
|
| + // And make sure we can paste a bookmark from the clipboard.
|
| + EXPECT_TRUE(CanPasteFromClipboard(model.get(), model->bookmark_bar_node()));
|
| +
|
| + // But it can't be pasted into a non-editable folder.
|
| + BookmarkClient* upcast = &client;
|
| + EXPECT_FALSE(upcast->CanBeEditedByUser(extra_node));
|
| + EXPECT_FALSE(CanPasteFromClipboard(model.get(), extra_node));
|
| }
|
| #endif // !defined(OS_IOS)
|
|
|
|
|