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

Unified Diff: chrome/browser/sync_file_system/drive_metadata_store_unittest.cc

Issue 15808002: SyncFS: Convert WAPI ResourceID to DriveAPI FileID (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: migrate more fields and address comments Created 7 years, 7 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
« no previous file with comments | « chrome/browser/sync_file_system/drive_metadata_store.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
diff --git a/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc b/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
index c7259c25aca58dd9bc9215904163b18b3dc379d1..5dd237ba12018a3998b00f3f59e140b129e5e9df 100644
--- a/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
+++ b/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
@@ -335,7 +335,7 @@ TEST_F(DriveMetadataStoreTest, ReadWriteTest) {
EXPECT_EQ(SYNC_DATABASE_ERROR_NOT_FOUND,
metadata_store()->ReadEntry(url, &metadata));
- metadata = CreateMetadata("1234567890", "09876543210", true, false);
+ metadata = CreateMetadata("file:1234567890", "09876543210", true, false);
EXPECT_EQ(SYNC_STATUS_OK, UpdateEntry(url, metadata));
EXPECT_EQ(SYNC_STATUS_OK, SetLargestChangeStamp(1));
@@ -418,7 +418,7 @@ TEST_F(DriveMetadataStoreTest, GetToBeFetchedFilessTest) {
}
TEST_F(DriveMetadataStoreTest, StoreSyncRootDirectory) {
- const std::string kResourceId("hoge");
+ const std::string kResourceId("folder:hoge");
InitializeDatabase();
@@ -439,8 +439,8 @@ TEST_F(DriveMetadataStoreTest, StoreSyncRootDirectory) {
TEST_F(DriveMetadataStoreTest, StoreSyncOrigin) {
const GURL kOrigin1("chrome-extension://example1");
const GURL kOrigin2("chrome-extension://example2");
- const std::string kResourceId1("hoge");
- const std::string kResourceId2("fuga");
+ const std::string kResourceId1("folder:hoge");
+ const std::string kResourceId2("folder:fuga");
InitializeDatabase();
@@ -551,9 +551,9 @@ TEST_F(DriveMetadataStoreTest, GetResourceIdForOrigin) {
const GURL kOrigin1("chrome-extension://example1");
const GURL kOrigin2("chrome-extension://example2");
const GURL kOrigin3("chrome-extension://example3");
- const std::string kResourceId1("hogera");
- const std::string kResourceId2("fugaga");
- const std::string kResourceId3("piyopiyo");
+ const std::string kResourceId1("folder:hogera");
+ const std::string kResourceId2("folder:fugaga");
+ const std::string kResourceId3("folder:piyopiyo");
InitializeDatabase();
EXPECT_EQ(SYNC_STATUS_OK, SetLargestChangeStamp(1));
@@ -594,10 +594,87 @@ TEST_F(DriveMetadataStoreTest, GetResourceIdForOrigin) {
TEST_F(DriveMetadataStoreTest, MigrationFromV0) {
const GURL kOrigin1("chrome-extension://example1");
const GURL kOrigin2("chrome-extension://example2");
- const std::string kSyncRootResourceId("sync_root_resource_id");
- const std::string kResourceId1("hoge");
- const std::string kResourceId2("fuga");
- const std::string kFileResourceId("piyo");
+ const std::string kSyncRootResourceId("folder:sync_root_resource_id");
+ const std::string kResourceId1("folder:hoge");
+ const std::string kResourceId2("folder:fuga");
+ const std::string kFileResourceId("file:piyo");
+ const base::FilePath kFile(FPL("foo bar"));
+ const std::string kFileMD5("file_md5");
+
+ {
nhiroki 2013/05/27 09:17:56 Sorry, I uploaded wrong commit. This migration tes
+ const char kChangeStampKey[] = "CHANGE_STAMP";
+ const char kSyncRootDirectoryKey[] = "SYNC_ROOT_DIR";
+ const char kDriveMetadataKeyPrefix[] = "METADATA: ";
+ const char kDriveBatchSyncOriginKeyPrefix[] = "BSYNC_ORIGIN: ";
+ const char kDriveIncrementalSyncOriginKeyPrefix[] = "ISYNC_ORIGIN: ";
+
+ const char kV0ServiceName[] = "drive";
+ ASSERT_TRUE(RegisterSyncableFileSystem(kV0ServiceName));
+ leveldb::Options options;
+ options.create_if_missing = true;
+ leveldb::DB* db_ptr = NULL;
+ std::string db_dir = fileapi::FilePathToString(
+ base_dir().Append(DriveMetadataStore::kDatabaseName));
+ leveldb::Status status = leveldb::DB::Open(options, db_dir, &db_ptr);
+
+ scoped_ptr<leveldb::DB> db(db_ptr);
+ ASSERT_TRUE(status.ok());
+
+ leveldb::WriteOptions write_options;
+ db->Put(write_options, kChangeStampKey, "1");
+ db->Put(write_options, kSyncRootDirectoryKey, kSyncRootResourceId);
+
+ DriveMetadata drive_metadata;
+ drive_metadata.set_resource_id(kFileResourceId);
+ drive_metadata.set_md5_checksum(kFileMD5);
+ drive_metadata.set_conflicted(false);
+ drive_metadata.set_to_be_fetched(false);
+
+ fileapi::FileSystemURL url = CreateSyncableFileSystemURL(
+ kOrigin1, kV0ServiceName, kFile);
+ std::string serialized_url;
+ SerializeSyncableFileSystemURL(url, &serialized_url);
+ std::string metadata_string;
+ drive_metadata.SerializeToString(&metadata_string);
+
+ db->Put(write_options,
+ kDriveMetadataKeyPrefix + serialized_url, metadata_string);
+ db->Put(write_options,
+ kDriveBatchSyncOriginKeyPrefix + kOrigin1.spec(), kResourceId1);
+ db->Put(write_options,
+ kDriveIncrementalSyncOriginKeyPrefix + kOrigin2.spec(),
+ kResourceId2);
+ EXPECT_TRUE(RevokeSyncableFileSystem(kV0ServiceName));
+ MarkAsCreated();
+ }
+
+ InitializeDatabase();
+
+ EXPECT_EQ(1, metadata_store()->GetLargestChangeStamp());
+ EXPECT_EQ(kSyncRootResourceId, metadata_store()->sync_root_directory());
+ EXPECT_EQ(kResourceId1, metadata_store()->GetResourceIdForOrigin(kOrigin1));
+ EXPECT_EQ(kResourceId2, metadata_store()->GetResourceIdForOrigin(kOrigin2));
+
+ DriveMetadata metadata;
+ EXPECT_EQ(SYNC_STATUS_OK,
+ metadata_store()->ReadEntry(
+ CreateSyncableFileSystemURL(kOrigin1, kServiceName, kFile),
+ &metadata));
+ EXPECT_EQ(kFileResourceId, metadata.resource_id());
+ EXPECT_EQ(kFileMD5, metadata.md5_checksum());
+ EXPECT_FALSE(metadata.conflicted());
+ EXPECT_FALSE(metadata.to_be_fetched());
+
+ VerifyReverseMap();
+}
+
+TEST_F(DriveMetadataStoreTest, MigrationFromV1) {
+ const GURL kOrigin1("chrome-extension://example1");
+ const GURL kOrigin2("chrome-extension://example2");
+ const std::string kSyncRootResourceId("folder:sync_root_resource_id");
+ const std::string kResourceId1("folder:hoge");
+ const std::string kResourceId2("folder:fuga");
+ const std::string kFileResourceId("file:piyo");
const base::FilePath kFile(FPL("foo bar"));
const std::string kFileMD5("file_md5");
« no previous file with comments | « chrome/browser/sync_file_system/drive_metadata_store.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698