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

Side by Side Diff: components/sync/core_impl/test/test_entry_factory.cc

Issue 2130453004: [Sync] Move //sync to //components/sync. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 4 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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 "sync/internal_api/public/test/test_entry_factory.h" 5 #include "components/sync/core/test/test_entry_factory.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include "sync/syncable/directory.h" 9 #include "components/sync/syncable/directory.h"
10 #include "sync/syncable/entry.h" 10 #include "components/sync/syncable/entry.h"
11 #include "sync/syncable/mutable_entry.h" 11 #include "components/sync/syncable/mutable_entry.h"
12 #include "sync/syncable/syncable_id.h" 12 #include "components/sync/syncable/syncable_id.h"
13 #include "sync/syncable/syncable_read_transaction.h" 13 #include "components/sync/syncable/syncable_read_transaction.h"
14 #include "sync/syncable/syncable_util.h" 14 #include "components/sync/syncable/syncable_util.h"
15 #include "sync/syncable/syncable_write_transaction.h" 15 #include "components/sync/syncable/syncable_write_transaction.h"
16 #include "sync/test/engine/test_id_factory.h" 16 #include "components/sync/test/engine/test_id_factory.h"
17 17
18 using std::string; 18 using std::string;
19 19
20 namespace syncer { 20 namespace syncer {
21 21
22 using syncable::Id; 22 using syncable::Id;
23 using syncable::MutableEntry; 23 using syncable::MutableEntry;
24 using syncable::UNITTEST; 24 using syncable::UNITTEST;
25 using syncable::WriteTransaction; 25 using syncable::WriteTransaction;
26 26
27 TestEntryFactory::TestEntryFactory(syncable::Directory *dir) 27 TestEntryFactory::TestEntryFactory(syncable::Directory* dir)
28 : directory_(dir), next_revision_(1) { 28 : directory_(dir), next_revision_(1) {}
29 }
30 29
31 TestEntryFactory::~TestEntryFactory() { } 30 TestEntryFactory::~TestEntryFactory() {}
32 31
33 int64_t TestEntryFactory::CreateUnappliedNewItemWithParent( 32 int64_t TestEntryFactory::CreateUnappliedNewItemWithParent(
34 const string& item_id, 33 const string& item_id,
35 const sync_pb::EntitySpecifics& specifics, 34 const sync_pb::EntitySpecifics& specifics,
36 const string& parent_id) { 35 const string& parent_id) {
37 WriteTransaction trans(FROM_HERE, UNITTEST, directory_); 36 WriteTransaction trans(FROM_HERE, UNITTEST, directory_);
38 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM, 37 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM,
39 Id::CreateFromServerId(item_id)); 38 Id::CreateFromServerId(item_id));
40 DCHECK(entry.good()); 39 DCHECK(entry.good());
41 entry.PutServerVersion(GetNextRevision()); 40 entry.PutServerVersion(GetNextRevision());
42 entry.PutIsUnappliedUpdate(true); 41 entry.PutIsUnappliedUpdate(true);
43 42
44 entry.PutServerNonUniqueName(item_id); 43 entry.PutServerNonUniqueName(item_id);
45 entry.PutServerParentId(Id::CreateFromServerId(parent_id)); 44 entry.PutServerParentId(Id::CreateFromServerId(parent_id));
46 entry.PutServerIsDir(true); 45 entry.PutServerIsDir(true);
47 entry.PutServerSpecifics(specifics); 46 entry.PutServerSpecifics(specifics);
48 return entry.GetMetahandle(); 47 return entry.GetMetahandle();
49 } 48 }
50 49
51 int64_t TestEntryFactory::CreateUnappliedNewBookmarkItemWithParent( 50 int64_t TestEntryFactory::CreateUnappliedNewBookmarkItemWithParent(
52 const string& item_id, 51 const string& item_id,
53 const sync_pb::EntitySpecifics& specifics, 52 const sync_pb::EntitySpecifics& specifics,
54 const string& parent_id) { 53 const string& parent_id) {
55 WriteTransaction trans(FROM_HERE, UNITTEST, directory_); 54 WriteTransaction trans(FROM_HERE, UNITTEST, directory_);
56 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM, 55 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM,
57 Id::CreateFromServerId(item_id)); 56 Id::CreateFromServerId(item_id));
58 DCHECK(entry.good()); 57 DCHECK(entry.good());
59 entry.PutServerVersion(GetNextRevision()); 58 entry.PutServerVersion(GetNextRevision());
60 entry.PutIsUnappliedUpdate(true); 59 entry.PutIsUnappliedUpdate(true);
61 60
62 entry.PutServerNonUniqueName(item_id); 61 entry.PutServerNonUniqueName(item_id);
63 entry.PutServerParentId(Id::CreateFromServerId(parent_id)); 62 entry.PutServerParentId(Id::CreateFromServerId(parent_id));
64 entry.PutServerIsDir(true); 63 entry.PutServerIsDir(true);
65 entry.PutServerSpecifics(specifics); 64 entry.PutServerSpecifics(specifics);
66 65
67 return entry.GetMetahandle(); 66 return entry.GetMetahandle();
68 } 67 }
69 68
70 int64_t TestEntryFactory::CreateUnappliedNewItem( 69 int64_t TestEntryFactory::CreateUnappliedNewItem(
71 const string& item_id, 70 const string& item_id,
72 const sync_pb::EntitySpecifics& specifics, 71 const sync_pb::EntitySpecifics& specifics,
73 bool is_unique) { 72 bool is_unique) {
74 WriteTransaction trans(FROM_HERE, UNITTEST, directory_); 73 WriteTransaction trans(FROM_HERE, UNITTEST, directory_);
75 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM, 74 MutableEntry entry(&trans, syncable::CREATE_NEW_UPDATE_ITEM,
76 Id::CreateFromServerId(item_id)); 75 Id::CreateFromServerId(item_id));
77 DCHECK(entry.good()); 76 DCHECK(entry.good());
78 entry.PutServerVersion(GetNextRevision()); 77 entry.PutServerVersion(GetNextRevision());
79 entry.PutIsUnappliedUpdate(true); 78 entry.PutIsUnappliedUpdate(true);
80 entry.PutServerNonUniqueName(item_id); 79 entry.PutServerNonUniqueName(item_id);
81 entry.PutServerParentId(syncable::Id::GetRoot()); 80 entry.PutServerParentId(syncable::Id::GetRoot());
82 entry.PutServerIsDir(is_unique); 81 entry.PutServerIsDir(is_unique);
83 entry.PutServerSpecifics(specifics); 82 entry.PutServerSpecifics(specifics);
84 if (is_unique) { // For top-level nodes. 83 if (is_unique) { // For top-level nodes.
85 entry.PutUniqueServerTag( 84 entry.PutUniqueServerTag(
86 ModelTypeToRootTag(GetModelTypeFromSpecifics(specifics))); 85 ModelTypeToRootTag(GetModelTypeFromSpecifics(specifics)));
87 } 86 }
88 return entry.GetMetahandle(); 87 return entry.GetMetahandle();
89 } 88 }
90 89
91 void TestEntryFactory::CreateUnsyncedItem(const Id& item_id, 90 void TestEntryFactory::CreateUnsyncedItem(const Id& item_id,
92 const Id& parent_id, 91 const Id& parent_id,
93 const string& name, 92 const string& name,
94 bool is_folder, 93 bool is_folder,
95 ModelType model_type, 94 ModelType model_type,
96 int64_t* metahandle_out) { 95 int64_t* metahandle_out) {
97 if (is_folder) { 96 if (is_folder) {
98 DCHECK_EQ(model_type, BOOKMARKS); 97 DCHECK_EQ(model_type, BOOKMARKS);
99 } 98 }
100 99
101 WriteTransaction trans(FROM_HERE, UNITTEST, directory_); 100 WriteTransaction trans(FROM_HERE, UNITTEST, directory_);
102 101
103 MutableEntry entry(&trans, syncable::CREATE, model_type, parent_id, name); 102 MutableEntry entry(&trans, syncable::CREATE, model_type, parent_id, name);
104 DCHECK(entry.good()); 103 DCHECK(entry.good());
105 entry.PutId(item_id); 104 entry.PutId(item_id);
106 entry.PutBaseVersion( 105 entry.PutBaseVersion(item_id.ServerKnows() ? GetNextRevision() : 0);
107 item_id.ServerKnows() ? GetNextRevision() : 0);
108 entry.PutIsUnsynced(true); 106 entry.PutIsUnsynced(true);
109 entry.PutIsDir(is_folder); 107 entry.PutIsDir(is_folder);
110 entry.PutIsDel(false); 108 entry.PutIsDel(false);
111 entry.PutParentId(parent_id); 109 entry.PutParentId(parent_id);
112 sync_pb::EntitySpecifics default_specifics; 110 sync_pb::EntitySpecifics default_specifics;
113 AddDefaultFieldValue(model_type, &default_specifics); 111 AddDefaultFieldValue(model_type, &default_specifics);
114 entry.PutSpecifics(default_specifics); 112 entry.PutSpecifics(default_specifics);
115 113
116 if (item_id.ServerKnows()) { 114 if (item_id.ServerKnows()) {
117 entry.PutServerSpecifics(default_specifics); 115 entry.PutServerSpecifics(default_specifics);
118 entry.PutServerIsDir(false); 116 entry.PutServerIsDir(false);
119 entry.PutServerParentId(parent_id); 117 entry.PutServerParentId(parent_id);
120 entry.PutServerIsDel(false); 118 entry.PutServerIsDel(false);
121 } 119 }
122 if (metahandle_out) 120 if (metahandle_out)
123 *metahandle_out = entry.GetMetahandle(); 121 *metahandle_out = entry.GetMetahandle();
124 } 122 }
125 123
126 int64_t TestEntryFactory::CreateUnappliedAndUnsyncedBookmarkItem( 124 int64_t TestEntryFactory::CreateUnappliedAndUnsyncedBookmarkItem(
127 const string& name) { 125 const string& name) {
128 int64_t metahandle = 0; 126 int64_t metahandle = 0;
129 CreateUnsyncedItem( 127 CreateUnsyncedItem(TestIdFactory::MakeServer(name), TestIdFactory::root(),
130 TestIdFactory::MakeServer(name), TestIdFactory::root(), 128 name, false, BOOKMARKS, &metahandle);
131 name, false, BOOKMARKS, &metahandle);
132 129
133 WriteTransaction trans(FROM_HERE, UNITTEST, directory_); 130 WriteTransaction trans(FROM_HERE, UNITTEST, directory_);
134 MutableEntry entry(&trans, syncable::GET_BY_HANDLE, metahandle); 131 MutableEntry entry(&trans, syncable::GET_BY_HANDLE, metahandle);
135 if (!entry.good()) { 132 if (!entry.good()) {
136 NOTREACHED(); 133 NOTREACHED();
137 return syncable::kInvalidMetaHandle; 134 return syncable::kInvalidMetaHandle;
138 } 135 }
139 136
140 entry.PutIsUnappliedUpdate(true); 137 entry.PutIsUnappliedUpdate(true);
141 entry.PutServerVersion(GetNextRevision()); 138 entry.PutServerVersion(GetNextRevision());
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 return false; 298 return false;
302 } 299 }
303 return entry.GetIsUnappliedUpdate(); 300 return entry.GetIsUnappliedUpdate();
304 } 301 }
305 302
306 int64_t TestEntryFactory::GetNextRevision() { 303 int64_t TestEntryFactory::GetNextRevision() {
307 return next_revision_++; 304 return next_revision_++;
308 } 305 }
309 306
310 } // namespace syncer 307 } // namespace syncer
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698