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

Side by Side Diff: chrome/browser/sync/profile_sync_service_bookmark_unittest.cc

Issue 376253002: Fix ProfileSyncServiceBookmarksTest on OS_IOS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <map> 9 #include <map>
10 #include <queue> 10 #include <queue>
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 #include "testing/gtest/include/gtest/gtest.h" 48 #include "testing/gtest/include/gtest/gtest.h"
49 49
50 namespace browser_sync { 50 namespace browser_sync {
51 51
52 using syncer::BaseNode; 52 using syncer::BaseNode;
53 using testing::_; 53 using testing::_;
54 using testing::InvokeWithoutArgs; 54 using testing::InvokeWithoutArgs;
55 using testing::Mock; 55 using testing::Mock;
56 using testing::StrictMock; 56 using testing::StrictMock;
57 57
58 #if defined(OS_ANDROID) 58 #if defined(OS_ANDROID) || defined(OS_IOS)
59 static const bool kExpectMobileBookmarks = true; 59 static const bool kExpectMobileBookmarks = true;
60 #else 60 #else
61 static const bool kExpectMobileBookmarks = false; 61 static const bool kExpectMobileBookmarks = false;
62 #endif // defined(OS_ANDROID) 62 #endif // defined(OS_ANDROID) || defined(OS_IOS)
63 63
64 namespace { 64 namespace {
65 65
66 // FakeServerChange constructs a list of syncer::ChangeRecords while modifying 66 // FakeServerChange constructs a list of syncer::ChangeRecords while modifying
67 // the sync model, and can pass the ChangeRecord list to a 67 // the sync model, and can pass the ChangeRecord list to a
68 // syncer::SyncObserver (i.e., the ProfileSyncService) to test the client 68 // syncer::SyncObserver (i.e., the ProfileSyncService) to test the client
69 // change-application behavior. 69 // change-application behavior.
70 // Tests using FakeServerChange should be careful to avoid back-references, 70 // Tests using FakeServerChange should be careful to avoid back-references,
71 // since FakeServerChange will send the edits in the order specified. 71 // since FakeServerChange will send the edits in the order specified.
72 class FakeServerChange { 72 class FakeServerChange {
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
431 } 431 }
432 432
433 if (!root_exists) { 433 if (!root_exists) {
434 if (!syncer::TestUserShare::CreateRoot(type, 434 if (!syncer::TestUserShare::CreateRoot(type,
435 test_user_share_.user_share())) 435 test_user_share_.user_share()))
436 return false; 436 return false;
437 } 437 }
438 438
439 const int kNumPermanentNodes = 3; 439 const int kNumPermanentNodes = 3;
440 const std::string permanent_tags[kNumPermanentNodes] = { 440 const std::string permanent_tags[kNumPermanentNodes] = {
441 "bookmark_bar", "other_bookmarks", "synced_bookmarks" 441 #if defined(OS_IOS)
442 "synced_bookmarks",
443 #endif
444 "bookmark_bar",
445 "other_bookmarks",
446 #if !defined(OS_IOS)
447 "synced_bookmarks",
448 #endif
442 }; 449 };
443 syncer::WriteTransaction trans(FROM_HERE, test_user_share_.user_share()); 450 syncer::WriteTransaction trans(FROM_HERE, test_user_share_.user_share());
444 syncer::ReadNode root(&trans); 451 syncer::ReadNode root(&trans);
445 EXPECT_EQ(BaseNode::INIT_OK, root.InitTypeRoot(type)); 452 EXPECT_EQ(BaseNode::INIT_OK, root.InitTypeRoot(type));
446 453
447 // Loop through creating permanent nodes as necessary. 454 // Loop through creating permanent nodes as necessary.
448 int64 last_child_id = syncer::kInvalidId; 455 int64 last_child_id = syncer::kInvalidId;
449 for (int i = 0; i < kNumPermanentNodes; ++i) { 456 for (int i = 0; i < kNumPermanentNodes; ++i) {
450 // First check if the node already exists. This is for tests that involve 457 // First check if the node already exists. This is for tests that involve
451 // persistence and set up sync more than once. 458 // persistence and set up sync more than once.
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
682 model_associator_->GetChromeNodeFromSyncId(sync_id); 689 model_associator_->GetChromeNodeFromSyncId(sync_id);
683 ASSERT_TRUE(node); 690 ASSERT_TRUE(node);
684 const BookmarkNode* parent = 691 const BookmarkNode* parent =
685 model_associator_->GetChromeNodeFromSyncId(parent_sync_id); 692 model_associator_->GetChromeNodeFromSyncId(parent_sync_id);
686 EXPECT_TRUE(parent); 693 EXPECT_TRUE(parent);
687 EXPECT_EQ(node->parent(), parent); 694 EXPECT_EQ(node->parent(), parent);
688 } 695 }
689 696
690 void ExpectModelMatch(syncer::BaseTransaction* trans) { 697 void ExpectModelMatch(syncer::BaseTransaction* trans) {
691 const BookmarkNode* root = model_->root_node(); 698 const BookmarkNode* root = model_->root_node();
699 #if defined(OS_IOS)
700 EXPECT_EQ(root->GetIndexOf(model_->mobile_node()), 0);
701 EXPECT_EQ(root->GetIndexOf(model_->bookmark_bar_node()), 1);
702 EXPECT_EQ(root->GetIndexOf(model_->other_node()), 2);
703 #else
692 EXPECT_EQ(root->GetIndexOf(model_->bookmark_bar_node()), 0); 704 EXPECT_EQ(root->GetIndexOf(model_->bookmark_bar_node()), 0);
693 EXPECT_EQ(root->GetIndexOf(model_->other_node()), 1); 705 EXPECT_EQ(root->GetIndexOf(model_->other_node()), 1);
694 EXPECT_EQ(root->GetIndexOf(model_->mobile_node()), 2); 706 EXPECT_EQ(root->GetIndexOf(model_->mobile_node()), 2);
707 #endif
695 708
696 std::stack<int64> stack; 709 std::stack<int64> stack;
697 stack.push(bookmark_bar_id()); 710 stack.push(bookmark_bar_id());
698 while (!stack.empty()) { 711 while (!stack.empty()) {
699 int64 id = stack.top(); 712 int64 id = stack.top();
700 stack.pop(); 713 stack.pop();
701 if (!id) continue; 714 if (!id) continue;
702 715
703 ExpectBrowserNodeMatching(trans, id); 716 ExpectBrowserNodeMatching(trans, id);
704 717
(...skipping 1467 matching lines...) Expand 10 before | Expand all | Expand 10 after
2172 ExpectModelMatch(); 2185 ExpectModelMatch();
2173 2186
2174 // Then simulate the add call arriving late. 2187 // Then simulate the add call arriving late.
2175 change_processor_->BookmarkNodeAdded(model_, model_->bookmark_bar_node(), 0); 2188 change_processor_->BookmarkNodeAdded(model_, model_->bookmark_bar_node(), 0);
2176 ExpectModelMatch(); 2189 ExpectModelMatch();
2177 } 2190 }
2178 2191
2179 } // namespace 2192 } // namespace
2180 2193
2181 } // namespace browser_sync 2194 } // namespace browser_sync
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698