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

Unified Diff: sync/test/test_entry_factory.h

Issue 10825137: FYI: Control Data + Per-Device Metadata (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add PER_USER_METADATA, refactor some encryption code Created 8 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 side-by-side diff with in-line comments
Download patch
Index: sync/test/test_entry_factory.h
diff --git a/sync/test/test_entry_factory.h b/sync/test/test_entry_factory.h
new file mode 100644
index 0000000000000000000000000000000000000000..6a386463eabfd12b305f0111dfe9cde0e63fed1a
--- /dev/null
+++ b/sync/test/test_entry_factory.h
@@ -0,0 +1,72 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef SYNC_TEST_TEST_ENTRY_FACTORY_H_
+#define SYNC_TEST_TEST_ENTRY_FACTORY_H_
+
+#include <string>
+
+#include "base/basictypes.h"
+#include "sync/internal_api/public/base/model_type.h"
+#include "sync/protocol/sync.pb.h"
+
+namespace syncer {
+
+namespace syncable {
+class Directory;
+class Id;
+}
+
+class TestEntryFactory {
+ public:
+ TestEntryFactory(syncable::Directory* dir);
+ ~TestEntryFactory();
+
+ // Create a new unapplied folder node with a parent.
+ void CreateUnappliedNewItemWithParent(
+ const std::string& item_id,
+ const sync_pb::EntitySpecifics& specifics,
+ const std::string& parent_id);
+
+ // Create a new unapplied update without a parent.
+ void CreateUnappliedNewItem(const std::string& item_id,
+ const sync_pb::EntitySpecifics& specifics,
+ bool is_unique);
+
+ // Create an unsynced item in the database. If item_id is a local ID, it will
+ // be treated as a create-new. Otherwise, if it's a server ID, we'll fake the
+ // server data so that it looks like it exists on the server. Returns the
+ // methandle of the created item in |metahandle_out| if not NULL.
+ void CreateUnsyncedItem(const syncable::Id& item_id,
+ const syncable::Id& parent_id,
+ const std::string& name,
+ bool is_folder,
+ syncer::ModelType model_type,
+ int64* metahandle_out);
+
+ // Creates an item that is both unsynced an an unapplied update. Returns the
+ // metahandle of the created item.
+ int64 CreateUnappliedAndUnsyncedItem(const std::string& name,
+ syncer::ModelType model_type);
+
+ // Creates an item that has neither IS_UNSYNED or IS_UNAPPLIED_UPDATE. The
+ // item is known to both the server and client. Returns the metahandle of
+ // the created item.
+ int64 CreateSyncedItem(const std::string& name, syncer::ModelType
+ model_type, bool is_folder);
+
+ int64 GetNextRevision();
+
+ private:
+ syncable::Directory* directory();
+
+ syncable::Directory* directory_;
+ int64 next_revision_;
+
+ DISALLOW_COPY_AND_ASSIGN(TestEntryFactory);
+};
+
+} // namespace syncer
+
+#endif // SYNC_TEST_TEST_ENTRY_FACTORY_H_

Powered by Google App Engine
This is Rietveld 408576698