Commit e33ca747 authored by Sam McNally's avatar Sam McNally Committed by Commit Bot

Add support for team drives to DriveFsTestVolume.

Run the Team Drives transfer tests with DriveFS enabled too.

Bug: 848126
Change-Id: I877962e6908eafb976c56da380bd30d01aaf446b
Reviewed-on: https://chromium-review.googlesource.com/1137971Reviewed-by: default avatarNoel Gordon <noel@chromium.org>
Commit-Queue: Sam McNally <sammc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575222}
parent 4a0cf651
...@@ -310,20 +310,27 @@ WRAPPED_INSTANTIATE_TEST_CASE_P( ...@@ -310,20 +310,27 @@ WRAPPED_INSTANTIATE_TEST_CASE_P(
WRAPPED_INSTANTIATE_TEST_CASE_P( WRAPPED_INSTANTIATE_TEST_CASE_P(
Transfer, /* transfer.js */ Transfer, /* transfer.js */
FilesAppBrowserTest, FilesAppBrowserTest,
::testing::Values(TestCase("transferFromDriveToDownloads"), ::testing::Values(
TestCase("transferFromDriveToDownloads").EnableDriveFs(), TestCase("transferFromDriveToDownloads"),
TestCase("transferFromDownloadsToDrive"), TestCase("transferFromDriveToDownloads").EnableDriveFs(),
TestCase("transferFromDownloadsToDrive").EnableDriveFs(), TestCase("transferFromDownloadsToDrive"),
TestCase("transferFromSharedToDownloads"), TestCase("transferFromDownloadsToDrive").EnableDriveFs(),
TestCase("transferFromSharedToDrive"), TestCase("transferFromSharedToDownloads"),
TestCase("transferFromOfflineToDownloads"), TestCase("transferFromSharedToDrive"),
TestCase("transferFromOfflineToDrive"), TestCase("transferFromOfflineToDownloads"),
TestCase("transferFromTeamDriveToDrive"), TestCase("transferFromOfflineToDrive"),
TestCase("transferFromDriveToTeamDrive"), TestCase("transferFromTeamDriveToDrive"),
TestCase("transferFromTeamDriveToDownloads"), TestCase("transferFromTeamDriveToDrive").EnableDriveFs(),
TestCase("transferHostedFileFromTeamDriveToDownloads"), TestCase("transferFromDriveToTeamDrive"),
TestCase("transferFromDownloadsToTeamDrive"), TestCase("transferFromDriveToTeamDrive").EnableDriveFs(),
TestCase("transferBetweenTeamDrives"))); TestCase("transferFromTeamDriveToDownloads"),
TestCase("transferFromTeamDriveToDownloads").EnableDriveFs(),
TestCase("transferHostedFileFromTeamDriveToDownloads"),
TestCase("transferHostedFileFromTeamDriveToDownloads").EnableDriveFs(),
TestCase("transferFromDownloadsToTeamDrive"),
TestCase("transferFromDownloadsToTeamDrive").EnableDriveFs(),
TestCase("transferBetweenTeamDrives"),
TestCase("transferBetweenTeamDrives").EnableDriveFs()));
WRAPPED_INSTANTIATE_TEST_CASE_P( WRAPPED_INSTANTIATE_TEST_CASE_P(
RestorePrefs, /* restore_prefs.js */ RestorePrefs, /* restore_prefs.js */
......
...@@ -782,8 +782,8 @@ class DriveFsTestVolume : public DriveTestVolume { ...@@ -782,8 +782,8 @@ class DriveFsTestVolume : public DriveTestVolume {
<< "Failed to create a directory: " << target_path.value(); << "Failed to create a directory: " << target_path.value();
break; break;
case AddEntriesMessage::TEAM_DRIVE: case AddEntriesMessage::TEAM_DRIVE:
// TODO(sashab): Add support for Team Drives in DriveFS tests. ASSERT_TRUE(base::CreateDirectory(target_path))
NOTREACHED(); << "Failed to create a team drive: " << target_path.value();
break; break;
} }
...@@ -796,7 +796,9 @@ class DriveFsTestVolume : public DriveTestVolume { ...@@ -796,7 +796,9 @@ class DriveFsTestVolume : public DriveTestVolume {
base::RepeatingCallback< base::RepeatingCallback<
std::unique_ptr<drivefs::DriveFsHost::MojoConnectionDelegate>()> std::unique_ptr<drivefs::DriveFsHost::MojoConnectionDelegate>()>
CreateDriveFsConnectionDelegate() override { CreateDriveFsConnectionDelegate() override {
CHECK(base::CreateDirectory(GetDriveRoot())); CHECK(base::CreateDirectory(GetMyDrivePath()));
CHECK(base::CreateDirectory(GetTeamDriveGrandRoot()));
InitializeFakeDriveFs(); InitializeFakeDriveFs();
return base::BindRepeating(&drivefs::FakeDriveFs::CreateConnectionDelegate, return base::BindRepeating(&drivefs::FakeDriveFs::CreateConnectionDelegate,
base::Unretained(fake_drivefs_.get())); base::Unretained(fake_drivefs_.get()));
...@@ -827,7 +829,8 @@ class DriveFsTestVolume : public DriveTestVolume { ...@@ -827,7 +829,8 @@ class DriveFsTestVolume : public DriveTestVolume {
// Update the modified time of parent directories because they may be // Update the modified time of parent directories because they may be
// also affected by the update of child items. // also affected by the update of child items.
if (path.DirName() != GetDriveRoot()) { if (path.DirName() != GetTeamDriveGrandRoot() &&
path.DirName() != GetMyDrivePath()) {
const auto it = entries_.find(path.DirName()); const auto it = entries_.find(path.DirName());
if (it == entries_.end()) if (it == entries_.end())
return false; return false;
...@@ -840,7 +843,9 @@ class DriveFsTestVolume : public DriveTestVolume { ...@@ -840,7 +843,9 @@ class DriveFsTestVolume : public DriveTestVolume {
base::FilePath GetTargetPathForTestEntry( base::FilePath GetTargetPathForTestEntry(
const AddEntriesMessage::TestEntryInfo& entry) { const AddEntriesMessage::TestEntryInfo& entry) {
const base::FilePath target_path = const base::FilePath target_path =
GetDriveRoot().AppendASCII(entry.target_path); entry.team_drive_name.empty()
? GetMyDrivePath().Append(entry.target_path)
: GetTeamDrivePath(entry.team_drive_name).Append(entry.target_path);
if (entry.name_text != entry.target_path) if (entry.name_text != entry.target_path)
return target_path.DirName().Append(entry.name_text); return target_path.DirName().Append(entry.name_text);
return target_path; return target_path;
...@@ -854,7 +859,15 @@ class DriveFsTestVolume : public DriveTestVolume { ...@@ -854,7 +859,15 @@ class DriveFsTestVolume : public DriveTestVolume {
return drive_path; return drive_path;
} }
base::FilePath GetDriveRoot() { return root_path().Append("root"); } base::FilePath GetMyDrivePath() { return root_path().Append("root"); }
base::FilePath GetTeamDriveGrandRoot() {
return root_path().Append("team_drives");
}
base::FilePath GetTeamDrivePath(const std::string& team_drive_name) {
return GetTeamDriveGrandRoot().Append(team_drive_name);
}
Profile* const profile_; Profile* const profile_;
std::map<base::FilePath, const AddEntriesMessage::TestEntryInfo> entries_; std::map<base::FilePath, const AddEntriesMessage::TestEntryInfo> entries_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment