Index: chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc |
diff --git a/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc b/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc |
index 5f49a8efea3ff9daba4c832e9fca51bb5d0cb20e..67965427c45df1a495b69932982694ae8b3d5a75 100644 |
--- a/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc |
+++ b/chrome/browser/extensions/api/bookmarks/bookmark_api_helpers_unittest.cc |
@@ -42,6 +42,7 @@ class ExtensionBookmarksTest : public testing::Test { |
scoped_ptr<BookmarkModel> model_; |
const BookmarkNode* folder_; |
}; |
+ |
TEST_F(ExtensionBookmarksTest, GetFullTreeFromRoot) { |
scoped_ptr<BookmarkTreeNode> tree( |
GetBookmarkTreeNode(model_->other_node(), |
@@ -80,5 +81,43 @@ TEST_F(ExtensionBookmarksTest, GetSubtreeFoldersOnly) { |
ASSERT_EQ("inner folder 1", inner_folder->title); |
} |
+TEST_F(ExtensionBookmarksTest, RemoveNodeInvalidId) { |
+ int64 invalid_id = model_->next_node_id(); |
+ std::string error; |
+ EXPECT_FALSE(RemoveNode(model_.get(), invalid_id, true, &error)); |
+ EXPECT_EQ(keys::kNoNodeError, error); |
+} |
+ |
+TEST_F(ExtensionBookmarksTest, RemoveNodePermanent) { |
+ std::string error; |
+ EXPECT_FALSE( |
+ RemoveNode(model_.get(), model_->other_node()->id(), true, &error)); |
+ EXPECT_EQ(keys::kModifySpecialError, error); |
+} |
+ |
+TEST_F(ExtensionBookmarksTest, RemoveNodeManaged) { |
+ const BookmarkNode* managed_bookmark = |
+ model_->AddURL(model_->managed_node(), |
+ 0, |
+ base::ASCIIToUTF16("Chromium"), |
+ GURL("http://www.chromium.org")); |
+ std::string error; |
+ EXPECT_FALSE(RemoveNode(model_.get(), managed_bookmark->id(), true, &error)); |
+ EXPECT_EQ(keys::kModifyManagedError, error); |
+} |
+ |
+TEST_F(ExtensionBookmarksTest, RemoveNodeNotRecursive) { |
+ std::string error; |
+ EXPECT_FALSE(RemoveNode(model_.get(), folder_->id(), false, &error)); |
+ EXPECT_EQ(keys::kFolderNotEmptyError, error); |
+} |
+ |
+TEST_F(ExtensionBookmarksTest, RemoveNodeRecursive) { |
+ EXPECT_EQ(3, model_->other_node()->child_count()); |
+ std::string error; |
+ EXPECT_TRUE(RemoveNode(model_.get(), folder_->id(), true, &error)); |
+ EXPECT_EQ(2, model_->other_node()->child_count()); |
+} |
+ |
} // namespace bookmark_api_helpers |
} // namespace extensions |