Chromium Code Reviews| Index: components/drive/change_list_processor_unittest.cc |
| diff --git a/components/drive/change_list_processor_unittest.cc b/components/drive/change_list_processor_unittest.cc |
| index da26090bfe8ba207e61d608b72ea88d7aa5a354e..987806a354d6c29b694f5482c7d0f271d164f82e 100644 |
| --- a/components/drive/change_list_processor_unittest.cc |
| +++ b/components/drive/change_list_processor_unittest.cc |
| @@ -31,6 +31,7 @@ namespace internal { |
| namespace { |
| const int64_t kBaseResourceListChangestamp = 123; |
| +const int64_t kSecondResourceListChangestamp = 4567; |
|
hashimoto
2017/04/06 10:23:36
You can use kBaseResourceListChangestamp + 1 inste
yamaguchi
2017/04/07 03:57:43
Done.
|
| const char kRootId[] = "fake_root"; |
| enum FileOrDirectory { |
| @@ -658,5 +659,53 @@ TEST_F(ChangeListProcessorTest, ModificationDate) { |
| EXPECT_EQ(new_file_local.title(), entry.title()); |
| } |
| +TEST_F(ChangeListProcessorTest, DeltaTeamDriveChange) { |
| + const char kTeamDriveId[] = "ID_OF_TEAM_DRIVE"; |
| + const char kOldName[] = "Old Name"; |
| + const char kNewName[] = "New Name"; |
| + |
| + TeamDriveChange team_drive; |
| + team_drive.set_name(kOldName); |
| + team_drive.set_id(kTeamDriveId); |
| + |
| + std::vector<std::unique_ptr<ChangeList>> change_lists; |
| + change_lists.push_back(base::MakeUnique<ChangeList>()); |
| + change_lists[0]->mutable_team_drives()->push_back(team_drive); |
| + change_lists[0]->set_largest_changestamp(kSecondResourceListChangestamp); |
| + |
| + // Apply the changelist and check the effect. |
| + EXPECT_EQ(FILE_ERROR_OK, ApplyFullResourceList(CreateBaseChangeList())); |
| + |
| + FileChange changed_files; |
| + EXPECT_EQ(FILE_ERROR_OK, |
| + ApplyChangeList(std::move(change_lists), &changed_files)); |
| + |
| + int64_t changestamp = 0; |
| + EXPECT_EQ(FILE_ERROR_OK, metadata_->GetLargestChangestamp(&changestamp)); |
| + EXPECT_EQ(kSecondResourceListChangestamp, changestamp); |
| + |
| + ResourceEntry entry; |
| + EXPECT_EQ(FILE_ERROR_OK, |
| + metadata_->GetResourceEntryById(kTeamDriveId, &entry)); |
| + EXPECT_EQ(kOldName, entry.title()); |
| + |
| + // Changelist consists of all Team Drive change. No file change. |
| + EXPECT_EQ(FILE_ERROR_OK, |
| + metadata_->GetResourceEntryById(kTeamDriveId, &entry)); |
|
hashimoto
2017/04/06 10:23:36
This GetResourceEntryById() is not needed?
yamaguchi
2017/04/07 03:57:43
Right, it's not needed.
|
| + EXPECT_EQ(0U, changed_files.size()); |
| + |
| + // Second change, which updates Team Drive name |
| + change_lists.clear(); |
| + change_lists.push_back(base::MakeUnique<ChangeList>()); |
| + team_drive.set_name(kNewName); |
| + change_lists[0]->mutable_team_drives()->push_back(team_drive); |
| + change_lists[0]->set_largest_changestamp(kSecondResourceListChangestamp + 1); |
| + EXPECT_EQ(FILE_ERROR_OK, |
| + ApplyChangeList(std::move(change_lists), &changed_files)); |
| + EXPECT_EQ(FILE_ERROR_OK, |
| + metadata_->GetResourceEntryById(kTeamDriveId, &entry)); |
| + EXPECT_EQ(kNewName, entry.title()); |
| +} |
| + |
| } // namespace internal |
| } // namespace drive |