Chromium Code Reviews| Index: chrome/browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc |
| diff --git a/chrome/browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc b/chrome/browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc |
| index 78d4ac2d9c83151ccd57a03a1d143cad324639b6..ffadec2a630d9c18d776874bdf328159a5cecffe 100644 |
| --- a/chrome/browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc |
| +++ b/chrome/browser/sync_file_system/drive_backend/metadata_database_index_on_disk_unittest.cc |
| @@ -187,7 +187,7 @@ TEST_F(MetadataDatabaseIndexOnDiskTest, IndexAppRootIDByAppIDTest) { |
| CreateTestDatabase(true); |
| std::vector<std::string> app_ids = index()->GetRegisteredAppIDs(); |
| - ASSERT_EQ(1u, app_ids.size()); |
| + ASSERT_EQ(1U, app_ids.size()); |
| EXPECT_EQ("app_id", app_ids[0]); |
| EXPECT_EQ(kInvalidTrackerID, index()->GetAppRootTracker("")); |
| @@ -247,5 +247,65 @@ TEST_F(MetadataDatabaseIndexOnDiskTest, IndexAppRootIDByAppIDTest) { |
| EXPECT_EQ(kInvalidTrackerID, index()->GetAppRootTracker("app_id_3")); |
| } |
| +TEST_F(MetadataDatabaseIndexOnDiskTest, DirtyTrackersTest) { |
| + CreateTestDatabase(true); |
| + |
| + scoped_ptr<leveldb::WriteBatch> batch; |
| + // Testing public methods |
| + EXPECT_EQ(1U, index()->CountDirtyTracker()); |
| + EXPECT_FALSE(index()->HasDemotedDirtyTracker()); |
| + EXPECT_EQ(kPlaceholderTrackerID, index()->PickDirtyTracker()); |
| + batch.reset(new leveldb::WriteBatch); |
| + index()->DemoteDirtyTracker(kPlaceholderTrackerID, batch.get()); |
| + WriteToDB(batch.Pass()); |
| + EXPECT_TRUE(index()->HasDemotedDirtyTracker()); |
| + EXPECT_EQ(1U, index()->CountDirtyTracker()); |
| + |
| + const int64 tracker_id = 13; |
| + scoped_ptr<FileTracker> app_root_tracker(new FileTracker); |
| + index()->GetFileTracker(kAppRootTrackerID, app_root_tracker.get()); |
| + |
| + // Testing AddDirtyTrackerIndexes |
| + scoped_ptr<FileTracker> tracker = |
| + test_util::CreatePlaceholderTracker("dirty_holder", |
| + tracker_id, |
| + app_root_tracker.get()); |
| + batch.reset(new leveldb::WriteBatch); |
| + index()->StoreFileTracker(tracker.Pass(), batch.get()); |
| + WriteToDB(batch.Pass()); |
| + EXPECT_EQ(2U, index()->CountDirtyTracker()); |
| + EXPECT_EQ(tracker_id, index()->PickDirtyTracker()); |
| + |
| + // Testing UpdateDirtyTrackerIndexes |
| + tracker = test_util::CreatePlaceholderTracker("non_dirty_holder", |
| + tracker_id, |
| + app_root_tracker.get()); |
| + tracker->set_dirty(false); |
| + batch.reset(new leveldb::WriteBatch); |
| + index()->StoreFileTracker(tracker.Pass(), batch.get()); |
| + WriteToDB(batch.Pass()); |
| + EXPECT_EQ(1U, index()->CountDirtyTracker()); |
| + EXPECT_EQ(kInvalidTrackerID, index()->PickDirtyTracker()); |
| + |
| + tracker = test_util::CreatePlaceholderTracker("dirty_holder_2", |
| + tracker_id, |
| + app_root_tracker.get()); |
| + batch.reset(new leveldb::WriteBatch); |
| + index()->StoreFileTracker(tracker.Pass(), batch.get()); |
| + WriteToDB(batch.Pass()); |
| + EXPECT_EQ(2U, index()->CountDirtyTracker()); |
| + EXPECT_EQ(tracker_id, index()->PickDirtyTracker()); |
| + |
| + // Testing RemoveFromDirtyTrackerIndexes |
| + tracker = test_util::CreatePlaceholderTracker("dirty_holder_3", |
|
nhiroki
2014/07/08 04:17:20
This doesn't seem to be used.
peria
2014/07/08 04:58:33
Done.
|
| + tracker_id, |
| + app_root_tracker.get()); |
| + batch.reset(new leveldb::WriteBatch); |
| + index()->RemoveFileTracker(tracker_id, batch.get()); |
| + WriteToDB(batch.Pass()); |
| + EXPECT_EQ(1U, index()->CountDirtyTracker()); |
| + EXPECT_EQ(kInvalidTrackerID, index()->PickDirtyTracker()); |
| +} |
| + |
| } // namespace drive_backend |
| } // namespace sync_file_system |