Index: chrome/browser/sync_file_system/drive/metadata_db_migration_util_unittest.cc |
diff --git a/chrome/browser/sync_file_system/drive/metadata_db_migration_util_unittest.cc b/chrome/browser/sync_file_system/drive/metadata_db_migration_util_unittest.cc |
index 3c7daf43a321a7229e5a2968e4a03ca82c306b38..8a75f86759488a00abf7404a2d02c45ac1a8d600 100644 |
--- a/chrome/browser/sync_file_system/drive/metadata_db_migration_util_unittest.cc |
+++ b/chrome/browser/sync_file_system/drive/metadata_db_migration_util_unittest.cc |
@@ -12,6 +12,7 @@ |
#include "testing/gtest/include/gtest/gtest.h" |
#include "third_party/leveldatabase/src/include/leveldb/db.h" |
#include "third_party/leveldatabase/src/include/leveldb/write_batch.h" |
+#include "webkit/browser/fileapi/external_mount_points.h" |
#include "webkit/browser/fileapi/syncable/syncable_file_system_util.h" |
#include "webkit/common/fileapi/file_system_util.h" |
@@ -21,28 +22,41 @@ namespace sync_file_system { |
namespace drive { |
namespace { |
+ |
const char kV0ServiceName[] = "drive"; |
+ |
+bool CreateV0SerializedSyncableFileSystemURL( |
+ const GURL& origin, |
+ const base::FilePath& path, |
+ std::string* serialized_url) { |
+ fileapi::ScopedExternalFileSystem scoped_fs( |
+ kV0ServiceName, fileapi::kFileSystemTypeSyncable, base::FilePath()); |
+ |
+ fileapi::FileSystemURL url = |
+ fileapi::ExternalMountPoints::GetSystemInstance()-> |
+ CreateExternalFileSystemURL(origin, kV0ServiceName, path); |
+ if (!url.is_valid()) |
+ return false; |
+ *serialized_url = fileapi::GetExternalFileSystemRootURIString( |
+ origin, kV0ServiceName) + url.path().AsUTF8Unsafe(); |
+ return true; |
} |
+} // namespace |
+ |
TEST(DriveMetadataDBMigrationUtilTest, ParseV0FormatFileSystemURL) { |
const GURL kOrigin("chrome-extension://example"); |
const base::FilePath kFile(FPL("foo bar")); |
- ASSERT_TRUE(RegisterSyncableFileSystem(kV0ServiceName)); |
- |
- fileapi::FileSystemURL url = |
- CreateSyncableFileSystemURL(kOrigin, kV0ServiceName, kFile); |
- |
std::string serialized_url; |
- SerializeSyncableFileSystemURL(url, &serialized_url); |
+ ASSERT_TRUE(CreateV0SerializedSyncableFileSystemURL( |
+ kOrigin, kFile, &serialized_url)); |
GURL origin; |
base::FilePath path; |
EXPECT_TRUE(ParseV0FormatFileSystemURL(GURL(serialized_url), &origin, &path)); |
EXPECT_EQ(kOrigin, origin); |
EXPECT_EQ(kFile, path); |
- |
- EXPECT_TRUE(RevokeSyncableFileSystem(kV0ServiceName)); |
} |
TEST(DriveMetadataDBMigrationUtilTest, AddWapiIdPrefix) { |
@@ -88,8 +102,6 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV0) { |
const base::FilePath kFile(FPL("foo bar")); |
const std::string kFileMD5("file_md5"); |
- ASSERT_TRUE(RegisterSyncableFileSystem(kV0ServiceName)); |
- |
base::ScopedTempDir base_dir; |
ASSERT_TRUE(base_dir.CreateUniqueTempDir()); |
@@ -108,9 +120,6 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV0) { |
batch.Put(kChangeStampKey, "1"); |
batch.Put(kSyncRootDirectoryKey, kSyncRootResourceId); |
- fileapi::FileSystemURL url = |
- CreateSyncableFileSystemURL(kOrigin1, kV0ServiceName, kFile); |
- |
// Setup drive metadata. |
DriveMetadata drive_metadata; |
drive_metadata.set_resource_id(kFileResourceId); |
@@ -119,7 +128,8 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV0) { |
drive_metadata.set_to_be_fetched(false); |
std::string serialized_url; |
- SerializeSyncableFileSystemURL(url, &serialized_url); |
+ ASSERT_TRUE(CreateV0SerializedSyncableFileSystemURL( |
+ kOrigin1, kFile, &serialized_url)); |
std::string metadata_string; |
drive_metadata.SerializeToString(&metadata_string); |
batch.Put(kDriveMetadataKeyPrefix + serialized_url, metadata_string); |
@@ -131,7 +141,6 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV0) { |
status = db->Write(leveldb::WriteOptions(), &batch); |
EXPECT_EQ(SYNC_STATUS_OK, LevelDBStatusToSyncStatusCode(status)); |
- EXPECT_TRUE(RevokeSyncableFileSystem(kV0ServiceName)); |
// Migrate the database. |
drive::MigrateDatabaseFromV0ToV1(db.get()); |
@@ -200,8 +209,7 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV1) { |
const base::FilePath kFile(FPL("foo bar")); |
const std::string kFileMD5("file_md5"); |
- const char kV1ServiceName[] = "syncfs"; |
- ASSERT_TRUE(RegisterSyncableFileSystem(kV1ServiceName)); |
+ RegisterSyncableFileSystem(); |
base::ScopedTempDir base_dir; |
ASSERT_TRUE(base_dir.CreateUniqueTempDir()); |
@@ -222,8 +230,7 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV1) { |
batch.Put(kChangeStampKey, "1"); |
batch.Put(kSyncRootDirectoryKey, kSyncRootResourceId); |
- fileapi::FileSystemURL url = |
- CreateSyncableFileSystemURL(kOrigin1, kV1ServiceName, kFile); |
+ fileapi::FileSystemURL url = CreateSyncableFileSystemURL(kOrigin1, kFile); |
// Setup drive metadata. |
DriveMetadata drive_metadata; |
@@ -245,7 +252,8 @@ TEST(DriveMetadataDBMigrationUtilTest, MigrationFromV1) { |
status = db->Write(leveldb::WriteOptions(), &batch); |
EXPECT_EQ(SYNC_STATUS_OK, LevelDBStatusToSyncStatusCode(status)); |
- EXPECT_TRUE(RevokeSyncableFileSystem(kV1ServiceName)); |
+ |
+ RevokeSyncableFileSystem(); |
// Migrate the database. |
drive::MigrateDatabaseFromV1ToV2(db.get()); |