| Index: sync/syncable/syncable_unittest.cc
|
| diff --git a/sync/syncable/syncable_unittest.cc b/sync/syncable/syncable_unittest.cc
|
| index c3669014837f4138a0f0739023b42cad5ff71c59..253d038ac513f8e1aec31a21119933b601b1cb8f 100644
|
| --- a/sync/syncable/syncable_unittest.cc
|
| +++ b/sync/syncable/syncable_unittest.cc
|
| @@ -18,7 +18,6 @@
|
| #include "base/test/values_test_util.h"
|
| #include "base/threading/platform_thread.h"
|
| #include "base/values.h"
|
| -#include "sync/internal_api/public/base/node_ordinal.h"
|
| #include "sync/protocol/bookmark_specifics.pb.h"
|
| #include "sync/syncable/directory_backing_store.h"
|
| #include "sync/syncable/directory_change_delegate.h"
|
| @@ -145,7 +144,7 @@ TEST_F(SyncableGeneralTest, General) {
|
| // Test creating a new meta entry.
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, &dir);
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), name);
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), name);
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(BASE_VERSION, 1);
|
| @@ -229,15 +228,15 @@ TEST_F(SyncableGeneralTest, ChildrenOps) {
|
| Entry e(&rtrans, GET_BY_ID, id);
|
| ASSERT_FALSE(e.good()); // Hasn't been written yet.
|
|
|
| + Entry root(&rtrans, GET_BY_ID, rtrans.root_id());
|
| + ASSERT_TRUE(root.good());
|
| EXPECT_FALSE(dir.HasChildren(&rtrans, rtrans.root_id()));
|
| - Id child_id;
|
| - EXPECT_TRUE(dir.GetFirstChildId(&rtrans, rtrans.root_id(), &child_id));
|
| - EXPECT_TRUE(child_id.IsRoot());
|
| + EXPECT_TRUE(root.GetFirstChildId().IsRoot());
|
| }
|
|
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, &dir);
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), name);
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), name);
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(BASE_VERSION, 1);
|
| @@ -253,10 +252,10 @@ TEST_F(SyncableGeneralTest, ChildrenOps) {
|
| Entry child(&rtrans, GET_BY_HANDLE, written_metahandle);
|
| ASSERT_TRUE(child.good());
|
|
|
| + Entry root(&rtrans, GET_BY_ID, rtrans.root_id());
|
| + ASSERT_TRUE(root.good());
|
| EXPECT_TRUE(dir.HasChildren(&rtrans, rtrans.root_id()));
|
| - Id child_id;
|
| - EXPECT_TRUE(dir.GetFirstChildId(&rtrans, rtrans.root_id(), &child_id));
|
| - EXPECT_EQ(e.Get(ID), child_id);
|
| + EXPECT_EQ(e.Get(ID), root.GetFirstChildId());
|
| }
|
|
|
| {
|
| @@ -272,10 +271,10 @@ TEST_F(SyncableGeneralTest, ChildrenOps) {
|
| Entry e(&rtrans, GET_BY_ID, id);
|
| ASSERT_TRUE(e.good());
|
|
|
| + Entry root(&rtrans, GET_BY_ID, rtrans.root_id());
|
| + ASSERT_TRUE(root.good());
|
| EXPECT_FALSE(dir.HasChildren(&rtrans, rtrans.root_id()));
|
| - Id child_id;
|
| - EXPECT_TRUE(dir.GetFirstChildId(&rtrans, rtrans.root_id(), &child_id));
|
| - EXPECT_TRUE(child_id.IsRoot());
|
| + EXPECT_TRUE(root.GetFirstChildId().IsRoot());
|
| }
|
|
|
| dir.SaveChanges();
|
| @@ -299,7 +298,7 @@ TEST_F(SyncableGeneralTest, ClientIndexRebuildsProperly) {
|
| NullTransactionObserver()));
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, &dir);
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), name);
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), name);
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(BASE_VERSION, 1);
|
| @@ -345,7 +344,7 @@ TEST_F(SyncableGeneralTest, ClientIndexRebuildsDeletedProperly) {
|
| NullTransactionObserver()));
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, &dir);
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), "deleted");
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), "deleted");
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(BASE_VERSION, 1);
|
| @@ -400,7 +399,7 @@ TEST_F(SyncableGeneralTest, ToValue) {
|
| // Test creating a new meta entry.
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, &dir);
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), "new");
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), "new");
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(BASE_VERSION, 1);
|
| @@ -408,7 +407,7 @@ TEST_F(SyncableGeneralTest, ToValue) {
|
| scoped_ptr<DictionaryValue> value(me.ToValue(NULL));
|
| ExpectDictBooleanValue(true, *value, "good");
|
| EXPECT_TRUE(value->HasKey("kernel"));
|
| - ExpectDictStringValue("Unspecified", *value, "modelType");
|
| + ExpectDictStringValue("Bookmarks", *value, "modelType");
|
| ExpectDictBooleanValue(true, *value, "existsOnClientBecauseNameIsNonEmpty");
|
| ExpectDictBooleanValue(false, *value, "isRoot");
|
| }
|
| @@ -503,7 +502,7 @@ class SyncableDirectoryTest : public testing::Test {
|
| }
|
| void CreateEntry(const std::string& entryname, Id id) {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), entryname);
|
| + MutableEntry me(&wtrans, CREATE_BOOKMARK, wtrans.root_id(), entryname);
|
| ASSERT_TRUE(me.good());
|
| me.Put(ID, id);
|
| me.Put(IS_UNSYNCED, true);
|
| @@ -543,7 +542,7 @@ TEST_F(SyncableDirectoryTest, TakeSnapshotGetsMetahandlesToPurge) {
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| for (int i = 0; i < metas_to_create; i++) {
|
| - MutableEntry e(&trans, CREATE, trans.root_id(), "foo");
|
| + MutableEntry e(&trans, CREATE_BOOKMARK, trans.root_id(), "foo");
|
| e.Put(IS_UNSYNCED, true);
|
| sync_pb::EntitySpecifics specs;
|
| if (i % 2 == 0) {
|
| @@ -584,7 +583,7 @@ TEST_F(SyncableDirectoryTest, TakeSnapshotGetsAllDirtyHandlesTest) {
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| for (int i = 0; i < metahandles_to_create; i++) {
|
| - MutableEntry e(&trans, CREATE, trans.root_id(), "foo");
|
| + MutableEntry e(&trans, CREATE_BOOKMARK, trans.root_id(), "foo");
|
| expected_dirty_metahandles.push_back(e.Get(META_HANDLE));
|
| e.Put(IS_UNSYNCED, true);
|
| }
|
| @@ -615,7 +614,7 @@ TEST_F(SyncableDirectoryTest, TakeSnapshotGetsAllDirtyHandlesTest) {
|
| e1.Put(IS_DIR, true);
|
| e1.Put(IS_UNSYNCED, true);
|
| // Add new entries
|
| - MutableEntry e2(&trans, CREATE, trans.root_id(), "bar");
|
| + MutableEntry e2(&trans, CREATE_BOOKMARK, trans.root_id(), "bar");
|
| e2.Put(IS_UNSYNCED, true);
|
| new_dirty_metahandles.push_back(e2.Get(META_HANDLE));
|
| }
|
| @@ -647,7 +646,7 @@ TEST_F(SyncableDirectoryTest, TakeSnapshotGetsOnlyDirtyHandlesTest) {
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| for (int i = 0; i < metahandles_to_create; i++) {
|
| - MutableEntry e(&trans, CREATE, trans.root_id(), "foo");
|
| + MutableEntry e(&trans, CREATE_BOOKMARK, trans.root_id(), "foo");
|
| expected_dirty_metahandles.push_back(e.Get(META_HANDLE));
|
| e.Put(IS_UNSYNCED, true);
|
| }
|
| @@ -666,7 +665,7 @@ TEST_F(SyncableDirectoryTest, TakeSnapshotGetsOnlyDirtyHandlesTest) {
|
| e1.Put(IS_DIR, true);
|
| e1.Put(IS_UNSYNCED, true);
|
| // Add new entries
|
| - MutableEntry e2(&trans, CREATE, trans.root_id(), "bar");
|
| + MutableEntry e2(&trans, CREATE_BOOKMARK, trans.root_id(), "bar");
|
| e2.Put(IS_UNSYNCED, true);
|
| new_dirty_metahandles.push_back(e2.Get(META_HANDLE));
|
| }
|
| @@ -747,13 +746,13 @@ TEST_F(SyncableDirectoryTest, TestBasicLookupValidID) {
|
| TEST_F(SyncableDirectoryTest, TestDelete) {
|
| std::string name = "peanut butter jelly time";
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry e1(&trans, CREATE, trans.root_id(), name);
|
| + MutableEntry e1(&trans, CREATE_BOOKMARK, trans.root_id(), name);
|
| ASSERT_TRUE(e1.good());
|
| ASSERT_TRUE(e1.Put(IS_DEL, true));
|
| - MutableEntry e2(&trans, CREATE, trans.root_id(), name);
|
| + MutableEntry e2(&trans, CREATE_BOOKMARK, trans.root_id(), name);
|
| ASSERT_TRUE(e2.good());
|
| ASSERT_TRUE(e2.Put(IS_DEL, true));
|
| - MutableEntry e3(&trans, CREATE, trans.root_id(), name);
|
| + MutableEntry e3(&trans, CREATE_BOOKMARK, trans.root_id(), name);
|
| ASSERT_TRUE(e3.good());
|
| ASSERT_TRUE(e3.Put(IS_DEL, true));
|
|
|
| @@ -775,14 +774,14 @@ TEST_F(SyncableDirectoryTest, TestGetUnsynced) {
|
| dir_->GetUnsyncedMetaHandles(&trans, &handles);
|
| ASSERT_TRUE(0 == handles.size());
|
|
|
| - MutableEntry e1(&trans, CREATE, trans.root_id(), "abba");
|
| + MutableEntry e1(&trans, CREATE_BOOKMARK, trans.root_id(), "abba");
|
| ASSERT_TRUE(e1.good());
|
| handle1 = e1.Get(META_HANDLE);
|
| e1.Put(BASE_VERSION, 1);
|
| e1.Put(IS_DIR, true);
|
| e1.Put(ID, TestIdFactory::FromNumber(101));
|
|
|
| - MutableEntry e2(&trans, CREATE, e1.Get(ID), "bread");
|
| + MutableEntry e2(&trans, CREATE_BOOKMARK, e1.Get(ID), "bread");
|
| ASSERT_TRUE(e2.good());
|
| handle2 = e2.Get(META_HANDLE);
|
| e2.Put(BASE_VERSION, 1);
|
| @@ -847,7 +846,7 @@ TEST_F(SyncableDirectoryTest, TestGetUnappliedUpdates) {
|
| dir_->GetUnappliedUpdateMetaHandles(&trans, all_types, &handles);
|
| ASSERT_TRUE(0 == handles.size());
|
|
|
| - MutableEntry e1(&trans, CREATE, trans.root_id(), "abba");
|
| + MutableEntry e1(&trans, CREATE_BOOKMARK, trans.root_id(), "abba");
|
| ASSERT_TRUE(e1.good());
|
| handle1 = e1.Get(META_HANDLE);
|
| e1.Put(IS_UNAPPLIED_UPDATE, false);
|
| @@ -855,7 +854,7 @@ TEST_F(SyncableDirectoryTest, TestGetUnappliedUpdates) {
|
| e1.Put(ID, TestIdFactory::FromNumber(101));
|
| e1.Put(IS_DIR, true);
|
|
|
| - MutableEntry e2(&trans, CREATE, e1.Get(ID), "bread");
|
| + MutableEntry e2(&trans, CREATE_BOOKMARK, e1.Get(ID), "bread");
|
| ASSERT_TRUE(e2.good());
|
| handle2 = e2.Get(META_HANDLE);
|
| e2.Put(IS_UNAPPLIED_UPDATE, false);
|
| @@ -916,22 +915,22 @@ TEST_F(SyncableDirectoryTest, DeleteBug_531383) {
|
| int64 grandchild_handle;
|
| {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry parent(&wtrans, CREATE, id_factory.root(), "Bob");
|
| + MutableEntry parent(&wtrans, CREATE_BOOKMARK, id_factory.root(), "Bob");
|
| ASSERT_TRUE(parent.good());
|
| parent.Put(IS_DIR, true);
|
| parent.Put(ID, id_factory.NewServerId());
|
| parent.Put(BASE_VERSION, 1);
|
| - MutableEntry child(&wtrans, CREATE, parent.Get(ID), "Bob");
|
| + MutableEntry child(&wtrans, CREATE_BOOKMARK, parent.Get(ID), "Bob");
|
| ASSERT_TRUE(child.good());
|
| child.Put(IS_DIR, true);
|
| child.Put(ID, id_factory.NewServerId());
|
| child.Put(BASE_VERSION, 1);
|
| - MutableEntry grandchild(&wtrans, CREATE, child.Get(ID), "Bob");
|
| + MutableEntry grandchild(&wtrans, CREATE_BOOKMARK, child.Get(ID), "Bob");
|
| ASSERT_TRUE(grandchild.good());
|
| grandchild.Put(ID, id_factory.NewServerId());
|
| grandchild.Put(BASE_VERSION, 1);
|
| ASSERT_TRUE(grandchild.Put(IS_DEL, true));
|
| - MutableEntry twin(&wtrans, CREATE, child.Get(ID), "Bob");
|
| + MutableEntry twin(&wtrans, CREATE_BOOKMARK, child.Get(ID), "Bob");
|
| ASSERT_TRUE(twin.good());
|
| ASSERT_TRUE(twin.Put(IS_DEL, true));
|
| ASSERT_TRUE(grandchild.Put(IS_DEL, false));
|
| @@ -955,32 +954,32 @@ TEST_F(SyncableDirectoryTest, TestIsLegalNewParent) {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, dir_.get());
|
| Entry root(&wtrans, GET_BY_ID, id_factory.root());
|
| ASSERT_TRUE(root.good());
|
| - MutableEntry parent(&wtrans, CREATE, root.Get(ID), "Bob");
|
| + MutableEntry parent(&wtrans, CREATE_BOOKMARK, root.Get(ID), "Bob");
|
| ASSERT_TRUE(parent.good());
|
| parent.Put(IS_DIR, true);
|
| parent.Put(ID, id_factory.NewServerId());
|
| parent.Put(BASE_VERSION, 1);
|
| - MutableEntry child(&wtrans, CREATE, parent.Get(ID), "Bob");
|
| + MutableEntry child(&wtrans, CREATE_BOOKMARK, parent.Get(ID), "Bob");
|
| ASSERT_TRUE(child.good());
|
| child.Put(IS_DIR, true);
|
| child.Put(ID, id_factory.NewServerId());
|
| child.Put(BASE_VERSION, 1);
|
| - MutableEntry grandchild(&wtrans, CREATE, child.Get(ID), "Bob");
|
| + MutableEntry grandchild(&wtrans, CREATE_BOOKMARK, child.Get(ID), "Bob");
|
| ASSERT_TRUE(grandchild.good());
|
| grandchild.Put(ID, id_factory.NewServerId());
|
| grandchild.Put(BASE_VERSION, 1);
|
|
|
| - MutableEntry parent2(&wtrans, CREATE, root.Get(ID), "Pete");
|
| + MutableEntry parent2(&wtrans, CREATE_BOOKMARK, root.Get(ID), "Pete");
|
| ASSERT_TRUE(parent2.good());
|
| parent2.Put(IS_DIR, true);
|
| parent2.Put(ID, id_factory.NewServerId());
|
| parent2.Put(BASE_VERSION, 1);
|
| - MutableEntry child2(&wtrans, CREATE, parent2.Get(ID), "Pete");
|
| + MutableEntry child2(&wtrans, CREATE_BOOKMARK, parent2.Get(ID), "Pete");
|
| ASSERT_TRUE(child2.good());
|
| child2.Put(IS_DIR, true);
|
| child2.Put(ID, id_factory.NewServerId());
|
| child2.Put(BASE_VERSION, 1);
|
| - MutableEntry grandchild2(&wtrans, CREATE, child2.Get(ID), "Pete");
|
| + MutableEntry grandchild2(&wtrans, CREATE_BOOKMARK, child2.Get(ID), "Pete");
|
| ASSERT_TRUE(grandchild2.good());
|
| grandchild2.Put(ID, id_factory.NewServerId());
|
| grandchild2.Put(BASE_VERSION, 1);
|
| @@ -1012,13 +1011,13 @@ TEST_F(SyncableDirectoryTest, TestEntryIsInFolder) {
|
|
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry folder(&trans, CREATE, trans.root_id(), "folder");
|
| + MutableEntry folder(&trans, CREATE_BOOKMARK, trans.root_id(), "folder");
|
| ASSERT_TRUE(folder.good());
|
| EXPECT_TRUE(folder.Put(IS_DIR, true));
|
| EXPECT_TRUE(folder.Put(IS_UNSYNCED, true));
|
| folder_id = folder.Get(ID);
|
|
|
| - MutableEntry entry(&trans, CREATE, folder.Get(ID), entry_name);
|
| + MutableEntry entry(&trans, CREATE_BOOKMARK, folder.Get(ID), entry_name);
|
| ASSERT_TRUE(entry.good());
|
| entry_handle = entry.Get(META_HANDLE);
|
| entry.Put(IS_UNSYNCED, true);
|
| @@ -1043,15 +1042,15 @@ TEST_F(SyncableDirectoryTest, TestParentIdIndexUpdate) {
|
| std::string child_name = "child";
|
|
|
| WriteTransaction wt(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry parent_folder(&wt, CREATE, wt.root_id(), "folder1");
|
| + MutableEntry parent_folder(&wt, CREATE_BOOKMARK, wt.root_id(), "folder1");
|
| parent_folder.Put(IS_UNSYNCED, true);
|
| EXPECT_TRUE(parent_folder.Put(IS_DIR, true));
|
|
|
| - MutableEntry parent_folder2(&wt, CREATE, wt.root_id(), "folder2");
|
| + MutableEntry parent_folder2(&wt, CREATE_BOOKMARK, wt.root_id(), "folder2");
|
| parent_folder2.Put(IS_UNSYNCED, true);
|
| EXPECT_TRUE(parent_folder2.Put(IS_DIR, true));
|
|
|
| - MutableEntry child(&wt, CREATE, parent_folder.Get(ID), child_name);
|
| + MutableEntry child(&wt, CREATE_BOOKMARK, parent_folder.Get(ID), child_name);
|
| EXPECT_TRUE(child.Put(IS_DIR, true));
|
| child.Put(IS_UNSYNCED, true);
|
|
|
| @@ -1072,7 +1071,7 @@ TEST_F(SyncableDirectoryTest, TestNoReindexDeletedItems) {
|
| std::string new_name = "new_name";
|
|
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry folder(&trans, CREATE, trans.root_id(), folder_name);
|
| + MutableEntry folder(&trans, CREATE_BOOKMARK, trans.root_id(), folder_name);
|
| ASSERT_TRUE(folder.good());
|
| ASSERT_TRUE(folder.Put(IS_DIR, true));
|
| ASSERT_TRUE(folder.Put(IS_DEL, true));
|
| @@ -1090,7 +1089,7 @@ TEST_F(SyncableDirectoryTest, TestNoReindexDeletedItems) {
|
|
|
| TEST_F(SyncableDirectoryTest, TestCaseChangeRename) {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry folder(&trans, CREATE, trans.root_id(), "CaseChange");
|
| + MutableEntry folder(&trans, CREATE_BOOKMARK, trans.root_id(), "CaseChange");
|
| ASSERT_TRUE(folder.good());
|
| EXPECT_TRUE(folder.Put(PARENT_ID, trans.root_id()));
|
| EXPECT_TRUE(folder.Put(NON_UNIQUE_NAME, "CASECHANGE"));
|
| @@ -1116,7 +1115,7 @@ TEST_F(SyncableDirectoryTest, GetModelType) {
|
|
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry folder(&trans, CREATE, trans.root_id(), "Folder");
|
| + MutableEntry folder(&trans, CREATE_BOOKMARK, trans.root_id(), "Folder");
|
| ASSERT_TRUE(folder.good());
|
| folder.Put(ID, id_factory.NewServerId());
|
| folder.Put(SPECIFICS, specifics);
|
| @@ -1125,7 +1124,7 @@ TEST_F(SyncableDirectoryTest, GetModelType) {
|
| folder.Put(IS_DEL, false);
|
| ASSERT_EQ(datatype, folder.GetModelType());
|
|
|
| - MutableEntry item(&trans, CREATE, trans.root_id(), "Item");
|
| + MutableEntry item(&trans, CREATE_BOOKMARK, trans.root_id(), "Item");
|
| ASSERT_TRUE(item.good());
|
| item.Put(ID, id_factory.NewServerId());
|
| item.Put(SPECIFICS, specifics);
|
| @@ -1136,7 +1135,8 @@ TEST_F(SyncableDirectoryTest, GetModelType) {
|
|
|
| // It's critical that deletion records retain their datatype, so that
|
| // they can be dispatched to the appropriate change processor.
|
| - MutableEntry deleted_item(&trans, CREATE, trans.root_id(), "Deleted Item");
|
| + MutableEntry deleted_item(
|
| + &trans, CREATE_BOOKMARK, trans.root_id(), "Deleted Item");
|
| ASSERT_TRUE(item.good());
|
| deleted_item.Put(ID, id_factory.NewServerId());
|
| deleted_item.Put(SPECIFICS, specifics);
|
| @@ -1191,11 +1191,11 @@ TEST_F(SyncableDirectoryTest, ChangeEntryIDAndUpdateChildren_ParentAndChild) {
|
| // Create two client-side items, a parent and child.
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry parent(&trans, CREATE, id_factory.root(), "parent");
|
| + MutableEntry parent(&trans, CREATE_BOOKMARK, id_factory.root(), "parent");
|
| parent.Put(IS_DIR, true);
|
| parent.Put(IS_UNSYNCED, true);
|
|
|
| - MutableEntry child(&trans, CREATE, parent.Get(ID), "child");
|
| + MutableEntry child(&trans, CREATE_BOOKMARK, parent.Get(ID), "child");
|
| child.Put(IS_UNSYNCED, true);
|
|
|
| orig_parent_id = parent.Get(ID);
|
| @@ -1239,11 +1239,11 @@ TEST_F(SyncableDirectoryTest,
|
| // Create two client-side items, a parent and child.
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry parent(&trans, CREATE, id_factory.root(), "parent");
|
| + MutableEntry parent(&trans, CREATE_BOOKMARK, id_factory.root(), "parent");
|
| parent.Put(IS_DIR, true);
|
| parent.Put(IS_UNSYNCED, true);
|
|
|
| - MutableEntry child(&trans, CREATE, parent.Get(ID), "child");
|
| + MutableEntry child(&trans, CREATE_BOOKMARK, parent.Get(ID), "child");
|
| child.Put(IS_UNSYNCED, true);
|
|
|
| orig_parent_id = parent.Get(ID);
|
| @@ -1322,7 +1322,7 @@ TEST_F(SyncableDirectoryTest, OldClientLeftUnsyncedDeletedLocalItem) {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| // Create an uncommitted tombstone entry.
|
| - MutableEntry server_knows(&trans, CREATE, id_factory.root(),
|
| + MutableEntry server_knows(&trans, CREATE_BOOKMARK, id_factory.root(),
|
| "server_knows");
|
| server_knows.Put(ID, server_knows_id);
|
| server_knows.Put(IS_UNSYNCED, true);
|
| @@ -1331,7 +1331,8 @@ TEST_F(SyncableDirectoryTest, OldClientLeftUnsyncedDeletedLocalItem) {
|
| server_knows.Put(SERVER_VERSION, 4);
|
|
|
| // Create a valid update entry.
|
| - MutableEntry not_is_del(&trans, CREATE, id_factory.root(), "not_is_del");
|
| + MutableEntry not_is_del(
|
| + &trans, CREATE_BOOKMARK, id_factory.root(), "not_is_del");
|
| not_is_del.Put(ID, not_is_del_id);
|
| not_is_del.Put(IS_DEL, false);
|
| not_is_del.Put(IS_UNSYNCED, true);
|
| @@ -1342,7 +1343,7 @@ TEST_F(SyncableDirectoryTest, OldClientLeftUnsyncedDeletedLocalItem) {
|
| // New clients should never put entries into this state. We work around
|
| // this by setting IS_DEL before setting IS_UNSYNCED, something which the
|
| // client should never do in practice.
|
| - MutableEntry zombie(&trans, CREATE, id_factory.root(), "zombie");
|
| + MutableEntry zombie(&trans, CREATE_BOOKMARK, id_factory.root(), "zombie");
|
| zombie.Put(ID, zombie_id);
|
| zombie.Put(IS_DEL, true);
|
| zombie.Put(IS_UNSYNCED, true);
|
| @@ -1368,23 +1369,27 @@ TEST_F(SyncableDirectoryTest, OldClientLeftUnsyncedDeletedLocalItem) {
|
| }
|
| }
|
|
|
| -TEST_F(SyncableDirectoryTest, OrdinalWithNullSurvivesSaveAndReload) {
|
| +TEST_F(SyncableDirectoryTest, PositionWithNullSurvivesSaveAndReload) {
|
| TestIdFactory id_factory;
|
| Id null_child_id;
|
| const char null_cstr[] = "\0null\0test";
|
| std::string null_str(null_cstr, arraysize(null_cstr) - 1);
|
| - NodeOrdinal null_ord = NodeOrdinal(null_str);
|
| + std::string suffix =
|
| + std::string(UniquePosition::kSuffixLength - null_str.length(), '\x7f')
|
| + + null_str;
|
| + UniquePosition null_pos = UniquePosition::FromInt64(10, suffix);
|
|
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry parent(&trans, CREATE, id_factory.root(), "parent");
|
| + MutableEntry parent(&trans, CREATE_BOOKMARK, id_factory.root(), "parent");
|
| parent.Put(IS_DIR, true);
|
| parent.Put(IS_UNSYNCED, true);
|
|
|
| - MutableEntry child(&trans, CREATE, parent.Get(ID), "child");
|
| + MutableEntry child(&trans, CREATE_BOOKMARK, parent.Get(ID), "child");
|
| child.Put(IS_UNSYNCED, true);
|
| - child.Put(SERVER_ORDINAL_IN_PARENT, null_ord);
|
| + child.Put(UNIQUE_POSITION, null_pos);
|
| + child.Put(SERVER_UNIQUE_POSITION, null_pos);
|
|
|
| null_child_id = child.Get(ID);
|
| }
|
| @@ -1396,9 +1401,10 @@ TEST_F(SyncableDirectoryTest, OrdinalWithNullSurvivesSaveAndReload) {
|
|
|
| Entry null_ordinal_child(&trans, GET_BY_ID, null_child_id);
|
| EXPECT_TRUE(
|
| - null_ord.Equals(null_ordinal_child.Get(SERVER_ORDINAL_IN_PARENT)));
|
| + null_pos.Equals(null_ordinal_child.Get(UNIQUE_POSITION)));
|
| + EXPECT_TRUE(
|
| + null_pos.Equals(null_ordinal_child.Get(SERVER_UNIQUE_POSITION)));
|
| }
|
| -
|
| }
|
|
|
| // An OnDirectoryBackingStore that can be set to always fail SaveChanges.
|
| @@ -1566,9 +1572,8 @@ TEST_F(OnDiskSyncableDirectoryTest, TestPurgeEntriesWithTypeIn) {
|
| // Add more nodes for this type. Technically, they should be placed under
|
| // the proper type root nodes but the assertions in this test won't notice
|
| // if their parent isn't quite right.
|
| - MutableEntry item1(&trans, CREATE, trans.root_id(), "Item");
|
| + MutableEntry item1(&trans, CREATE_BOOKMARK, trans.root_id(), "Item");
|
| ASSERT_TRUE(item1.good());
|
| - item1.Put(SPECIFICS, bookmark_specs);
|
| item1.Put(SERVER_SPECIFICS, bookmark_specs);
|
| item1.Put(IS_UNSYNCED, true);
|
|
|
| @@ -1578,7 +1583,8 @@ TEST_F(OnDiskSyncableDirectoryTest, TestPurgeEntriesWithTypeIn) {
|
| item2.Put(SERVER_SPECIFICS, bookmark_specs);
|
| item2.Put(IS_UNAPPLIED_UPDATE, true);
|
|
|
| - MutableEntry item3(&trans, CREATE, trans.root_id(), "Item");
|
| + MutableEntry item3(&trans, CREATE_UNIQUE, PREFERENCES,
|
| + trans.root_id(), "Item");
|
| ASSERT_TRUE(item3.good());
|
| item3.Put(SPECIFICS, preference_specs);
|
| item3.Put(SERVER_SPECIFICS, preference_specs);
|
| @@ -1590,7 +1596,8 @@ TEST_F(OnDiskSyncableDirectoryTest, TestPurgeEntriesWithTypeIn) {
|
| item4.Put(SERVER_SPECIFICS, preference_specs);
|
| item4.Put(IS_UNAPPLIED_UPDATE, true);
|
|
|
| - MutableEntry item5(&trans, CREATE, trans.root_id(), "Item");
|
| + MutableEntry item5(&trans, CREATE_UNIQUE, AUTOFILL,
|
| + trans.root_id(), "Item");
|
| ASSERT_TRUE(item5.good());
|
| item5.Put(SPECIFICS, autofill_specs);
|
| item5.Put(SERVER_SPECIFICS, autofill_specs);
|
| @@ -1667,7 +1674,7 @@ TEST_F(OnDiskSyncableDirectoryTest,
|
|
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry create(&trans, CREATE, trans.root_id(), create_name);
|
| + MutableEntry create(&trans, CREATE_BOOKMARK, trans.root_id(), create_name);
|
| MutableEntry update(&trans, CREATE_NEW_UPDATE_ITEM, update_id);
|
| create.Put(IS_UNSYNCED, true);
|
| update.Put(IS_UNAPPLIED_UPDATE, true);
|
| @@ -1751,13 +1758,21 @@ TEST_F(OnDiskSyncableDirectoryTest,
|
| update_post_save.ref((ProtoField)i).SerializeAsString())
|
| << "Blob field #" << i << " changed during save/load";
|
| }
|
| - for ( ; i < ORDINAL_FIELDS_END; ++i) {
|
| - EXPECT_EQ(create_pre_save.ref((OrdinalField)i).ToInternalValue(),
|
| - create_post_save.ref((OrdinalField)i).ToInternalValue())
|
| - << "Blob field #" << i << " changed during save/load";
|
| - EXPECT_EQ(update_pre_save.ref((OrdinalField)i).ToInternalValue(),
|
| - update_post_save.ref((OrdinalField)i).ToInternalValue())
|
| - << "Blob field #" << i << " changed during save/load";
|
| + for ( ; i < UNIQUE_POSITION_FIELDS_END; ++i) {
|
| + EXPECT_EQ(create_pre_save.ref((UniquePositionField)i).ToInternalValue(),
|
| + create_post_save.ref((UniquePositionField)i).ToInternalValue())
|
| + << "Position field #" << i << " changed during save/load";
|
| + EXPECT_EQ(update_pre_save.ref((UniquePositionField)i).ToInternalValue(),
|
| + update_post_save.ref((UniquePositionField)i).ToInternalValue())
|
| + << "Position field #" << i << " changed during save/load";
|
| + }
|
| + for ( ; i < BYTES_FIELDS_END; ++i) {
|
| + EXPECT_EQ(create_pre_save.ref((BytesField)i),
|
| + create_post_save.ref((BytesField)i))
|
| + << "Bytes field #" << i << " changed during save/load";
|
| + EXPECT_EQ(update_pre_save.ref((BytesField)i),
|
| + update_post_save.ref((BytesField)i))
|
| + << "Bytes field #" << i << " changed during save/load";
|
| }
|
| }
|
|
|
| @@ -1767,7 +1782,7 @@ TEST_F(OnDiskSyncableDirectoryTest, TestSaveChangesFailure) {
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry e1(&trans, CREATE, trans.root_id(), "aguilera");
|
| + MutableEntry e1(&trans, CREATE_BOOKMARK, trans.root_id(), "aguilera");
|
| ASSERT_TRUE(e1.good());
|
| EXPECT_TRUE(e1.GetKernelCopy().is_dirty());
|
| handle1 = e1.Get(META_HANDLE);
|
| @@ -1813,7 +1828,8 @@ TEST_F(OnDiskSyncableDirectoryTest, TestSaveChangesFailure) {
|
| EXPECT_TRUE(IsInDirtyMetahandles(handle1));
|
|
|
| // New item.
|
| - MutableEntry kids_on_block(&trans, CREATE, trans.root_id(), "kids");
|
| + MutableEntry kids_on_block(
|
| + &trans, CREATE_BOOKMARK, trans.root_id(), "kids");
|
| ASSERT_TRUE(kids_on_block.good());
|
| handle2 = kids_on_block.Get(META_HANDLE);
|
| kids_on_block.Put(BASE_VERSION, 1);
|
| @@ -1848,7 +1864,7 @@ TEST_F(OnDiskSyncableDirectoryTest, TestSaveChangesFailureWithPurge) {
|
| {
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_.get());
|
|
|
| - MutableEntry e1(&trans, CREATE, trans.root_id(), "aguilera");
|
| + MutableEntry e1(&trans, CREATE_BOOKMARK, trans.root_id(), "aguilera");
|
| ASSERT_TRUE(e1.good());
|
| EXPECT_TRUE(e1.GetKernelCopy().is_dirty());
|
| handle1 = e1.Get(META_HANDLE);
|
| @@ -1992,7 +2008,7 @@ class StressTransactionsDelegate : public base::PlatformThread::Delegate {
|
| base::StringPrintf("%d.%d", thread_number_, entry_count++);
|
| path_name.assign(unique_name.begin(), unique_name.end());
|
| WriteTransaction trans(FROM_HERE, UNITTEST, dir_);
|
| - MutableEntry e(&trans, CREATE, trans.root_id(), path_name);
|
| + MutableEntry e(&trans, CREATE_BOOKMARK, trans.root_id(), path_name);
|
| CHECK(e.good());
|
| base::PlatformThread::Sleep(base::TimeDelta::FromMilliseconds(
|
| rand() % 20));
|
| @@ -2049,13 +2065,9 @@ class SyncableClientTagTest : public SyncableDirectoryTest {
|
| SyncableClientTagTest() : test_name_("test_name"), test_tag_("dietcoke") {}
|
|
|
| bool CreateWithDefaultTag(Id id, bool deleted) {
|
| - return CreateWithTag(test_tag_, id, deleted);
|
| - }
|
| -
|
| - // Attempt to create an entry with a default tag.
|
| - bool CreateWithTag(const char* tag, Id id, bool deleted) {
|
| WriteTransaction wtrans(FROM_HERE, UNITTEST, dir_.get());
|
| - MutableEntry me(&wtrans, CREATE, wtrans.root_id(), test_name_);
|
| + MutableEntry me(&wtrans, CREATE_UNIQUE, PREFERENCES,
|
| + wtrans.root_id(), test_name_);
|
| CHECK(me.good());
|
| me.Put(ID, id);
|
| if (id.ServerKnows()) {
|
| @@ -2064,7 +2076,7 @@ class SyncableClientTagTest : public SyncableDirectoryTest {
|
| me.Put(IS_UNSYNCED, true);
|
| me.Put(IS_DEL, deleted);
|
| me.Put(IS_DIR, false);
|
| - return me.Put(UNIQUE_CLIENT_TAG, tag);
|
| + return me.Put(UNIQUE_CLIENT_TAG, test_tag_);
|
| }
|
|
|
| // Verify an entry exists with the default tag.
|
|
|