Index: sync/api/sync_data_unittest.cc |
diff --git a/sync/api/sync_data_unittest.cc b/sync/api/sync_data_unittest.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2b9137308ae89be4c1c6c485c4eccd9d81d86e5b |
--- /dev/null |
+++ b/sync/api/sync_data_unittest.cc |
@@ -0,0 +1,68 @@ |
+// Copyright 2014 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. |
+ |
+#include "sync/api/sync_data.h" |
+ |
+#include <string> |
+ |
+#include "base/time/time.h" |
+#include "sync/internal_api/public/base_node.h" |
Nicolas Zea
2014/02/21 19:12:00
is this needed?
maniscalco
2014/02/21 19:23:06
Nope, left over from a previous revision where I n
|
+#include "sync/protocol/sync.pb.h" |
+#include "testing/gtest/include/gtest/gtest.h" |
+ |
+using std::string; |
+using syncer::ModelType; |
+ |
+namespace syncer { |
+ |
+namespace { |
+ |
+const string kSyncTag = "3984729834"; |
+const ModelType kDatatype = syncer::BOOKMARKS; |
Nicolas Zea
2014/02/21 19:12:00
nit: given that bookmarks is the only type that fu
maniscalco
2014/02/21 19:23:06
Heh, good point. Switched to PREFERENCES.
|
+const string kNonUniqueTitle = "my bookmark"; |
+const int64 kId = 439829; |
+const base::Time kLastModifiedTime = base::Time(); |
+ |
+typedef testing::Test SyncDataTest; |
+ |
+TEST_F(SyncDataTest, NoArgCtor) { |
+ SyncData data; |
+ EXPECT_FALSE(data.IsValid()); |
+} |
+ |
+TEST_F(SyncDataTest, CreateLocalDelete) { |
+ SyncData data = SyncData::CreateLocalDelete(kSyncTag, kDatatype); |
+ EXPECT_TRUE(data.IsValid()); |
+ EXPECT_TRUE(data.IsLocal()); |
+ EXPECT_EQ(kSyncTag, data.GetTag()); |
+ EXPECT_EQ(kDatatype, data.GetDataType()); |
+} |
+ |
+TEST_F(SyncDataTest, CreateLocalData) { |
+ sync_pb::EntitySpecifics specifics; |
+ specifics.mutable_bookmark(); |
+ SyncData data = |
+ SyncData::CreateLocalData(kSyncTag, kNonUniqueTitle, specifics); |
+ EXPECT_TRUE(data.IsValid()); |
+ EXPECT_TRUE(data.IsLocal()); |
+ EXPECT_EQ(kSyncTag, data.GetTag()); |
+ EXPECT_EQ(kDatatype, data.GetDataType()); |
+ EXPECT_EQ(kNonUniqueTitle, data.GetTitle()); |
+ EXPECT_TRUE(data.GetSpecifics().has_bookmark()); |
+} |
+ |
+TEST_F(SyncDataTest, CreateRemoteData) { |
+ sync_pb::EntitySpecifics specifics; |
+ specifics.mutable_bookmark(); |
+ SyncData data = SyncData::CreateRemoteData(kId, specifics, kLastModifiedTime); |
+ EXPECT_TRUE(data.IsValid()); |
+ EXPECT_FALSE(data.IsLocal()); |
+ EXPECT_EQ(kId, data.GetRemoteId()); |
+ EXPECT_EQ(kLastModifiedTime, data.GetRemoteModifiedTime()); |
+ EXPECT_TRUE(data.GetSpecifics().has_bookmark()); |
+} |
+ |
+} // namespace |
+ |
+} // namespace syncer |