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

Side by Side Diff: components/browser_sync/profile_sync_service_bookmark_unittest.cc

Issue 2461463002: [Sync] Replacing NULL with nullptr/null throughout sync code. (Closed)
Patch Set: Reverted PROFILE_nullptr mistake. Created 4 years, 1 month 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 (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 // TODO(akalin): This file is basically just a unit test for 5 // TODO(akalin): This file is basically just a unit test for
6 // BookmarkChangeProcessor. Write unit tests for 6 // BookmarkChangeProcessor. Write unit tests for
7 // BookmarkModelAssociator separately. 7 // BookmarkModelAssociator separately.
8 8
9 #include <stddef.h> 9 #include <stddef.h>
10 #include <stdint.h> 10 #include <stdint.h>
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 int64_t AddWithMetaInfo(const std::string& title, 111 int64_t AddWithMetaInfo(const std::string& title,
112 const std::string& url, 112 const std::string& url,
113 const BookmarkNode::MetaInfoMap* meta_info_map, 113 const BookmarkNode::MetaInfoMap* meta_info_map,
114 bool is_folder, 114 bool is_folder,
115 int64_t parent_id, 115 int64_t parent_id,
116 int64_t predecessor_id) { 116 int64_t predecessor_id) {
117 syncer::ReadNode parent(trans_); 117 syncer::ReadNode parent(trans_);
118 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id)); 118 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id));
119 syncer::WriteNode node(trans_); 119 syncer::WriteNode node(trans_);
120 if (predecessor_id == 0) { 120 if (predecessor_id == 0) {
121 EXPECT_TRUE(node.InitBookmarkByCreation(parent, NULL)); 121 EXPECT_TRUE(node.InitBookmarkByCreation(parent, nullptr));
122 } else { 122 } else {
123 syncer::ReadNode predecessor(trans_); 123 syncer::ReadNode predecessor(trans_);
124 EXPECT_EQ(BaseNode::INIT_OK, predecessor.InitByIdLookup(predecessor_id)); 124 EXPECT_EQ(BaseNode::INIT_OK, predecessor.InitByIdLookup(predecessor_id));
125 EXPECT_EQ(predecessor.GetParentId(), parent.GetId()); 125 EXPECT_EQ(predecessor.GetParentId(), parent.GetId());
126 EXPECT_TRUE(node.InitBookmarkByCreation(parent, &predecessor)); 126 EXPECT_TRUE(node.InitBookmarkByCreation(parent, &predecessor));
127 } 127 }
128 EXPECT_EQ(node.GetPredecessorId(), predecessor_id); 128 EXPECT_EQ(node.GetPredecessorId(), predecessor_id);
129 EXPECT_EQ(node.GetParentId(), parent_id); 129 EXPECT_EQ(node.GetParentId(), parent_id);
130 node.SetIsFolder(is_folder); 130 node.SetIsFolder(is_folder);
131 node.SetTitle(title); 131 node.SetTitle(title);
(...skipping 12 matching lines...) Expand all
144 record.id = node.GetId(); 144 record.id = node.GetId();
145 changes_.push_back(record); 145 changes_.push_back(record);
146 return node.GetId(); 146 return node.GetId();
147 } 147 }
148 148
149 int64_t Add(const std::string& title, 149 int64_t Add(const std::string& title,
150 const std::string& url, 150 const std::string& url,
151 bool is_folder, 151 bool is_folder,
152 int64_t parent_id, 152 int64_t parent_id,
153 int64_t predecessor_id) { 153 int64_t predecessor_id) {
154 return AddWithMetaInfo(title, url, NULL, is_folder, parent_id, 154 return AddWithMetaInfo(title, url, nullptr, is_folder, parent_id,
155 predecessor_id); 155 predecessor_id);
156 } 156 }
157 157
158 // Add a bookmark folder. 158 // Add a bookmark folder.
159 int64_t AddFolder(const std::string& title, 159 int64_t AddFolder(const std::string& title,
160 int64_t parent_id, 160 int64_t parent_id,
161 int64_t predecessor_id) { 161 int64_t predecessor_id) {
162 return Add(title, std::string(), true, parent_id, predecessor_id); 162 return Add(title, std::string(), true, parent_id, predecessor_id);
163 } 163 }
164 int64_t AddFolderWithMetaInfo(const std::string& title, 164 int64_t AddFolderWithMetaInfo(const std::string& title,
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 // very useful for assertions. 228 // very useful for assertions.
229 int64_t ModifyPosition(int64_t id, 229 int64_t ModifyPosition(int64_t id,
230 int64_t parent_id, 230 int64_t parent_id,
231 int64_t predecessor_id) { 231 int64_t predecessor_id) {
232 syncer::ReadNode parent(trans_); 232 syncer::ReadNode parent(trans_);
233 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id)); 233 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id));
234 syncer::WriteNode node(trans_); 234 syncer::WriteNode node(trans_);
235 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id)); 235 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id));
236 int64_t old_parent_id = node.GetParentId(); 236 int64_t old_parent_id = node.GetParentId();
237 if (predecessor_id == 0) { 237 if (predecessor_id == 0) {
238 EXPECT_TRUE(node.SetPosition(parent, NULL)); 238 EXPECT_TRUE(node.SetPosition(parent, nullptr));
239 } else { 239 } else {
240 syncer::ReadNode predecessor(trans_); 240 syncer::ReadNode predecessor(trans_);
241 EXPECT_EQ(BaseNode::INIT_OK, predecessor.InitByIdLookup(predecessor_id)); 241 EXPECT_EQ(BaseNode::INIT_OK, predecessor.InitByIdLookup(predecessor_id));
242 EXPECT_EQ(predecessor.GetParentId(), parent.GetId()); 242 EXPECT_EQ(predecessor.GetParentId(), parent.GetId());
243 EXPECT_TRUE(node.SetPosition(parent, &predecessor)); 243 EXPECT_TRUE(node.SetPosition(parent, &predecessor));
244 } 244 }
245 SetModified(id); 245 SetModified(id);
246 return old_parent_id; 246 return old_parent_id;
247 } 247 }
248 248
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 int64_t AddFolderToShare(syncer::WriteTransaction* trans, 392 int64_t AddFolderToShare(syncer::WriteTransaction* trans,
393 const std::string& title) { 393 const std::string& title) {
394 EXPECT_FALSE(model_associator_); 394 EXPECT_FALSE(model_associator_);
395 395
396 // Be sure to call CreatePermanentBookmarkNodes(), otherwise this will fail. 396 // Be sure to call CreatePermanentBookmarkNodes(), otherwise this will fail.
397 syncer::ReadNode bookmark_bar(trans); 397 syncer::ReadNode bookmark_bar(trans);
398 EXPECT_EQ(BaseNode::INIT_OK, 398 EXPECT_EQ(BaseNode::INIT_OK,
399 bookmark_bar.InitByTagLookupForBookmarks("bookmark_bar")); 399 bookmark_bar.InitByTagLookupForBookmarks("bookmark_bar"));
400 400
401 syncer::WriteNode node(trans); 401 syncer::WriteNode node(trans);
402 EXPECT_TRUE(node.InitBookmarkByCreation(bookmark_bar, NULL)); 402 EXPECT_TRUE(node.InitBookmarkByCreation(bookmark_bar, nullptr));
403 node.SetIsFolder(true); 403 node.SetIsFolder(true);
404 node.SetTitle(title); 404 node.SetTitle(title);
405 405
406 return node.GetId(); 406 return node.GetId();
407 } 407 }
408 408
409 // Inserts a bookmark directly to the share. 409 // Inserts a bookmark directly to the share.
410 // Do not use this after model association is complete. 410 // Do not use this after model association is complete.
411 // 411 //
412 // This function differs from the AddURL() function declared elsewhere in this 412 // This function differs from the AddURL() function declared elsewhere in this
413 // file in that it only affects the sync model. It would be invalid to change 413 // file in that it only affects the sync model. It would be invalid to change
414 // the sync model directly after ModelAssociation. This function can be 414 // the sync model directly after ModelAssociation. This function can be
415 // invoked prior to model association to set up first-time sync model 415 // invoked prior to model association to set up first-time sync model
416 // association scenarios. 416 // association scenarios.
417 int64_t AddBookmarkToShare(syncer::WriteTransaction* trans, 417 int64_t AddBookmarkToShare(syncer::WriteTransaction* trans,
418 int64_t parent_id, 418 int64_t parent_id,
419 const std::string& title, 419 const std::string& title,
420 const std::string& url) { 420 const std::string& url) {
421 EXPECT_FALSE(model_associator_); 421 EXPECT_FALSE(model_associator_);
422 422
423 syncer::ReadNode parent(trans); 423 syncer::ReadNode parent(trans);
424 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id)); 424 EXPECT_EQ(BaseNode::INIT_OK, parent.InitByIdLookup(parent_id));
425 425
426 sync_pb::BookmarkSpecifics specifics; 426 sync_pb::BookmarkSpecifics specifics;
427 specifics.set_url(url); 427 specifics.set_url(url);
428 specifics.set_title(title); 428 specifics.set_title(title);
429 429
430 syncer::WriteNode node(trans); 430 syncer::WriteNode node(trans);
431 EXPECT_TRUE(node.InitBookmarkByCreation(parent, NULL)); 431 EXPECT_TRUE(node.InitBookmarkByCreation(parent, nullptr));
432 node.SetIsFolder(false); 432 node.SetIsFolder(false);
433 node.SetTitle(title); 433 node.SetTitle(title);
434 node.SetBookmarkSpecifics(specifics); 434 node.SetBookmarkSpecifics(specifics);
435 435
436 return node.GetId(); 436 return node.GetId();
437 } 437 }
438 438
439 // Create a BookmarkModel. If |delete_bookmarks| is true, the bookmarks file 439 // Create a BookmarkModel. If |delete_bookmarks| is true, the bookmarks file
440 // will be deleted before starting up the BookmarkModel. 440 // will be deleted before starting up the BookmarkModel.
441 std::unique_ptr<BookmarkModel> CreateBookmarkModel(bool delete_bookmarks) { 441 std::unique_ptr<BookmarkModel> CreateBookmarkModel(bool delete_bookmarks) {
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
517 syncer::ReadNode lookup(&trans); 517 syncer::ReadNode lookup(&trans);
518 if (lookup.InitByTagLookupForBookmarks(permanent_tags[i]) == 518 if (lookup.InitByTagLookupForBookmarks(permanent_tags[i]) ==
519 syncer::ReadNode::INIT_OK) { 519 syncer::ReadNode::INIT_OK) {
520 last_child_id = lookup.GetId(); 520 last_child_id = lookup.GetId();
521 continue; 521 continue;
522 } 522 }
523 523
524 // If it doesn't exist, create the permanent node at the end of the 524 // If it doesn't exist, create the permanent node at the end of the
525 // ordering. 525 // ordering.
526 syncer::ReadNode predecessor_node(&trans); 526 syncer::ReadNode predecessor_node(&trans);
527 syncer::ReadNode* predecessor = NULL; 527 syncer::ReadNode* predecessor = nullptr;
528 if (last_child_id != syncer::kInvalidId) { 528 if (last_child_id != syncer::kInvalidId) {
529 EXPECT_EQ(BaseNode::INIT_OK, 529 EXPECT_EQ(BaseNode::INIT_OK,
530 predecessor_node.InitByIdLookup(last_child_id)); 530 predecessor_node.InitByIdLookup(last_child_id));
531 predecessor = &predecessor_node; 531 predecessor = &predecessor_node;
532 } 532 }
533 syncer::WriteNode node(&trans); 533 syncer::WriteNode node(&trans);
534 if (!node.InitBookmarkByCreation(root, predecessor)) 534 if (!node.InitBookmarkByCreation(root, predecessor))
535 return false; 535 return false;
536 node.SetIsFolder(true); 536 node.SetIsFolder(true);
537 node.GetMutableEntryForTest()->PutUniqueServerTag(permanent_tags[i]); 537 node.GetMutableEntryForTest()->PutUniqueServerTag(permanent_tags[i]);
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
655 EXPECT_EQ(gnode.GetPredecessorId(), 0); 655 EXPECT_EQ(gnode.GetPredecessorId(), 0);
656 } else { 656 } else {
657 const BookmarkNode* bprev = bnode->parent()->GetChild(browser_index - 1); 657 const BookmarkNode* bprev = bnode->parent()->GetChild(browser_index - 1);
658 syncer::ReadNode gprev(trans); 658 syncer::ReadNode gprev(trans);
659 ASSERT_TRUE(InitSyncNodeFromChromeNode(bprev, &gprev)); 659 ASSERT_TRUE(InitSyncNodeFromChromeNode(bprev, &gprev));
660 EXPECT_EQ(gnode.GetPredecessorId(), gprev.GetId()); 660 EXPECT_EQ(gnode.GetPredecessorId(), gprev.GetId());
661 EXPECT_EQ(gnode.GetParentId(), gprev.GetParentId()); 661 EXPECT_EQ(gnode.GetParentId(), gprev.GetParentId());
662 } 662 }
663 // Note: the managed node is the last child of the root_node but isn't 663 // Note: the managed node is the last child of the root_node but isn't
664 // synced; if CanSyncNode() is false then there is no next node to sync. 664 // synced; if CanSyncNode() is false then there is no next node to sync.
665 const BookmarkNode* bnext = NULL; 665 const BookmarkNode* bnext = nullptr;
666 if (browser_index + 1 < bnode->parent()->child_count()) 666 if (browser_index + 1 < bnode->parent()->child_count())
667 bnext = bnode->parent()->GetChild(browser_index + 1); 667 bnext = bnode->parent()->GetChild(browser_index + 1);
668 if (!bnext || !CanSyncNode(bnext)) { 668 if (!bnext || !CanSyncNode(bnext)) {
669 EXPECT_EQ(gnode.GetSuccessorId(), 0); 669 EXPECT_EQ(gnode.GetSuccessorId(), 0);
670 } else { 670 } else {
671 syncer::ReadNode gnext(trans); 671 syncer::ReadNode gnext(trans);
672 ASSERT_TRUE(InitSyncNodeFromChromeNode(bnext, &gnext)); 672 ASSERT_TRUE(InitSyncNodeFromChromeNode(bnext, &gnext));
673 EXPECT_EQ(gnode.GetSuccessorId(), gnext.GetId()); 673 EXPECT_EQ(gnode.GetSuccessorId(), gnext.GetId());
674 EXPECT_EQ(gnode.GetParentId(), gnext.GetParentId()); 674 EXPECT_EQ(gnode.GetParentId(), gnext.GetParentId());
675 } 675 }
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
987 // Number of nodes in bookmark bar before association. 987 // Number of nodes in bookmark bar before association.
988 int total_node_count = model()->bookmark_bar_node()->GetTotalNodeCount(); 988 int total_node_count = model()->bookmark_bar_node()->GetTotalNodeCount();
989 989
990 CreatePermanentBookmarkNodes(); 990 CreatePermanentBookmarkNodes();
991 991
992 int64_t sync_bookmark_id_to_delete = 0; 992 int64_t sync_bookmark_id_to_delete = 0;
993 { 993 {
994 // Create sync folders matching native folders above. 994 // Create sync folders matching native folders above.
995 int64_t parent_id = 0; 995 int64_t parent_id = 0;
996 syncer::WriteTransaction trans(FROM_HERE, test_user_share()->user_share()); 996 syncer::WriteTransaction trans(FROM_HERE, test_user_share()->user_share());
997 // Create in reverse order because AddFolderToShare passes NULL for 997 // Create in reverse order because AddFolderToShare passes null for
998 // |predecessor| argument. 998 // |predecessor| argument.
999 for (int i = kNumFolders - 1; i >= 0; i--) { 999 for (int i = kNumFolders - 1; i >= 0; i--) {
1000 int64_t id = AddFolderToShare(&trans, "folder"); 1000 int64_t id = AddFolderToShare(&trans, "folder");
1001 1001
1002 // Pre-map sync folders to native folders by setting 1002 // Pre-map sync folders to native folders by setting
1003 // external ID. This will verify that the association algorithm picks 1003 // external ID. This will verify that the association algorithm picks
1004 // the right ones despite all of them having identical names. 1004 // the right ones despite all of them having identical names.
1005 // More specifically this will help to avoid cloning bookmarks from 1005 // More specifically this will help to avoid cloning bookmarks from
1006 // a wrong folder. 1006 // a wrong folder.
1007 syncer::WriteNode node(&trans); 1007 syncer::WriteNode node(&trans);
1008 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id)); 1008 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id));
1009 node.GetMutableEntryForTest()->PutLocalExternalId(folder_ids[i]); 1009 node.GetMutableEntryForTest()->PutLocalExternalId(folder_ids[i]);
1010 1010
1011 if (i == kFolderToIncludeBookmarks) { 1011 if (i == kFolderToIncludeBookmarks) {
1012 parent_id = id; 1012 parent_id = id;
1013 } 1013 }
1014 } 1014 }
1015 1015
1016 // Create sync bookmark matching native bookmarks above in reverse order 1016 // Create sync bookmark matching native bookmarks above in reverse order
1017 // because AddBookmarkToShare passes NULL for |predecessor| argument. 1017 // because AddBookmarkToShare passes null for |predecessor| argument.
1018 for (int i = kNumBookmarks - 1; i >= 0; i--) { 1018 for (int i = kNumBookmarks - 1; i >= 0; i--) {
1019 int id = AddBookmarkToShare(&trans, parent_id, "bookmark", 1019 int id = AddBookmarkToShare(&trans, parent_id, "bookmark",
1020 "http://www.google.com/"); 1020 "http://www.google.com/");
1021 1021
1022 // Pre-map sync bookmarks to native bookmarks by setting 1022 // Pre-map sync bookmarks to native bookmarks by setting
1023 // external ID. This will verify that the association algorithm picks 1023 // external ID. This will verify that the association algorithm picks
1024 // the right ones despite all of them having identical names and URLs. 1024 // the right ones despite all of them having identical names and URLs.
1025 syncer::WriteNode node(&trans); 1025 syncer::WriteNode node(&trans);
1026 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id)); 1026 EXPECT_EQ(BaseNode::INIT_OK, node.InitByIdLookup(id));
1027 node.GetMutableEntryForTest()->PutLocalExternalId(bookmark_ids[i]); 1027 node.GetMutableEntryForTest()->PutLocalExternalId(bookmark_ids[i]);
(...skipping 659 matching lines...) Expand 10 before | Expand all | Expand 10 after
1687 // +-- Mobile bookmarks 1687 // +-- Mobile bookmarks
1688 // |-- f5 1688 // |-- f5
1689 // | |-- f5u1, http://www.f5u1.com/ 1689 // | |-- f5u1, http://www.f5u1.com/
1690 // |-- f6 1690 // |-- f6
1691 // | |-- f6u1, http://www.f6u1.com/ 1691 // | |-- f6u1, http://www.f6u1.com/
1692 // | |-- f6u2, http://www.f6u2.com/ 1692 // | |-- f6u2, http://www.f6u2.com/
1693 // +-- u5, http://www.u5.com/ 1693 // +-- u5, http://www.u5.com/
1694 1694
1695 static TestData kBookmarkBarChildren[] = { 1695 static TestData kBookmarkBarChildren[] = {
1696 {"u2", "http://www.u2.com/"}, 1696 {"u2", "http://www.u2.com/"},
1697 {"f1", NULL}, 1697 {"f1", nullptr},
1698 {"u1", "http://www.u1.com/"}, 1698 {"u1", "http://www.u1.com/"},
1699 {"f2", NULL}, 1699 {"f2", nullptr},
1700 }; 1700 };
1701 static TestData kF1Children[] = { 1701 static TestData kF1Children[] = {
1702 {"f1u4", "http://www.f1u4.com/"}, 1702 {"f1u4", "http://www.f1u4.com/"},
1703 {"f1u2", "http://www.f1u2.com/"}, 1703 {"f1u2", "http://www.f1u2.com/"},
1704 {"f1u3", "http://www.f1u3.com/"}, 1704 {"f1u3", "http://www.f1u3.com/"},
1705 {"f1u1", "http://www.f1u1.com/"}, 1705 {"f1u1", "http://www.f1u1.com/"},
1706 }; 1706 };
1707 static TestData kF2Children[] = { 1707 static TestData kF2Children[] = {
1708 {"f2u2", "http://www.f2u2.com/"}, 1708 {"f2u2", "http://www.f2u2.com/"},
1709 {"f2u4", "http://www.f2u4.com/"}, 1709 {"f2u4", "http://www.f2u4.com/"},
1710 {"f2u3", "http://www.f2u3.com/"}, 1710 {"f2u3", "http://www.f2u3.com/"},
1711 {"f2u1", "http://www.f2u1.com/"}, 1711 {"f2u1", "http://www.f2u1.com/"},
1712 }; 1712 };
1713 1713
1714 static TestData kOtherBookmarkChildren[] = {{"f3", NULL}, 1714 static TestData kOtherBookmarkChildren[] = {{"f3", nullptr},
1715 {"u4", "http://www.u4.com/"}, 1715 {"u4", "http://www.u4.com/"},
1716 {"u3", "http://www.u3.com/"}, 1716 {"u3", "http://www.u3.com/"},
1717 {"f4", NULL}, 1717 {"f4", nullptr},
1718 {"dup", NULL}, 1718 {"dup", nullptr},
1719 {"dup", NULL}, 1719 {"dup", nullptr},
1720 {" ls ", "http://www.ls.com/"}}; 1720 {" ls ", "http://www.ls.com/"}};
1721 static TestData kF3Children[] = { 1721 static TestData kF3Children[] = {
1722 {"f3u4", "http://www.f3u4.com/"}, 1722 {"f3u4", "http://www.f3u4.com/"},
1723 {"f3u2", "http://www.f3u2.com/"}, 1723 {"f3u2", "http://www.f3u2.com/"},
1724 {"f3u3", "http://www.f3u3.com/"}, 1724 {"f3u3", "http://www.f3u3.com/"},
1725 {"f3u1", "http://www.f3u1.com/"}, 1725 {"f3u1", "http://www.f3u1.com/"},
1726 }; 1726 };
1727 static TestData kF4Children[] = { 1727 static TestData kF4Children[] = {
1728 {"f4u1", "http://www.f4u1.com/"}, 1728 {"f4u1", "http://www.f4u1.com/"},
1729 {"f4u2", "http://www.f4u2.com/"}, 1729 {"f4u2", "http://www.f4u2.com/"},
1730 {"f4u3", "http://www.f4u3.com/"}, 1730 {"f4u3", "http://www.f4u3.com/"},
1731 {"f4u4", "http://www.f4u4.com/"}, 1731 {"f4u4", "http://www.f4u4.com/"},
1732 }; 1732 };
1733 static TestData kDup1Children[] = { 1733 static TestData kDup1Children[] = {
1734 {"dupu1", "http://www.dupu1.com/"}, 1734 {"dupu1", "http://www.dupu1.com/"},
1735 }; 1735 };
1736 static TestData kDup2Children[] = { 1736 static TestData kDup2Children[] = {
1737 {"dupu2", "http://www.dupu2.com/"}, 1737 {"dupu2", "http://www.dupu2.com/"},
1738 }; 1738 };
1739 1739
1740 static TestData kMobileBookmarkChildren[] = { 1740 static TestData kMobileBookmarkChildren[] = {
1741 {"f5", NULL}, 1741 {"f5", nullptr},
1742 {"f6", NULL}, 1742 {"f6", nullptr},
1743 {"u5", "http://www.u5.com/"}, 1743 {"u5", "http://www.u5.com/"},
1744 }; 1744 };
1745 static TestData kF5Children[] = { 1745 static TestData kF5Children[] = {
1746 {"f5u1", "http://www.f5u1.com/"}, 1746 {"f5u1", "http://www.f5u1.com/"},
1747 {"f5u2", "http://www.f5u2.com/"}, 1747 {"f5u2", "http://www.f5u2.com/"},
1748 }; 1748 };
1749 static TestData kF6Children[] = { 1749 static TestData kF6Children[] = {
1750 {"f6u1", "http://www.f6u1.com/"}, 1750 {"f6u1", "http://www.f6u1.com/"},
1751 {"f6u2", "http://www.f6u2.com/"}, 1751 {"f6u2", "http://www.f6u2.com/"},
1752 }; 1752 };
(...skipping 11 matching lines...) Expand all
1764 DCHECK(node); 1764 DCHECK(node);
1765 DCHECK(data); 1765 DCHECK(data);
1766 DCHECK(node->is_folder()); 1766 DCHECK(node->is_folder());
1767 for (int i = 0; i < size; ++i) { 1767 for (int i = 0; i < size; ++i) {
1768 const TestData& item = data[i]; 1768 const TestData& item = data[i];
1769 if (item.url) { 1769 if (item.url) {
1770 const base::Time add_time = 1770 const base::Time add_time =
1771 start_time_ + base::TimeDelta::FromMinutes(*running_count); 1771 start_time_ + base::TimeDelta::FromMinutes(*running_count);
1772 model()->AddURLWithCreationTimeAndMetaInfo( 1772 model()->AddURLWithCreationTimeAndMetaInfo(
1773 node, i, base::UTF8ToUTF16(item.title), GURL(item.url), add_time, 1773 node, i, base::UTF8ToUTF16(item.title), GURL(item.url), add_time,
1774 NULL); 1774 nullptr);
1775 } else { 1775 } else {
1776 model()->AddFolder(node, i, base::UTF8ToUTF16(item.title)); 1776 model()->AddFolder(node, i, base::UTF8ToUTF16(item.title));
1777 } 1777 }
1778 (*running_count)++; 1778 (*running_count)++;
1779 } 1779 }
1780 } 1780 }
1781 1781
1782 void ProfileSyncServiceBookmarkTestWithData::CompareWithTestData( 1782 void ProfileSyncServiceBookmarkTestWithData::CompareWithTestData(
1783 const BookmarkNode* node, 1783 const BookmarkNode* node,
1784 const TestData* data, 1784 const TestData* data,
1785 int size, 1785 int size,
1786 int* running_count) { 1786 int* running_count) {
1787 DCHECK(node); 1787 DCHECK(node);
1788 DCHECK(data); 1788 DCHECK(data);
1789 DCHECK(node->is_folder()); 1789 DCHECK(node->is_folder());
1790 ASSERT_EQ(size, node->child_count()); 1790 ASSERT_EQ(size, node->child_count());
1791 for (int i = 0; i < size; ++i) { 1791 for (int i = 0; i < size; ++i) {
1792 const BookmarkNode* child_node = node->GetChild(i); 1792 const BookmarkNode* child_node = node->GetChild(i);
1793 const TestData& item = data[i]; 1793 const TestData& item = data[i];
1794 GURL url = GURL(item.url == NULL ? "" : item.url); 1794 GURL url = GURL(item.url == nullptr ? "" : item.url);
1795 BookmarkNode test_node(url); 1795 BookmarkNode test_node(url);
1796 test_node.SetTitle(base::UTF8ToUTF16(item.title)); 1796 test_node.SetTitle(base::UTF8ToUTF16(item.title));
1797 EXPECT_EQ(child_node->GetTitle(), test_node.GetTitle()); 1797 EXPECT_EQ(child_node->GetTitle(), test_node.GetTitle());
1798 if (item.url) { 1798 if (item.url) {
1799 EXPECT_FALSE(child_node->is_folder()); 1799 EXPECT_FALSE(child_node->is_folder());
1800 EXPECT_TRUE(child_node->is_url()); 1800 EXPECT_TRUE(child_node->is_url());
1801 EXPECT_EQ(child_node->url(), test_node.url()); 1801 EXPECT_EQ(child_node->url(), test_node.url());
1802 const base::Time expected_time = 1802 const base::Time expected_time =
1803 start_time_ + base::TimeDelta::FromMinutes(*running_count); 1803 start_time_ + base::TimeDelta::FromMinutes(*running_count);
1804 EXPECT_EQ(expected_time.ToInternalValue(), 1804 EXPECT_EQ(expected_time.ToInternalValue(),
(...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after
2592 EXPECT_EQ(syncer::kInvalidId, sync_id); 2592 EXPECT_EQ(syncer::kInvalidId, sync_id);
2593 2593
2594 // Verify that Sync ignores deleting this node. 2594 // Verify that Sync ignores deleting this node.
2595 model()->Remove(node); 2595 model()->Remove(node);
2596 EXPECT_EQ(sync_bookmark_count, GetSyncBookmarkCount()); 2596 EXPECT_EQ(sync_bookmark_count, GetSyncBookmarkCount());
2597 } 2597 }
2598 2598
2599 } // namespace 2599 } // namespace
2600 2600
2601 } // namespace browser_sync 2601 } // namespace browser_sync
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698