| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/extensions/api/bookmarks/bookmark_api_helpers.h" | 5 #include "chrome/browser/extensions/api/bookmarks/bookmark_api_helpers.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 67 content::TestBrowserThreadBundle thread_bundle_; | 67 content::TestBrowserThreadBundle thread_bundle_; |
| 68 TestingProfile profile_; | 68 TestingProfile profile_; |
| 69 bookmarks::ManagedBookmarkService* managed_; | 69 bookmarks::ManagedBookmarkService* managed_; |
| 70 BookmarkModel* model_; | 70 BookmarkModel* model_; |
| 71 const BookmarkNode* node_; | 71 const BookmarkNode* node_; |
| 72 const BookmarkNode* node2_; | 72 const BookmarkNode* node2_; |
| 73 const BookmarkNode* folder_; | 73 const BookmarkNode* folder_; |
| 74 }; | 74 }; |
| 75 | 75 |
| 76 TEST_F(ExtensionBookmarksTest, GetFullTreeFromRoot) { | 76 TEST_F(ExtensionBookmarksTest, GetFullTreeFromRoot) { |
| 77 scoped_ptr<BookmarkTreeNode> tree( | 77 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, model_->other_node(), |
| 78 GetBookmarkTreeNode(managed_, | 78 true, // Recurse. |
| 79 model_->other_node(), | 79 false); // Not only folders. |
| 80 true, // Recurse. | 80 ASSERT_EQ(3U, tree.children->size()); |
| 81 false)); // Not only folders. | |
| 82 ASSERT_EQ(3U, tree->children->size()); | |
| 83 } | 81 } |
| 84 | 82 |
| 85 TEST_F(ExtensionBookmarksTest, GetFoldersOnlyFromRoot) { | 83 TEST_F(ExtensionBookmarksTest, GetFoldersOnlyFromRoot) { |
| 86 scoped_ptr<BookmarkTreeNode> tree( | 84 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, model_->other_node(), |
| 87 GetBookmarkTreeNode(managed_, | 85 true, // Recurse. |
| 88 model_->other_node(), | 86 true); // Only folders. |
| 89 true, // Recurse. | 87 ASSERT_EQ(1U, tree.children->size()); |
| 90 true)); // Only folders. | |
| 91 ASSERT_EQ(1U, tree->children->size()); | |
| 92 } | 88 } |
| 93 | 89 |
| 94 TEST_F(ExtensionBookmarksTest, GetSubtree) { | 90 TEST_F(ExtensionBookmarksTest, GetSubtree) { |
| 95 scoped_ptr<BookmarkTreeNode> tree( | 91 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, folder_, |
| 96 GetBookmarkTreeNode(managed_, | 92 true, // Recurse. |
| 97 folder_, | 93 false); // Not only folders. |
| 98 true, // Recurse. | 94 ASSERT_EQ(4U, tree.children->size()); |
| 99 false)); // Not only folders. | 95 const BookmarkTreeNode& digg = tree.children->at(1); |
| 100 ASSERT_EQ(4U, tree->children->size()); | 96 ASSERT_EQ("Digg", digg.title); |
| 101 linked_ptr<BookmarkTreeNode> digg = tree->children->at(1); | |
| 102 ASSERT_TRUE(digg.get()); | |
| 103 ASSERT_EQ("Digg", digg->title); | |
| 104 } | 97 } |
| 105 | 98 |
| 106 TEST_F(ExtensionBookmarksTest, GetSubtreeFoldersOnly) { | 99 TEST_F(ExtensionBookmarksTest, GetSubtreeFoldersOnly) { |
| 107 scoped_ptr<BookmarkTreeNode> tree( | 100 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, folder_, |
| 108 GetBookmarkTreeNode(managed_, | 101 true, // Recurse. |
| 109 folder_, | 102 true); // Only folders. |
| 110 true, // Recurse. | 103 ASSERT_EQ(2U, tree.children->size()); |
| 111 true)); // Only folders. | 104 const BookmarkTreeNode& inner_folder = tree.children->at(1); |
| 112 ASSERT_EQ(2U, tree->children->size()); | 105 ASSERT_EQ("inner folder 1", inner_folder.title); |
| 113 linked_ptr<BookmarkTreeNode> inner_folder = tree->children->at(1); | |
| 114 ASSERT_TRUE(inner_folder.get()); | |
| 115 ASSERT_EQ("inner folder 1", inner_folder->title); | |
| 116 } | 106 } |
| 117 | 107 |
| 118 TEST_F(ExtensionBookmarksTest, GetModifiableNode) { | 108 TEST_F(ExtensionBookmarksTest, GetModifiableNode) { |
| 119 scoped_ptr<BookmarkTreeNode> tree( | 109 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, node_, |
| 120 GetBookmarkTreeNode(managed_, | 110 false, // Recurse. |
| 121 node_, | 111 false); // Only folders. |
| 122 false, // Recurse. | 112 EXPECT_EQ("Digg", tree.title); |
| 123 false)); // Only folders. | 113 ASSERT_TRUE(tree.url); |
| 124 EXPECT_EQ("Digg", tree->title); | 114 EXPECT_EQ("http://www.reddit.com/", *tree.url); |
| 125 ASSERT_TRUE(tree->url); | |
| 126 EXPECT_EQ("http://www.reddit.com/", *tree->url); | |
| 127 EXPECT_EQ(api::bookmarks::BOOKMARK_TREE_NODE_UNMODIFIABLE_NONE, | 115 EXPECT_EQ(api::bookmarks::BOOKMARK_TREE_NODE_UNMODIFIABLE_NONE, |
| 128 tree->unmodifiable); | 116 tree.unmodifiable); |
| 129 } | 117 } |
| 130 | 118 |
| 131 TEST_F(ExtensionBookmarksTest, GetManagedNode) { | 119 TEST_F(ExtensionBookmarksTest, GetManagedNode) { |
| 132 const BookmarkNode* managed_bookmark = | 120 const BookmarkNode* managed_bookmark = |
| 133 model_->AddURL(managed_->managed_node(), | 121 model_->AddURL(managed_->managed_node(), |
| 134 0, | 122 0, |
| 135 base::ASCIIToUTF16("Chromium"), | 123 base::ASCIIToUTF16("Chromium"), |
| 136 GURL("http://www.chromium.org/")); | 124 GURL("http://www.chromium.org/")); |
| 137 scoped_ptr<BookmarkTreeNode> tree( | 125 BookmarkTreeNode tree = GetBookmarkTreeNode(managed_, managed_bookmark, |
| 138 GetBookmarkTreeNode(managed_, | 126 false, // Recurse. |
| 139 managed_bookmark, | 127 false); // Only folders. |
| 140 false, // Recurse. | 128 EXPECT_EQ("Chromium", tree.title); |
| 141 false)); // Only folders. | 129 EXPECT_EQ("http://www.chromium.org/", *tree.url); |
| 142 EXPECT_EQ("Chromium", tree->title); | |
| 143 EXPECT_EQ("http://www.chromium.org/", *tree->url); | |
| 144 EXPECT_EQ(api::bookmarks::BOOKMARK_TREE_NODE_UNMODIFIABLE_MANAGED, | 130 EXPECT_EQ(api::bookmarks::BOOKMARK_TREE_NODE_UNMODIFIABLE_MANAGED, |
| 145 tree->unmodifiable); | 131 tree.unmodifiable); |
| 146 } | 132 } |
| 147 | 133 |
| 148 TEST_F(ExtensionBookmarksTest, RemoveNodeInvalidId) { | 134 TEST_F(ExtensionBookmarksTest, RemoveNodeInvalidId) { |
| 149 int64_t invalid_id = model_->next_node_id(); | 135 int64_t invalid_id = model_->next_node_id(); |
| 150 std::string error; | 136 std::string error; |
| 151 EXPECT_FALSE(RemoveNode(model_, managed_, invalid_id, true, &error)); | 137 EXPECT_FALSE(RemoveNode(model_, managed_, invalid_id, true, &error)); |
| 152 EXPECT_EQ(keys::kNoNodeError, error); | 138 EXPECT_EQ(keys::kNoNodeError, error); |
| 153 } | 139 } |
| 154 | 140 |
| 155 TEST_F(ExtensionBookmarksTest, RemoveNodePermanent) { | 141 TEST_F(ExtensionBookmarksTest, RemoveNodePermanent) { |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 238 string_value.clear(); | 224 string_value.clear(); |
| 239 EXPECT_FALSE(dictionary_value->GetString("some_key1", &string_value)); | 225 EXPECT_FALSE(dictionary_value->GetString("some_key1", &string_value)); |
| 240 EXPECT_EQ("", string_value); | 226 EXPECT_EQ("", string_value); |
| 241 EXPECT_TRUE(dictionary_value->GetString("some_key2", &string_value)); | 227 EXPECT_TRUE(dictionary_value->GetString("some_key2", &string_value)); |
| 242 EXPECT_EQ("some_value2", string_value); | 228 EXPECT_EQ("some_value2", string_value); |
| 243 | 229 |
| 244 } | 230 } |
| 245 | 231 |
| 246 } // namespace bookmark_api_helpers | 232 } // namespace bookmark_api_helpers |
| 247 } // namespace extensions | 233 } // namespace extensions |
| OLD | NEW |