Index: sync/internal_api/sync_manager_impl_unittest.cc |
diff --git a/sync/internal_api/sync_manager_impl_unittest.cc b/sync/internal_api/sync_manager_impl_unittest.cc |
index 222e7e825262255dc6cec0cf6c6bbc7512a386cc..41b2e2df4b812fe06aa8eac08a32809131e66088 100644 |
--- a/sync/internal_api/sync_manager_impl_unittest.cc |
+++ b/sync/internal_api/sync_manager_impl_unittest.cc |
@@ -572,6 +572,35 @@ TEST_F(SyncApiTest, WriteEncryptedTitle) { |
} |
} |
+// Non-unique name should not be empty. For bookmarks non-unique name is copied |
+// from bookmark title. This test verifies that setting bookmark title to "" |
+// results in single space title and non-unique name in internal representation. |
+// GetTitle should still return empty string. |
+TEST_F(SyncApiTest, WriteEmptyBookmarkTitle) { |
+ int bookmark_id; |
+ { |
+ WriteTransaction trans(FROM_HERE, user_share()); |
+ ReadNode root_node(&trans); |
+ root_node.InitByRootLookup(); |
+ |
+ WriteNode bookmark_node(&trans); |
+ ASSERT_TRUE(bookmark_node.InitBookmarkByCreation(root_node, NULL)); |
+ bookmark_id = bookmark_node.GetId(); |
+ bookmark_node.SetTitle(""); |
+ } |
+ { |
+ ReadTransaction trans(FROM_HERE, user_share()); |
+ ReadNode root_node(&trans); |
+ root_node.InitByRootLookup(); |
+ |
+ ReadNode bookmark_node(&trans); |
+ ASSERT_EQ(BaseNode::INIT_OK, bookmark_node.InitByIdLookup(bookmark_id)); |
+ EXPECT_EQ("", bookmark_node.GetTitle()); |
+ EXPECT_EQ(" ", bookmark_node.GetEntry()->GetSpecifics().bookmark().title()); |
+ EXPECT_EQ(" ", bookmark_node.GetEntry()->GetNonUniqueName()); |
+ } |
+} |
+ |
TEST_F(SyncApiTest, BaseNodeSetSpecifics) { |
int64 child_id = MakeNodeWithRoot(user_share(), BOOKMARKS, "testtag"); |
WriteTransaction trans(FROM_HERE, user_share()); |