OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/bookmarks/test/test_bookmark_client.h" | 5 #include "components/bookmarks/test/test_bookmark_client.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "components/bookmarks/browser/bookmark_model.h" | 10 #include "components/bookmarks/browser/bookmark_model.h" |
(...skipping 11 matching lines...) Expand all Loading... |
22 scoped_ptr<BookmarkLoadDetails> details = | 22 scoped_ptr<BookmarkLoadDetails> details = |
23 bookmark_model->CreateLoadDetails(std::string()); | 23 bookmark_model->CreateLoadDetails(std::string()); |
24 details->LoadExtraNodes(); | 24 details->LoadExtraNodes(); |
25 bookmark_model->DoneLoading(details.Pass()); | 25 bookmark_model->DoneLoading(details.Pass()); |
26 return bookmark_model.Pass(); | 26 return bookmark_model.Pass(); |
27 } | 27 } |
28 | 28 |
29 void TestBookmarkClient::SetExtraNodesToLoad( | 29 void TestBookmarkClient::SetExtraNodesToLoad( |
30 BookmarkPermanentNodeList extra_nodes) { | 30 BookmarkPermanentNodeList extra_nodes) { |
31 extra_nodes_to_load_ = extra_nodes.Pass(); | 31 extra_nodes_to_load_ = extra_nodes.Pass(); |
32 // Keep a copy in |extra_nodes_| for the acessor. | 32 // Keep a copy in |extra_nodes_| for the accessor. |
33 extra_nodes_ = extra_nodes_to_load_.get(); | 33 extra_nodes_ = extra_nodes_to_load_.get(); |
34 } | 34 } |
35 | 35 |
36 bool TestBookmarkClient::IsExtraNodeRoot(const BookmarkNode* node) { | 36 bool TestBookmarkClient::IsExtraNodeRoot(const BookmarkNode* node) { |
37 for (size_t i = 0; i < extra_nodes_.size(); ++i) { | 37 for (size_t i = 0; i < extra_nodes_.size(); ++i) { |
38 if (node == extra_nodes_[i]) | 38 if (node == extra_nodes_[i]) |
39 return true; | 39 return true; |
40 } | 40 } |
41 return false; | 41 return false; |
42 } | 42 } |
43 | 43 |
44 bool TestBookmarkClient::IsAnExtraNode(const BookmarkNode* node) { | 44 bool TestBookmarkClient::IsAnExtraNode(const BookmarkNode* node) { |
45 if (!node) | 45 if (!node) |
46 return false; | 46 return false; |
47 for (size_t i = 0; i < extra_nodes_.size(); ++i) { | 47 for (size_t i = 0; i < extra_nodes_.size(); ++i) { |
48 if (node->HasAncestor(extra_nodes_[i])) | 48 if (node->HasAncestor(extra_nodes_[i])) |
49 return true; | 49 return true; |
50 } | 50 } |
51 return false; | 51 return false; |
52 } | 52 } |
53 | 53 |
54 bool TestBookmarkClient::IsPermanentNodeVisible( | |
55 const BookmarkPermanentNode* node) { | |
56 DCHECK(node->type() == BookmarkNode::BOOKMARK_BAR || | |
57 node->type() == BookmarkNode::OTHER_NODE || | |
58 node->type() == BookmarkNode::MOBILE || | |
59 IsExtraNodeRoot(node)); | |
60 return node->type() != BookmarkNode::MOBILE && !IsExtraNodeRoot(node); | |
61 } | |
62 | |
63 void TestBookmarkClient::RecordAction(const base::UserMetricsAction& action) { | 54 void TestBookmarkClient::RecordAction(const base::UserMetricsAction& action) { |
64 } | 55 } |
65 | 56 |
66 LoadExtraCallback TestBookmarkClient::GetLoadExtraNodesCallback() { | 57 LoadExtraCallback TestBookmarkClient::GetLoadExtraNodesCallback( |
| 58 scoped_ptr<BookmarkPermanentNode> managed_node, |
| 59 scoped_ptr<BookmarkPermanentNode> supervised_node, |
| 60 const ExtraNodeLoadedCallback& callback) { |
67 return base::Bind(&TestBookmarkClient::LoadExtraNodes, | 61 return base::Bind(&TestBookmarkClient::LoadExtraNodes, |
68 base::Passed(&extra_nodes_to_load_)); | 62 base::Passed(&extra_nodes_to_load_)); |
69 } | 63 } |
70 | 64 |
71 bool TestBookmarkClient::CanSetPermanentNodeTitle( | 65 void TestBookmarkClient::DoneLoading(BookmarkPermanentNode* managed_node, |
72 const BookmarkNode* permanent_node) { | 66 BookmarkPermanentNode* supervised_node) { |
73 return IsExtraNodeRoot(permanent_node); | |
74 } | |
75 | |
76 bool TestBookmarkClient::CanSyncNode(const BookmarkNode* node) { | |
77 return !IsAnExtraNode(node); | |
78 } | |
79 | |
80 bool TestBookmarkClient::CanBeEditedByUser(const BookmarkNode* node) { | |
81 return !IsAnExtraNode(node); | |
82 } | 67 } |
83 | 68 |
84 // static | 69 // static |
85 BookmarkPermanentNodeList TestBookmarkClient::LoadExtraNodes( | 70 BookmarkPermanentNodeList TestBookmarkClient::LoadExtraNodes( |
86 BookmarkPermanentNodeList extra_nodes, | 71 BookmarkPermanentNodeList extra_nodes, |
87 int64* next_id) { | 72 int64* next_id) { |
88 return extra_nodes.Pass(); | 73 return extra_nodes.Pass(); |
89 } | 74 } |
90 | 75 |
91 } // namespace bookmarks | 76 } // namespace bookmarks |
OLD | NEW |