Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(102)

Side by Side Diff: components/bookmarks/managed/managed_bookmarks_tracker_unittest.cc

Issue 1906973002: Convert //components/bookmarks from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/managed/managed_bookmarks_tracker.h" 5 #include "components/bookmarks/managed/managed_bookmarks_tracker.h"
6 6
7 #include <memory>
7 #include <utility> 8 #include <utility>
8 9
9 #include "base/bind.h" 10 #include "base/bind.h"
10 #include "base/files/file_path.h" 11 #include "base/files/file_path.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "base/message_loop/message_loop.h" 12 #include "base/message_loop/message_loop.h"
13 #include "base/strings/utf_string_conversions.h" 13 #include "base/strings/utf_string_conversions.h"
14 #include "base/thread_task_runner_handle.h" 14 #include "base/thread_task_runner_handle.h"
15 #include "components/bookmarks/browser/bookmark_model.h" 15 #include "components/bookmarks/browser/bookmark_model.h"
16 #include "components/bookmarks/browser/bookmark_model_observer.h" 16 #include "components/bookmarks/browser/bookmark_model_observer.h"
17 #include "components/bookmarks/browser/bookmark_node.h" 17 #include "components/bookmarks/browser/bookmark_node.h"
18 #include "components/bookmarks/browser/bookmark_utils.h" 18 #include "components/bookmarks/browser/bookmark_utils.h"
19 #include "components/bookmarks/common/bookmark_pref_names.h" 19 #include "components/bookmarks/common/bookmark_pref_names.h"
20 #include "components/bookmarks/test/bookmark_test_helpers.h" 20 #include "components/bookmarks/test/bookmark_test_helpers.h"
21 #include "components/bookmarks/test/mock_bookmark_model_observer.h" 21 #include "components/bookmarks/test/mock_bookmark_model_observer.h"
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 prefs_.GetList(ManagedBookmarksTracker::GetPrefName(is_supervised)), 56 prefs_.GetList(ManagedBookmarksTracker::GetPrefName(is_supervised)),
57 101); 57 101);
58 managed_node->set_visible(!managed_node->empty()); 58 managed_node->set_visible(!managed_node->empty());
59 managed_node->SetTitle(l10n_util::GetStringUTF16( 59 managed_node->SetTitle(l10n_util::GetStringUTF16(
60 is_supervised ? IDS_BOOKMARK_BAR_SUPERVISED_FOLDER_DEFAULT_NAME 60 is_supervised ? IDS_BOOKMARK_BAR_SUPERVISED_FOLDER_DEFAULT_NAME
61 : IDS_BOOKMARK_BAR_MANAGED_FOLDER_DEFAULT_NAME)); 61 : IDS_BOOKMARK_BAR_MANAGED_FOLDER_DEFAULT_NAME));
62 62
63 BookmarkPermanentNodeList extra_nodes; 63 BookmarkPermanentNodeList extra_nodes;
64 extra_nodes.push_back(managed_node); 64 extra_nodes.push_back(managed_node);
65 65
66 scoped_ptr<TestBookmarkClient> client(new TestBookmarkClient); 66 std::unique_ptr<TestBookmarkClient> client(new TestBookmarkClient);
67 client->SetExtraNodesToLoad(std::move(extra_nodes)); 67 client->SetExtraNodesToLoad(std::move(extra_nodes));
68 model_.reset(new BookmarkModel(std::move(client))); 68 model_.reset(new BookmarkModel(std::move(client)));
69 69
70 model_->AddObserver(&observer_); 70 model_->AddObserver(&observer_);
71 EXPECT_CALL(observer_, BookmarkModelLoaded(model_.get(), _)); 71 EXPECT_CALL(observer_, BookmarkModelLoaded(model_.get(), _));
72 model_->Load(&prefs_, base::FilePath(), 72 model_->Load(&prefs_, base::FilePath(),
73 base::ThreadTaskRunnerHandle::Get(), 73 base::ThreadTaskRunnerHandle::Get(),
74 base::ThreadTaskRunnerHandle::Get()); 74 base::ThreadTaskRunnerHandle::Get());
75 test::WaitForBookmarkModelToLoad(model_.get()); 75 test::WaitForBookmarkModelToLoad(model_.get());
76 Mock::VerifyAndClearExpectations(&observer_); 76 Mock::VerifyAndClearExpectations(&observer_);
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 if (!dict->GetString("url", &url) || node->url() != GURL(url)) 164 if (!dict->GetString("url", &url) || node->url() != GURL(url))
165 return false; 165 return false;
166 } else { 166 } else {
167 return false; 167 return false;
168 } 168 }
169 return true; 169 return true;
170 } 170 }
171 171
172 base::MessageLoop loop_; 172 base::MessageLoop loop_;
173 TestingPrefServiceSimple prefs_; 173 TestingPrefServiceSimple prefs_;
174 scoped_ptr<BookmarkModel> model_; 174 std::unique_ptr<BookmarkModel> model_;
175 MockBookmarkModelObserver observer_; 175 MockBookmarkModelObserver observer_;
176 BookmarkPermanentNode* managed_node_; 176 BookmarkPermanentNode* managed_node_;
177 scoped_ptr<ManagedBookmarksTracker> managed_bookmarks_tracker_; 177 std::unique_ptr<ManagedBookmarksTracker> managed_bookmarks_tracker_;
178 }; 178 };
179 179
180 TEST_F(ManagedBookmarksTrackerTest, Empty) { 180 TEST_F(ManagedBookmarksTrackerTest, Empty) {
181 CreateModel(false /* is_supervised */); 181 CreateModel(false /* is_supervised */);
182 EXPECT_TRUE(model_->bookmark_bar_node()->empty()); 182 EXPECT_TRUE(model_->bookmark_bar_node()->empty());
183 EXPECT_TRUE(model_->other_node()->empty()); 183 EXPECT_TRUE(model_->other_node()->empty());
184 EXPECT_TRUE(managed_node()->empty()); 184 EXPECT_TRUE(managed_node()->empty());
185 EXPECT_FALSE(managed_node()->IsVisible()); 185 EXPECT_FALSE(managed_node()->IsVisible());
186 } 186 }
187 187
188 TEST_F(ManagedBookmarksTrackerTest, LoadInitial) { 188 TEST_F(ManagedBookmarksTrackerTest, LoadInitial) {
189 // Set a policy before loading the model. 189 // Set a policy before loading the model.
190 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 190 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
191 CreateModel(false /* is_supervised */); 191 CreateModel(false /* is_supervised */);
192 EXPECT_TRUE(model_->bookmark_bar_node()->empty()); 192 EXPECT_TRUE(model_->bookmark_bar_node()->empty());
193 EXPECT_TRUE(model_->other_node()->empty()); 193 EXPECT_TRUE(model_->other_node()->empty());
194 EXPECT_FALSE(managed_node()->empty()); 194 EXPECT_FALSE(managed_node()->empty());
195 EXPECT_TRUE(managed_node()->IsVisible()); 195 EXPECT_TRUE(managed_node()->IsVisible());
196 196
197 scoped_ptr<base::DictionaryValue> expected(CreateExpectedTree()); 197 std::unique_ptr<base::DictionaryValue> expected(CreateExpectedTree());
198 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get())); 198 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get()));
199 } 199 }
200 200
201 TEST_F(ManagedBookmarksTrackerTest, LoadInitialWithTitle) { 201 TEST_F(ManagedBookmarksTrackerTest, LoadInitialWithTitle) {
202 // Set the managed folder title. 202 // Set the managed folder title.
203 const char kExpectedFolderName[] = "foo"; 203 const char kExpectedFolderName[] = "foo";
204 prefs_.SetString(prefs::kManagedBookmarksFolderName, kExpectedFolderName); 204 prefs_.SetString(prefs::kManagedBookmarksFolderName, kExpectedFolderName);
205 // Set a policy before loading the model. 205 // Set a policy before loading the model.
206 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 206 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
207 CreateModel(false /* is_supervised */); 207 CreateModel(false /* is_supervised */);
208 EXPECT_TRUE(model_->bookmark_bar_node()->empty()); 208 EXPECT_TRUE(model_->bookmark_bar_node()->empty());
209 EXPECT_TRUE(model_->other_node()->empty()); 209 EXPECT_TRUE(model_->other_node()->empty());
210 EXPECT_FALSE(managed_node()->empty()); 210 EXPECT_FALSE(managed_node()->empty());
211 EXPECT_TRUE(managed_node()->IsVisible()); 211 EXPECT_TRUE(managed_node()->IsVisible());
212 212
213 scoped_ptr<base::DictionaryValue> expected( 213 std::unique_ptr<base::DictionaryValue> expected(
214 CreateFolder(kExpectedFolderName, CreateTestTree())); 214 CreateFolder(kExpectedFolderName, CreateTestTree()));
215 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get())); 215 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get()));
216 } 216 }
217 217
218 TEST_F(ManagedBookmarksTrackerTest, SupervisedTrackerIgnoresManagedPref) { 218 TEST_F(ManagedBookmarksTrackerTest, SupervisedTrackerIgnoresManagedPref) {
219 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 219 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
220 CreateModel(true /* is_supervised */); 220 CreateModel(true /* is_supervised */);
221 EXPECT_TRUE(managed_node()->empty()); 221 EXPECT_TRUE(managed_node()->empty());
222 EXPECT_FALSE(managed_node()->IsVisible()); 222 EXPECT_FALSE(managed_node()->IsVisible());
223 } 223 }
224 224
225 TEST_F(ManagedBookmarksTrackerTest, SupervisedTrackerHandlesSupervisedPref) { 225 TEST_F(ManagedBookmarksTrackerTest, SupervisedTrackerHandlesSupervisedPref) {
226 prefs_.SetManagedPref(prefs::kSupervisedBookmarks, CreateTestTree()); 226 prefs_.SetManagedPref(prefs::kSupervisedBookmarks, CreateTestTree());
227 CreateModel(true /* is_supervised */); 227 CreateModel(true /* is_supervised */);
228 EXPECT_FALSE(managed_node()->empty()); 228 EXPECT_FALSE(managed_node()->empty());
229 EXPECT_TRUE(managed_node()->IsVisible()); 229 EXPECT_TRUE(managed_node()->IsVisible());
230 // Don't bother checking the actual contents, the non-supervised tests cover 230 // Don't bother checking the actual contents, the non-supervised tests cover
231 // that already. 231 // that already.
232 } 232 }
233 233
234 TEST_F(ManagedBookmarksTrackerTest, SwapNodes) { 234 TEST_F(ManagedBookmarksTrackerTest, SwapNodes) {
235 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 235 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
236 CreateModel(false /* is_supervised */); 236 CreateModel(false /* is_supervised */);
237 237
238 // Swap the Google bookmark with the Folder. 238 // Swap the Google bookmark with the Folder.
239 scoped_ptr<base::ListValue> updated(CreateTestTree()); 239 std::unique_ptr<base::ListValue> updated(CreateTestTree());
240 scoped_ptr<base::Value> removed; 240 std::unique_ptr<base::Value> removed;
241 ASSERT_TRUE(updated->Remove(0, &removed)); 241 ASSERT_TRUE(updated->Remove(0, &removed));
242 updated->Append(removed.release()); 242 updated->Append(removed.release());
243 243
244 // These two nodes should just be swapped. 244 // These two nodes should just be swapped.
245 const BookmarkNode* parent = managed_node(); 245 const BookmarkNode* parent = managed_node();
246 EXPECT_CALL(observer_, BookmarkNodeMoved(model_.get(), parent, 1, parent, 0)); 246 EXPECT_CALL(observer_, BookmarkNodeMoved(model_.get(), parent, 1, parent, 0));
247 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy()); 247 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy());
248 Mock::VerifyAndClearExpectations(&observer_); 248 Mock::VerifyAndClearExpectations(&observer_);
249 249
250 // Verify the final tree. 250 // Verify the final tree.
251 scoped_ptr<base::DictionaryValue> expected( 251 std::unique_ptr<base::DictionaryValue> expected(
252 CreateFolder(GetManagedFolderTitle(), updated.release())); 252 CreateFolder(GetManagedFolderTitle(), updated.release()));
253 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get())); 253 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get()));
254 } 254 }
255 255
256 TEST_F(ManagedBookmarksTrackerTest, RemoveNode) { 256 TEST_F(ManagedBookmarksTrackerTest, RemoveNode) {
257 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 257 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
258 CreateModel(false /* is_supervised */); 258 CreateModel(false /* is_supervised */);
259 259
260 // Remove the Folder. 260 // Remove the Folder.
261 scoped_ptr<base::ListValue> updated(CreateTestTree()); 261 std::unique_ptr<base::ListValue> updated(CreateTestTree());
262 ASSERT_TRUE(updated->Remove(1, NULL)); 262 ASSERT_TRUE(updated->Remove(1, NULL));
263 263
264 const BookmarkNode* parent = managed_node(); 264 const BookmarkNode* parent = managed_node();
265 EXPECT_CALL(observer_, BookmarkNodeRemoved(model_.get(), parent, 1, _, _)); 265 EXPECT_CALL(observer_, BookmarkNodeRemoved(model_.get(), parent, 1, _, _));
266 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy()); 266 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy());
267 Mock::VerifyAndClearExpectations(&observer_); 267 Mock::VerifyAndClearExpectations(&observer_);
268 268
269 // Verify the final tree. 269 // Verify the final tree.
270 scoped_ptr<base::DictionaryValue> expected( 270 std::unique_ptr<base::DictionaryValue> expected(
271 CreateFolder(GetManagedFolderTitle(), updated.release())); 271 CreateFolder(GetManagedFolderTitle(), updated.release()));
272 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get())); 272 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get()));
273 } 273 }
274 274
275 TEST_F(ManagedBookmarksTrackerTest, CreateNewNodes) { 275 TEST_F(ManagedBookmarksTrackerTest, CreateNewNodes) {
276 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 276 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
277 CreateModel(false /* is_supervised */); 277 CreateModel(false /* is_supervised */);
278 278
279 // Put all the nodes inside another folder. 279 // Put all the nodes inside another folder.
280 scoped_ptr<base::ListValue> updated(new base::ListValue); 280 std::unique_ptr<base::ListValue> updated(new base::ListValue);
281 updated->Append(CreateFolder("Container", CreateTestTree())); 281 updated->Append(CreateFolder("Container", CreateTestTree()));
282 282
283 EXPECT_CALL(observer_, BookmarkNodeAdded(model_.get(), _, _)).Times(5); 283 EXPECT_CALL(observer_, BookmarkNodeAdded(model_.get(), _, _)).Times(5);
284 // The remaining nodes have been pushed to positions 1 and 2; they'll both be 284 // The remaining nodes have been pushed to positions 1 and 2; they'll both be
285 // removed when at position 1. 285 // removed when at position 1.
286 const BookmarkNode* parent = managed_node(); 286 const BookmarkNode* parent = managed_node();
287 EXPECT_CALL(observer_, BookmarkNodeRemoved(model_.get(), parent, 1, _, _)) 287 EXPECT_CALL(observer_, BookmarkNodeRemoved(model_.get(), parent, 1, _, _))
288 .Times(2); 288 .Times(2);
289 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy()); 289 prefs_.SetManagedPref(prefs::kManagedBookmarks, updated->DeepCopy());
290 Mock::VerifyAndClearExpectations(&observer_); 290 Mock::VerifyAndClearExpectations(&observer_);
291 291
292 // Verify the final tree. 292 // Verify the final tree.
293 scoped_ptr<base::DictionaryValue> expected( 293 std::unique_ptr<base::DictionaryValue> expected(
294 CreateFolder(GetManagedFolderTitle(), updated.release())); 294 CreateFolder(GetManagedFolderTitle(), updated.release()));
295 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get())); 295 EXPECT_TRUE(NodeMatchesValue(managed_node(), expected.get()));
296 } 296 }
297 297
298 TEST_F(ManagedBookmarksTrackerTest, RemoveAll) { 298 TEST_F(ManagedBookmarksTrackerTest, RemoveAll) {
299 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree()); 299 prefs_.SetManagedPref(prefs::kManagedBookmarks, CreateTestTree());
300 CreateModel(false /* is_supervised */); 300 CreateModel(false /* is_supervised */);
301 EXPECT_TRUE(managed_node()->IsVisible()); 301 EXPECT_TRUE(managed_node()->IsVisible());
302 302
303 // Remove the policy. 303 // Remove the policy.
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 Mock::VerifyAndClearExpectations(&observer_); 351 Mock::VerifyAndClearExpectations(&observer_);
352 352
353 EXPECT_CALL(observer_, BookmarkAllUserNodesRemoved(model_.get(), _)); 353 EXPECT_CALL(observer_, BookmarkAllUserNodesRemoved(model_.get(), _));
354 model_->RemoveAllUserBookmarks(); 354 model_->RemoveAllUserBookmarks();
355 EXPECT_EQ(2, managed_node()->child_count()); 355 EXPECT_EQ(2, managed_node()->child_count());
356 EXPECT_EQ(0, model_->bookmark_bar_node()->child_count()); 356 EXPECT_EQ(0, model_->bookmark_bar_node()->child_count());
357 Mock::VerifyAndClearExpectations(&observer_); 357 Mock::VerifyAndClearExpectations(&observer_);
358 } 358 }
359 359
360 } // namespace bookmarks 360 } // namespace bookmarks
OLDNEW
« no previous file with comments | « components/bookmarks/managed/managed_bookmarks_tracker.cc ('k') | components/bookmarks/test/test_bookmark_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698