| 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 1370287818db189abaa33431ce77595880e60386..2b8858d6bcb61ed7a1f79909bfbfa4578af4a7c3 100644
|
| --- a/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
|
| +++ b/chrome/browser/sync_file_system/drive_metadata_store_unittest.cc
|
| @@ -133,18 +133,38 @@ class DriveMetadataStoreTest : public testing::Test {
|
| EXPECT_TRUE(ui_task_runner_->RunsTasksOnCurrentThread());
|
| drive_metadata_store_->batch_sync_origins_.clear();
|
| drive_metadata_store_->incremental_sync_origins_.clear();
|
| + drive_metadata_store_->disabled_origins_.clear();
|
| EXPECT_TRUE(drive_metadata_store_->batch_sync_origins().empty());
|
| EXPECT_TRUE(drive_metadata_store_->incremental_sync_origins().empty());
|
| + EXPECT_TRUE(drive_metadata_store_->disabled_origins().empty());
|
| }
|
|
|
| - void RestoreSyncOriginsFromDB() {
|
| + void RestoreOriginsFromDB() {
|
| EXPECT_TRUE(ui_task_runner_->RunsTasksOnCurrentThread());
|
| - drive_metadata_store_->RestoreSyncOrigins(
|
| - base::Bind(&DriveMetadataStoreTest::DidRestoreSyncOrigins,
|
| + drive_metadata_store_->RestoreOrigins(
|
| + base::Bind(&DriveMetadataStoreTest::DidRestoreOrigins,
|
| base::Unretained(this)));
|
| message_loop_.Run();
|
| }
|
|
|
| + SyncStatusCode EnableOrigin(const GURL& origin) {
|
| + SyncStatusCode status = SYNC_STATUS_UNKNOWN;
|
| + drive_metadata_store_->EnableOrigin(
|
| + origin, base::Bind(&DriveMetadataStoreTest::DidFinishDBTask,
|
| + base::Unretained(this), &status));
|
| + message_loop_.Run();
|
| + return status;
|
| + }
|
| +
|
| + SyncStatusCode DisableOrigin(const GURL& origin) {
|
| + SyncStatusCode status = SYNC_STATUS_UNKNOWN;
|
| + drive_metadata_store_->DisableOrigin(
|
| + origin, base::Bind(&DriveMetadataStoreTest::DidFinishDBTask,
|
| + base::Unretained(this), &status));
|
| + message_loop_.Run();
|
| + return status;
|
| + }
|
| +
|
| SyncStatusCode RemoveOrigin(const GURL& url) {
|
| SyncStatusCode status = SYNC_STATUS_UNKNOWN;
|
| drive_metadata_store_->RemoveOrigin(
|
| @@ -194,6 +214,40 @@ class DriveMetadataStoreTest : public testing::Test {
|
| created_ = true;
|
| }
|
|
|
| + void VerifyUntrackedOrigin(const GURL& origin) {
|
| + EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsOriginDisabled(origin));
|
| + }
|
| +
|
| + void VerifyBatchSyncOrigin(const GURL& origin,
|
| + const std::string& resource_id) {
|
| + EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsOriginDisabled(origin));
|
| + EXPECT_EQ(resource_id,
|
| + GetResourceID(metadata_store()->batch_sync_origins(), origin));
|
| + }
|
| +
|
| + void VerifyIncrementalSyncOrigin(const GURL& origin,
|
| + const std::string& resource_id) {
|
| + EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(origin));
|
| + EXPECT_TRUE(metadata_store()->IsIncrementalSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsOriginDisabled(origin));
|
| + EXPECT_EQ(resource_id,
|
| + GetResourceID(metadata_store()->incremental_sync_origins(),
|
| + origin));
|
| + }
|
| +
|
| + void VerifyDisabledOrigin(const GURL& origin,
|
| + const std::string& resource_id) {
|
| + EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(origin));
|
| + EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(origin));
|
| + EXPECT_TRUE(metadata_store()->IsOriginDisabled(origin));
|
| + EXPECT_EQ(resource_id,
|
| + GetResourceID(metadata_store()->disabled_origins(), origin));
|
| + }
|
| +
|
| base::FilePath base_dir() {
|
| return base_dir_.path();
|
| }
|
| @@ -223,7 +277,7 @@ class DriveMetadataStoreTest : public testing::Test {
|
| message_loop_.Quit();
|
| }
|
|
|
| - void DidRestoreSyncOrigins(SyncStatusCode status) {
|
| + void DidRestoreOrigins(SyncStatusCode status) {
|
| EXPECT_EQ(SYNC_STATUS_OK, status);
|
| message_loop_.Quit();
|
| }
|
| @@ -332,79 +386,93 @@ TEST_F(DriveMetadataStoreTest, GetToBeFetchedFilessTest) {
|
| }
|
|
|
| TEST_F(DriveMetadataStoreTest, StoreSyncRootDirectory) {
|
| - const std::string kResourceID("hoge");
|
| + const std::string kResourceId("hoge");
|
|
|
| InitializeDatabase();
|
|
|
| EXPECT_TRUE(metadata_store()->sync_root_directory().empty());
|
|
|
| - metadata_store()->SetSyncRootDirectory(kResourceID);
|
| - EXPECT_EQ(kResourceID, metadata_store()->sync_root_directory());
|
| + metadata_store()->SetSyncRootDirectory(kResourceId);
|
| + EXPECT_EQ(kResourceId, metadata_store()->sync_root_directory());
|
|
|
| DropSyncRootDirectoryInStore();
|
| EXPECT_TRUE(metadata_store()->sync_root_directory().empty());
|
|
|
| RestoreSyncRootDirectoryFromDB();
|
| - EXPECT_EQ(kResourceID, metadata_store()->sync_root_directory());
|
| + EXPECT_EQ(kResourceId, metadata_store()->sync_root_directory());
|
| }
|
|
|
| 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 GURL kOrigin3("chrome-extension://example3");
|
| + const std::string kResourceId1("hoge");
|
| + const std::string kResourceId2("fuga");
|
| + const std::string kResourceId3("foo");
|
|
|
| InitializeDatabase();
|
|
|
| // Make sure origins have not been marked yet.
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin2));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin2));
|
| + VerifyUntrackedOrigin(kOrigin1);
|
| + VerifyUntrackedOrigin(kOrigin2);
|
| + VerifyUntrackedOrigin(kOrigin3);
|
|
|
| // Mark origins as batch sync origins.
|
| - metadata_store()->AddBatchSyncOrigin(kOrigin1, kResourceID1);
|
| - metadata_store()->AddBatchSyncOrigin(kOrigin2, kResourceID2);
|
| - EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(kOrigin1));
|
| - EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(kOrigin2));
|
| - EXPECT_EQ(kResourceID1,
|
| - GetResourceID(metadata_store()->batch_sync_origins(), kOrigin1));
|
| - EXPECT_EQ(kResourceID2,
|
| - GetResourceID(metadata_store()->batch_sync_origins(), kOrigin2));
|
| -
|
| - // Mark |kOrigin1| as an incremental sync origin. |kOrigin2| should have still
|
| - // been marked as a batch sync origin.
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin1, kResourceId1);
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin2, kResourceId2);
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin3, kResourceId3);
|
| + VerifyBatchSyncOrigin(kOrigin1, kResourceId1);
|
| + VerifyBatchSyncOrigin(kOrigin2, kResourceId2);
|
| + VerifyBatchSyncOrigin(kOrigin3, kResourceId3);
|
| +
|
| + // Mark |kOrigin1| as an incremental sync origin, and disable |kOrigin3| as
|
| + // a disabled sync origin. |kOrigin2| should have still been marked as a
|
| + // batch sync origin.
|
| metadata_store()->MoveBatchSyncOriginToIncremental(kOrigin1);
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin1));
|
| - EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(kOrigin2));
|
| - EXPECT_TRUE(metadata_store()->IsIncrementalSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin2));
|
| - EXPECT_EQ(kResourceID1,
|
| - GetResourceID(metadata_store()->incremental_sync_origins(),
|
| - kOrigin1));
|
| - EXPECT_EQ(kResourceID2,
|
| - GetResourceID(metadata_store()->batch_sync_origins(), kOrigin2));
|
| + DisableOrigin(kOrigin3);
|
| + VerifyIncrementalSyncOrigin(kOrigin1, kResourceId1);
|
| + VerifyBatchSyncOrigin(kOrigin2, kResourceId2);
|
| + VerifyDisabledOrigin(kOrigin3, kResourceId3);
|
|
|
| DropSyncOriginsInStore();
|
|
|
| // Make sure origins have been dropped.
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin2));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin2));
|
| + VerifyUntrackedOrigin(kOrigin1);
|
| + VerifyUntrackedOrigin(kOrigin2);
|
| + VerifyUntrackedOrigin(kOrigin3);
|
|
|
| - RestoreSyncOriginsFromDB();
|
| + RestoreOriginsFromDB();
|
|
|
| // Make sure origins have been restored.
|
| - EXPECT_FALSE(metadata_store()->IsBatchSyncOrigin(kOrigin1));
|
| - EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(kOrigin2));
|
| - EXPECT_TRUE(metadata_store()->IsIncrementalSyncOrigin(kOrigin1));
|
| - EXPECT_FALSE(metadata_store()->IsIncrementalSyncOrigin(kOrigin2));
|
| - EXPECT_EQ(kResourceID1,
|
| - GetResourceID(metadata_store()->incremental_sync_origins(),
|
| - kOrigin1));
|
| - EXPECT_EQ(kResourceID2,
|
| - GetResourceID(metadata_store()->batch_sync_origins(), kOrigin2));
|
| + VerifyIncrementalSyncOrigin(kOrigin1, kResourceId1);
|
| + VerifyBatchSyncOrigin(kOrigin2, kResourceId2);
|
| + VerifyDisabledOrigin(kOrigin3, kResourceId3);
|
| +}
|
| +
|
| +TEST_F(DriveMetadataStoreTest, DisableOrigin) {
|
| + const GURL kOrigin1("chrome-extension://example1");
|
| + const GURL kOrigin2("chrome-extension://example2");
|
| + const std::string kResourceId1("hoge");
|
| + const std::string kResourceId2("fuga");
|
| +
|
| + InitializeDatabase();
|
| + EXPECT_EQ(SYNC_STATUS_OK, SetLargestChangeStamp(1));
|
| +
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin1, kResourceId1);
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin2, kResourceId2);
|
| + metadata_store()->MoveBatchSyncOriginToIncremental(kOrigin2);
|
| + VerifyBatchSyncOrigin(kOrigin1, kResourceId1);
|
| + VerifyIncrementalSyncOrigin(kOrigin2, kResourceId2);
|
| +
|
| + DisableOrigin(kOrigin1);
|
| + DisableOrigin(kOrigin2);
|
| + VerifyDisabledOrigin(kOrigin1, kResourceId1);
|
| + VerifyDisabledOrigin(kOrigin2, kResourceId2);
|
| +
|
| + EnableOrigin(kOrigin1);
|
| + EnableOrigin(kOrigin2);
|
| + VerifyBatchSyncOrigin(kOrigin1, kResourceId1);
|
| + VerifyBatchSyncOrigin(kOrigin2, kResourceId2);
|
| }
|
|
|
| TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| @@ -412,9 +480,11 @@ TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| const GURL kOrigin2("chrome-extension://example2");
|
| const GURL kOrigin3("chrome-extension://example3");
|
| const GURL kOrigin4("chrome-extension://example4");
|
| + const GURL kOrigin5("chrome-extension://example5");
|
| const std::string kResourceId1("hogera");
|
| const std::string kResourceId2("fugaga");
|
| const std::string kResourceId3("piyopiyo");
|
| + const std::string kResourceId5("hogehoge");
|
|
|
| InitializeDatabase();
|
| EXPECT_EQ(SYNC_STATUS_OK, SetLargestChangeStamp(1));
|
| @@ -423,6 +493,7 @@ TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| metadata_store()->AddBatchSyncOrigin(kOrigin2, kResourceId2);
|
| metadata_store()->MoveBatchSyncOriginToIncremental(kOrigin2);
|
| metadata_store()->AddBatchSyncOrigin(kOrigin3, kResourceId3);
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin5, kResourceId5);
|
|
|
| EXPECT_EQ(SYNC_STATUS_OK,
|
| UpdateEntry(
|
| @@ -447,12 +518,18 @@ TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| EXPECT_EQ(SYNC_STATUS_OK,
|
| UpdateEntry(
|
| CreateSyncableFileSystemURL(
|
| + kOrigin5, kServiceName, base::FilePath(FPL("tac"))),
|
| + CreateMetadata("pov", "spoon", false, false)));
|
| + EXPECT_EQ(SYNC_STATUS_OK,
|
| + UpdateEntry(
|
| + CreateSyncableFileSystemURL(
|
| kOrigin1, kServiceName, base::FilePath(FPL("tic"))),
|
| CreateMetadata("zav", "sause", false, false)));
|
|
|
| EXPECT_EQ(SYNC_STATUS_OK, RemoveOrigin(kOrigin1));
|
| EXPECT_EQ(SYNC_STATUS_OK, RemoveOrigin(kOrigin2));
|
| EXPECT_EQ(SYNC_STATUS_OK, RemoveOrigin(kOrigin4));
|
| + EXPECT_EQ(SYNC_STATUS_OK, RemoveOrigin(kOrigin5));
|
|
|
| DropDatabase();
|
| InitializeDatabase();
|
| @@ -461,6 +538,7 @@ TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| EXPECT_EQ(1u, metadata_store()->batch_sync_origins().size());
|
| EXPECT_TRUE(metadata_store()->IsBatchSyncOrigin(kOrigin3));
|
| EXPECT_TRUE(metadata_store()->incremental_sync_origins().empty());
|
| + EXPECT_TRUE(metadata_store()->disabled_origins().empty());
|
| EXPECT_EQ(1u, metadata_map().size());
|
|
|
| DriveMetadataStore::MetadataMap::const_iterator found =
|
| @@ -471,8 +549,10 @@ TEST_F(DriveMetadataStoreTest, RemoveOrigin) {
|
| 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");
|
|
|
| InitializeDatabase();
|
| EXPECT_EQ(SYNC_STATUS_OK, SetLargestChangeStamp(1));
|
| @@ -480,15 +560,19 @@ TEST_F(DriveMetadataStoreTest, GetResourceIdForOrigin) {
|
| metadata_store()->AddBatchSyncOrigin(kOrigin1, kResourceId1);
|
| metadata_store()->AddBatchSyncOrigin(kOrigin2, kResourceId2);
|
| metadata_store()->MoveBatchSyncOriginToIncremental(kOrigin2);
|
| + metadata_store()->AddBatchSyncOrigin(kOrigin3, kResourceId3);
|
| + DisableOrigin(kOrigin3);
|
|
|
| EXPECT_EQ(kResourceId1, metadata_store()->GetResourceIdForOrigin(kOrigin1));
|
| EXPECT_EQ(kResourceId2, metadata_store()->GetResourceIdForOrigin(kOrigin2));
|
| + EXPECT_EQ(kResourceId3, metadata_store()->GetResourceIdForOrigin(kOrigin3));
|
|
|
| DropDatabase();
|
| InitializeDatabase();
|
|
|
| EXPECT_EQ(kResourceId1, metadata_store()->GetResourceIdForOrigin(kOrigin1));
|
| EXPECT_EQ(kResourceId2, metadata_store()->GetResourceIdForOrigin(kOrigin2));
|
| + EXPECT_EQ(kResourceId3, metadata_store()->GetResourceIdForOrigin(kOrigin3));
|
| }
|
|
|
| TEST_F(DriveMetadataStoreTest, MigrationFromV0) {
|
|
|