Chromium Code Reviews| Index: content/browser/fileapi/file_system_operation_impl_unittest.cc |
| diff --git a/content/browser/fileapi/file_system_operation_impl_unittest.cc b/content/browser/fileapi/file_system_operation_impl_unittest.cc |
| index 392f1c07a090c740bfd12f79852e1ceac9dbd01b..67f226b75ef7310cf2412f07f947a965d1396967 100644 |
| --- a/content/browser/fileapi/file_system_operation_impl_unittest.cc |
| +++ b/content/browser/fileapi/file_system_operation_impl_unittest.cc |
| @@ -40,33 +40,11 @@ using storage::ShareableFileReference; |
| namespace content { |
| -namespace { |
| - |
| -const int kFileOperationStatusNotSet = 1; |
| - |
| -void AssertFileErrorEq(const tracked_objects::Location& from_here, |
| - base::File::Error expected, |
| - base::File::Error actual) { |
| - ASSERT_EQ(expected, actual) << from_here.ToString(); |
| -} |
| - |
| -void AssertFileErrorEqWithClosure(const tracked_objects::Location& from_here, |
| - base::File::Error expected, |
| - base::Closure closure, |
| - base::File::Error actual) { |
| - ASSERT_EQ(expected, actual) << from_here.ToString(); |
| - closure.Run(); |
| -} |
| - |
| -} // namespace |
| - |
| // Test class for FileSystemOperationImpl. |
| class FileSystemOperationImplTest |
| : public testing::Test { |
| public: |
| - FileSystemOperationImplTest() |
| - : status_(kFileOperationStatusNotSet), |
| - weak_factory_(this) {} |
| + FileSystemOperationImplTest() : weak_factory_(this) {} |
| protected: |
| virtual void SetUp() OVERRIDE { |
| @@ -99,7 +77,6 @@ class FileSystemOperationImplTest |
| return sandbox_file_system_.operation_runner(); |
| } |
| - int status() const { return status_; } |
| const base::File::Info& info() const { return info_; } |
| const base::FilePath& path() const { return path_; } |
| const std::vector<storage::DirectoryEntry>& entries() const { |
| @@ -180,53 +157,80 @@ class FileSystemOperationImplTest |
| } |
| // Callbacks for recording test results. |
| - FileSystemOperation::StatusCallback RecordStatusCallback() { |
| + FileSystemOperation::StatusCallback RecordStatusCallback( |
| + const base::Closure& closure, |
| + base::File::Error* status) { |
| return base::Bind(&FileSystemOperationImplTest::DidFinish, |
| - weak_factory_.GetWeakPtr()); |
| + weak_factory_.GetWeakPtr(), |
| + closure, |
| + status); |
| } |
| - FileSystemOperation::ReadDirectoryCallback |
| - RecordReadDirectoryCallback() { |
| + FileSystemOperation::ReadDirectoryCallback RecordReadDirectoryCallback( |
| + const base::Closure& closure, |
| + base::File::Error* status) { |
| return base::Bind(&FileSystemOperationImplTest::DidReadDirectory, |
| - weak_factory_.GetWeakPtr()); |
| + weak_factory_.GetWeakPtr(), |
| + closure, |
| + status); |
| } |
| - FileSystemOperation::GetMetadataCallback RecordMetadataCallback() { |
| + FileSystemOperation::GetMetadataCallback RecordMetadataCallback( |
| + const base::Closure& closure, |
| + base::File::Error* status) { |
| return base::Bind(&FileSystemOperationImplTest::DidGetMetadata, |
| - weak_factory_.GetWeakPtr()); |
| + weak_factory_.GetWeakPtr(), |
| + closure, |
| + status); |
| } |
| - FileSystemOperation::SnapshotFileCallback RecordSnapshotFileCallback() { |
| + FileSystemOperation::SnapshotFileCallback RecordSnapshotFileCallback( |
| + const base::Closure& closure, |
| + base::File::Error* status) { |
| return base::Bind(&FileSystemOperationImplTest::DidCreateSnapshotFile, |
| - weak_factory_.GetWeakPtr()); |
| + weak_factory_.GetWeakPtr(), |
| + closure, |
| + status); |
| } |
| - void DidFinish(base::File::Error status) { |
| - status_ = status; |
| + void DidFinish(const base::Closure& closure, |
| + base::File::Error* status, |
| + base::File::Error actual) { |
| + *status = actual; |
| + closure.Run(); |
| } |
| - void DidReadDirectory(base::File::Error status, |
| + void DidReadDirectory(const base::Closure& closure, |
| + base::File::Error* status, |
| + base::File::Error actual, |
| const std::vector<storage::DirectoryEntry>& entries, |
| bool /* has_more */) { |
| entries_ = entries; |
| - status_ = status; |
| + *status = actual; |
| + closure.Run(); |
| } |
| - void DidGetMetadata(base::File::Error status, |
| + void DidGetMetadata(const base::Closure& closure, |
| + base::File::Error* status, |
| + base::File::Error actual, |
| const base::File::Info& info) { |
| info_ = info; |
| - status_ = status; |
| + *status = actual; |
| + closure.Run(); |
| } |
| void DidCreateSnapshotFile( |
| - base::File::Error status, |
| + const base::Closure& closure, |
| + base::File::Error* status, |
| + base::File::Error actual, |
| const base::File::Info& info, |
| const base::FilePath& platform_path, |
| const scoped_refptr<ShareableFileReference>& shareable_file_ref) { |
| info_ = info; |
| path_ = platform_path; |
| - status_ = status; |
| + *status = actual; |
| shareable_file_ref_ = shareable_file_ref; |
| + closure.Run(); |
| } |
| int64 GetDataSizeOnDisk() { |
| @@ -251,10 +255,8 @@ class FileSystemOperationImplTest |
| AsyncFileTestHelper::CreateFile( |
| sandbox_file_system_.file_system_context(), url); |
| - operation_runner()->Remove(url, false /* recursive */, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, |
| - base::File::FILE_OK)); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(Remove(url, false /* recursive */), base::File::FILE_OK); |
|
tzik
2014/09/11 06:19:53
Please put the expectation first.
iseki
2014/09/11 06:36:55
Done.
|
| + |
| change_observer()->ResetCount(); |
| int64 total_usage; |
| @@ -284,6 +286,147 @@ class FileSystemOperationImplTest |
| quota + quota_delta); |
| } |
| + base::File::Error Move( |
| + const FileSystemURL& src, |
|
tzik
2014/09/11 06:19:54
could you pack this to the previous line?
iseki
2014/09/11 06:36:54
If pack this to the previous line, option is over
|
| + const FileSystemURL& dest, |
| + storage::FileSystemOperation::CopyOrMoveOption option) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->Move( |
| + src, |
| + dest, |
| + option, |
| + RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error Copy( |
| + const FileSystemURL& src, |
|
tzik
2014/09/11 06:19:54
ditto
iseki
2014/09/11 06:36:54
The same reason.
|
| + const FileSystemURL& dest, |
| + storage::FileSystemOperation::CopyOrMoveOption option) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->Copy( |
| + src, |
| + dest, |
| + option, |
| + FileSystemOperationRunner::CopyProgressCallback(), |
| + RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error CopyInForeignFile(const base::FilePath& src, |
| + const FileSystemURL& dest) { |
|
tzik
2014/09/11 06:19:54
indent?
iseki
2014/09/11 06:36:55
Done.
|
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->CopyInForeignFile( |
| + src, dest, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error Truncate(const FileSystemURL& url, int size) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->Truncate( |
| + url, size, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error CreateFile(const FileSystemURL& url, bool exclusive) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->CreateFile( |
| + url, exclusive, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error Remove(const FileSystemURL& url, bool recursive) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->Remove( |
| + url, recursive, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error CreateDirectory(const FileSystemURL& url, |
| + bool exclusive, |
|
tzik
2014/09/11 06:19:53
indent?
iseki
2014/09/11 06:36:54
Done.
|
| + bool recursive) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->CreateDirectory( |
| + url, |
| + exclusive, |
| + recursive, |
| + RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error GetMetadata(const FileSystemURL& url) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->GetMetadata( |
| + url, RecordMetadataCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error ReadDirectory(const FileSystemURL& url) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->ReadDirectory( |
| + url, RecordReadDirectoryCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error CreateSnapshotFile(const FileSystemURL& url) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->CreateSnapshotFile( |
| + url, RecordSnapshotFileCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error FileExists(const FileSystemURL& url) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->FileExists( |
| + url, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error DirectoryExists(const FileSystemURL& url) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->DirectoryExists( |
| + url, RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| + base::File::Error TouchFile(const FileSystemURL& url, |
| + const base::Time& last_access_time, |
|
tzik
2014/09/11 06:19:54
indent?
iseki
2014/09/11 06:36:54
Done.
|
| + const base::Time& last_modified_time) { |
| + base::File::Error status; |
| + base::RunLoop run_loop; |
| + operation_runner()->TouchFile( |
| + url, |
| + last_access_time, |
| + last_modified_time, |
| + RecordStatusCallback(run_loop.QuitClosure(), &status)); |
| + run_loop.Run(); |
| + return status; |
| + } |
| + |
| private: |
| base::MessageLoopForIO message_loop_; |
| scoped_refptr<QuotaManager> quota_manager_; |
| @@ -295,7 +438,6 @@ class FileSystemOperationImplTest |
| SandboxFileSystemTestHelper sandbox_file_system_; |
| // For post-operation status. |
| - int status_; |
| base::File::Info info_; |
| base::FilePath path_; |
| std::vector<storage::DirectoryEntry> entries_; |
| @@ -311,11 +453,10 @@ class FileSystemOperationImplTest |
| TEST_F(FileSystemOperationImplTest, TestMoveFailureSrcDoesntExist) { |
| change_observer()->ResetCount(); |
| - operation_runner()->Move(URLForPath("a"), URLForPath("b"), |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ( |
| + base::File::FILE_ERROR_NOT_FOUND, |
| + Move( |
| + URLForPath("a"), URLForPath("b"), FileSystemOperation::OPTION_NONE)); |
|
tzik
2014/09/11 06:19:54
Just for my preference:
Move(URLForPath("a"), URLF
iseki
2014/09/11 06:36:54
Done.
|
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -323,11 +464,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveFailureContainsPath) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir(CreateDirectory("src/dest")); |
| - operation_runner()->Move(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Move(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -337,11 +475,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveFailureSrcDirExistsDestFile) { |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| FileSystemURL dest_file(CreateFile("dest/file")); |
| - operation_runner()->Move(src_dir, dest_file, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Move(src_dir, dest_file, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -352,11 +487,8 @@ TEST_F(FileSystemOperationImplTest, |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| FileSystemURL dest_file(CreateFile("dest/file")); |
| - operation_runner()->Move(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, |
| + Move(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -366,22 +498,18 @@ TEST_F(FileSystemOperationImplTest, TestMoveFailureSrcFileExistsDestDir) { |
| FileSystemURL src_file(CreateFile("src/file")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Move(src_file, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Move(src_file, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestMoveFailureDestParentDoesntExist) { |
| // Dest. parent path does not exist. |
| FileSystemURL src_dir(CreateDirectory("src")); |
| - operation_runner()->Move(src_dir, URLForPath("nonexistent/deset"), |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + Move(src_dir, |
| + URLForPath("nonexistent/deset"), |
|
tzik
2014/09/11 06:19:54
indent?
iseki
2014/09/11 06:36:55
Done.
|
| + FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -389,11 +517,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcFileAndOverwrite) { |
| FileSystemURL src_file(CreateFile("src")); |
| FileSystemURL dest_file(CreateFile("dest")); |
| - operation_runner()->Move(src_file, dest_file, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Move(src_file, dest_file, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(FileExists("dest")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_modify_file_count()); |
| @@ -406,11 +531,9 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcFileAndOverwrite) { |
| TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcFileAndNew) { |
| FileSystemURL src_file(CreateFile("src")); |
| - operation_runner()->Move(src_file, URLForPath("new"), |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ( |
| + base::File::FILE_OK, |
| + Move(src_file, URLForPath("new"), FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(FileExists("new")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_file_from_count()); |
| @@ -422,11 +545,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcDirAndOverwrite) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Move(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Move(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_FALSE(DirectoryExists("src")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_directory_count()); |
| @@ -442,11 +562,10 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcDirAndNew) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Move(src_dir, URLForPath("dest/new"), |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ( |
| + base::File::FILE_OK, |
| + Move( |
| + src_dir, URLForPath("dest/new"), FileSystemOperation::OPTION_NONE)); |
| EXPECT_FALSE(DirectoryExists("src")); |
| EXPECT_TRUE(DirectoryExists("dest/new")); |
| @@ -462,11 +581,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSrcDirRecursive) { |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Move(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Move(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(DirectoryExists("dest/dir")); |
| EXPECT_TRUE(FileExists("dest/dir/sub")); |
| @@ -482,11 +598,8 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSamePath) { |
| CreateDirectory("src/dir"); |
| CreateFile("src/dir/sub"); |
| - operation_runner()->Move(src_dir, src_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Move(src_dir, src_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(DirectoryExists("src/dir")); |
| EXPECT_TRUE(FileExists("src/dir/sub")); |
| @@ -498,12 +611,10 @@ TEST_F(FileSystemOperationImplTest, TestMoveSuccessSamePath) { |
| } |
| TEST_F(FileSystemOperationImplTest, TestCopyFailureSrcDoesntExist) { |
| - operation_runner()->Copy(URLForPath("a"), URLForPath("b"), |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ( |
| + base::File::FILE_ERROR_NOT_FOUND, |
| + Copy( |
| + URLForPath("a"), URLForPath("b"), FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -511,12 +622,8 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureContainsPath) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir(CreateDirectory("src/dir")); |
| - operation_runner()->Copy(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Copy(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -526,12 +633,8 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureSrcDirExistsDestFile) { |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| FileSystemURL dest_file(CreateFile("dest/file")); |
| - operation_runner()->Copy(src_dir, dest_file, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Copy(src_dir, dest_file, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -542,12 +645,8 @@ TEST_F(FileSystemOperationImplTest, |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| FileSystemURL dest_file(CreateFile("dest/file")); |
| - operation_runner()->Copy(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, |
| + Copy(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -556,12 +655,8 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureSrcFileExistsDestDir) { |
| FileSystemURL src_file(CreateFile("src")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Copy(src_file, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
| + Copy(src_file, dest_dir, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -569,12 +664,10 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureDestParentDoesntExist) { |
| // Dest. parent path does not exist. |
| FileSystemURL src_dir(CreateDirectory("src")); |
| - operation_runner()->Copy(src_dir, URLForPath("nonexistent/dest"), |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + Copy(src_dir, |
| + URLForPath("nonexistent/dest"), |
| + FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -582,9 +675,7 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureByQuota) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL src_file(CreateFile("src/file")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Truncate(src_file, 6, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(src_file, 6)); |
| EXPECT_EQ(6, GetFileSize("src/file")); |
| FileSystemURL dest_file(URLForPath("dest/file")); |
| @@ -592,12 +683,8 @@ TEST_F(FileSystemOperationImplTest, TestCopyFailureByQuota) { |
| GrantQuotaForCurrentUsage(); |
| AddQuota(6 + dest_path_cost - 1); |
| - operation_runner()->Copy(src_file, dest_file, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NO_SPACE, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NO_SPACE, |
| + Copy(src_file, dest_file, FileSystemOperation::OPTION_NONE)); |
| EXPECT_FALSE(FileExists("dest/file")); |
| } |
| @@ -605,12 +692,9 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcFileAndOverwrite) { |
| FileSystemURL src_file(CreateFile("src")); |
| FileSystemURL dest_file(CreateFile("dest")); |
| - operation_runner()->Copy(src_file, dest_file, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_file, dest_file, FileSystemOperation::OPTION_NONE)); |
| + |
| EXPECT_TRUE(FileExists("dest")); |
| EXPECT_EQ(4, quota_manager_proxy()->notify_storage_accessed_count()); |
| EXPECT_EQ(2, change_observer()->get_and_reset_modify_file_count()); |
| @@ -621,12 +705,9 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcFileAndOverwrite) { |
| TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcFileAndNew) { |
| FileSystemURL src_file(CreateFile("src")); |
| - operation_runner()->Copy(src_file, URLForPath("new"), |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ( |
| + base::File::FILE_OK, |
| + Copy(src_file, URLForPath("new"), FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(FileExists("new")); |
| EXPECT_EQ(4, quota_manager_proxy()->notify_storage_accessed_count()); |
| @@ -639,12 +720,8 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcDirAndOverwrite) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Copy(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| // Make sure we've overwritten but not copied the source under the |dest_dir|. |
| EXPECT_TRUE(DirectoryExists("dest")); |
| @@ -660,12 +737,8 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcDirAndNew) { |
| FileSystemURL src_dir(CreateDirectory("src")); |
| FileSystemURL dest_dir_new(URLForPath("dest")); |
| - operation_runner()->Copy(src_dir, dest_dir_new, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_dir, dest_dir_new, FileSystemOperation::OPTION_NONE)); |
| EXPECT_TRUE(DirectoryExists("dest")); |
| EXPECT_GE(quota_manager_proxy()->notify_storage_accessed_count(), 2); |
| @@ -680,13 +753,9 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSrcDirRecursive) { |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| - operation_runner()->Copy(src_dir, dest_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_dir, dest_dir, FileSystemOperation::OPTION_NONE)); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| EXPECT_TRUE(DirectoryExists("dest/dir")); |
| EXPECT_TRUE(FileExists("dest/dir/sub")); |
| @@ -705,13 +774,9 @@ TEST_F(FileSystemOperationImplTest, TestCopySuccessSamePath) { |
| CreateDirectory("src/dir"); |
| CreateFile("src/dir/sub"); |
| - operation_runner()->Copy(src_dir, src_dir, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_dir, src_dir, FileSystemOperation::OPTION_NONE)); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| EXPECT_TRUE(DirectoryExists("src/dir")); |
| EXPECT_TRUE(FileExists("src/dir/sub")); |
| @@ -734,13 +799,11 @@ TEST_F(FileSystemOperationImplTest, TestCopyInForeignFileSuccess) { |
| GetUsageAndQuota(&before_usage, NULL); |
| // Check that the file copied and corresponding usage increased. |
| - operation_runner()->CopyInForeignFile(src_local_disk_file_path, |
| - URLForPath("dest/file"), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ( |
| + base::File::FILE_OK, |
| + CopyInForeignFile(src_local_disk_file_path, URLForPath("dest/file"))); |
| EXPECT_EQ(1, change_observer()->create_file_count()); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| EXPECT_TRUE(FileExists("dest/file")); |
| int64 after_usage; |
| GetUsageAndQuota(&after_usage, NULL); |
| @@ -764,31 +827,25 @@ TEST_F(FileSystemOperationImplTest, TestCopyInForeignFileFailureByQuota) { |
| FileSystemURL dest_dir(CreateDirectory("dest")); |
| GrantQuotaForCurrentUsage(); |
| - operation_runner()->CopyInForeignFile(src_local_disk_file_path, |
| - URLForPath("dest/file"), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ( |
| + base::File::FILE_ERROR_NO_SPACE, |
| + CopyInForeignFile(src_local_disk_file_path, URLForPath("dest/file"))); |
| EXPECT_FALSE(FileExists("dest/file")); |
| EXPECT_EQ(0, change_observer()->create_file_count()); |
| - EXPECT_EQ(base::File::FILE_ERROR_NO_SPACE, status()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateFileFailure) { |
| // Already existing file and exclusive true. |
| FileSystemURL file(CreateFile("file")); |
| - operation_runner()->CreateFile(file, true, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_EXISTS, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_EXISTS, CreateFile(file, true)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateFileSuccessFileExists) { |
| // Already existing file and exclusive false. |
| FileSystemURL file(CreateFile("file")); |
| - operation_runner()->CreateFile(file, false, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, CreateFile(file, false)); |
| EXPECT_TRUE(FileExists("file")); |
| // The file was already there; did nothing. |
| @@ -797,98 +854,73 @@ TEST_F(FileSystemOperationImplTest, TestCreateFileSuccessFileExists) { |
| TEST_F(FileSystemOperationImplTest, TestCreateFileSuccessExclusive) { |
| // File doesn't exist but exclusive is true. |
| - operation_runner()->CreateFile(URLForPath("new"), true, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, CreateFile(URLForPath("new"), true)); |
| EXPECT_TRUE(FileExists("new")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_file_count()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateFileSuccessFileDoesntExist) { |
| // Non existing file. |
| - operation_runner()->CreateFile(URLForPath("nonexistent"), false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + CreateFile(URLForPath("nonexistent"), false)); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_file_count()); |
| } |
| TEST_F(FileSystemOperationImplTest, |
| TestCreateDirFailureDestParentDoesntExist) { |
| // Dest. parent path does not exist. |
| - operation_runner()->CreateDirectory( |
| - URLForPath("nonexistent/dir"), false, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + CreateDirectory(URLForPath("nonexistent/dir"), false, false)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateDirFailureDirExists) { |
| // Exclusive and dir existing at path. |
| FileSystemURL dir(CreateDirectory("dir")); |
| - operation_runner()->CreateDirectory(dir, true, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_EXISTS, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_EXISTS, |
| + CreateDirectory(dir, true, false)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateDirFailureFileExists) { |
| // Exclusive true and file existing at path. |
| FileSystemURL file(CreateFile("file")); |
| - operation_runner()->CreateDirectory(file, true, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_EXISTS, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_EXISTS, |
| + CreateDirectory(file, true, false)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateDirSuccess) { |
| // Dir exists and exclusive is false. |
| FileSystemURL dir(CreateDirectory("dir")); |
| - operation_runner()->CreateDirectory(dir, false, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, CreateDirectory(dir, false, false)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| // Dir doesn't exist. |
| - operation_runner()->CreateDirectory(URLForPath("new"), false, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + CreateDirectory(URLForPath("new"), false, false)); |
| EXPECT_TRUE(DirectoryExists("new")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_directory_count()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestCreateDirSuccessExclusive) { |
| // Dir doesn't exist. |
| - operation_runner()->CreateDirectory(URLForPath("new"), true, false, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + CreateDirectory(URLForPath("new"), true, false)); |
| EXPECT_TRUE(DirectoryExists("new")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_create_directory_count()); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestExistsAndMetadataFailure) { |
| - operation_runner()->GetMetadata(URLForPath("nonexistent"), |
| - RecordMetadataCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| - |
| - operation_runner()->FileExists(URLForPath("nonexistent"), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| - |
| - operation_runner()->DirectoryExists(URLForPath("nonexistent"), |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + GetMetadata(URLForPath("nonexistent"))); |
| + |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + FileExists(URLForPath("nonexistent"))); |
| + |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + DirectoryExists(URLForPath("nonexistent"))); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -897,25 +929,17 @@ TEST_F(FileSystemOperationImplTest, TestExistsAndMetadataSuccess) { |
| FileSystemURL file(CreateFile("dir/file")); |
| int read_access = 0; |
| - operation_runner()->DirectoryExists(dir, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, DirectoryExists(dir)); |
| ++read_access; |
| - operation_runner()->GetMetadata(dir, RecordMetadataCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, GetMetadata(dir)); |
| EXPECT_TRUE(info().is_directory); |
| ++read_access; |
| - operation_runner()->FileExists(file, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, FileExists(file)); |
| ++read_access; |
| - operation_runner()->GetMetadata(file, RecordMetadataCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, GetMetadata(file)); |
| EXPECT_FALSE(info().is_directory); |
| ++read_access; |
| @@ -926,28 +950,20 @@ TEST_F(FileSystemOperationImplTest, TestExistsAndMetadataSuccess) { |
| TEST_F(FileSystemOperationImplTest, TestTypeMismatchErrors) { |
| FileSystemURL dir(CreateDirectory("dir")); |
| - operation_runner()->FileExists(dir, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_A_FILE, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_A_FILE, FileExists(dir)); |
| FileSystemURL file(CreateFile("file")); |
| - operation_runner()->DirectoryExists(file, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_A_DIRECTORY, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_A_DIRECTORY, DirectoryExists(file)); |
| } |
| TEST_F(FileSystemOperationImplTest, TestReadDirFailure) { |
| // Path doesn't exist |
| - operation_runner()->ReadDirectory(URLForPath("nonexistent"), |
| - RecordReadDirectoryCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + ReadDirectory(URLForPath("nonexistent"))); |
| // File exists. |
| FileSystemURL file(CreateFile("file")); |
| - operation_runner()->ReadDirectory(file, RecordReadDirectoryCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_A_DIRECTORY, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_A_DIRECTORY, ReadDirectory(file)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| @@ -960,9 +976,7 @@ TEST_F(FileSystemOperationImplTest, TestReadDirSuccess) { |
| FileSystemURL child_dir(CreateDirectory("dir/child_dir")); |
| FileSystemURL child_file(CreateFile("dir/child_file")); |
| - operation_runner()->ReadDirectory(parent_dir, RecordReadDirectoryCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, ReadDirectory(parent_dir)); |
| EXPECT_EQ(2u, entries().size()); |
| for (size_t i = 0; i < entries().size(); ++i) { |
| @@ -977,10 +991,8 @@ TEST_F(FileSystemOperationImplTest, TestReadDirSuccess) { |
| TEST_F(FileSystemOperationImplTest, TestRemoveFailure) { |
| // Path doesn't exist. |
| - operation_runner()->Remove(URLForPath("nonexistent"), false /* recursive */, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
| + Remove(URLForPath("nonexistent"), false /* recursive */)); |
| // It's an error to try to remove a non-empty directory if recursive flag |
| // is false. |
| @@ -992,20 +1004,15 @@ TEST_F(FileSystemOperationImplTest, TestRemoveFailure) { |
| FileSystemURL child_dir(CreateDirectory("dir/child_dir")); |
| FileSystemURL child_file(CreateFile("dir/child_file")); |
| - operation_runner()->Remove(parent_dir, false /* recursive */, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NOT_EMPTY, |
| + Remove(parent_dir, false /* recursive */)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| } |
| TEST_F(FileSystemOperationImplTest, TestRemoveSuccess) { |
| FileSystemURL empty_dir(CreateDirectory("empty_dir")); |
| EXPECT_TRUE(DirectoryExists("empty_dir")); |
| - operation_runner()->Remove(empty_dir, false /* recursive */, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Remove(empty_dir, false /* recursive */)); |
| EXPECT_FALSE(DirectoryExists("empty_dir")); |
| EXPECT_EQ(1, change_observer()->get_and_reset_remove_directory_count()); |
| @@ -1028,10 +1035,7 @@ TEST_F(FileSystemOperationImplTest, TestRemoveSuccessRecursive) { |
| for (int i = 0; i < 8; ++i) |
| CreateFile(base::StringPrintf("dir/child_dir/file-%d", i)); |
| - operation_runner()->Remove(parent_dir, true /* recursive */, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Remove(parent_dir, true /* recursive */)); |
| EXPECT_FALSE(DirectoryExists("parent_dir")); |
| EXPECT_EQ(2, change_observer()->get_and_reset_remove_directory_count()); |
| @@ -1049,17 +1053,13 @@ TEST_F(FileSystemOperationImplTest, TestTruncate) { |
| base::WriteFile(platform_path, test_data, data_size)); |
| // Check that its length is the size of the data written. |
| - operation_runner()->GetMetadata(file, RecordMetadataCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, GetMetadata(file)); |
| EXPECT_FALSE(info().is_directory); |
| EXPECT_EQ(data_size, info().size); |
| // Extend the file by truncating it. |
| int length = 17; |
| - operation_runner()->Truncate(file, length, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(file, length)); |
| EXPECT_EQ(1, change_observer()->get_and_reset_modify_file_count()); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| @@ -1078,9 +1078,7 @@ TEST_F(FileSystemOperationImplTest, TestTruncate) { |
| // Shorten the file by truncating it. |
| length = 3; |
| - operation_runner()->Truncate(file, length, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(file, length)); |
| EXPECT_EQ(1, change_observer()->get_and_reset_modify_file_count()); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| @@ -1103,17 +1101,13 @@ TEST_F(FileSystemOperationImplTest, TestTruncateFailureByQuota) { |
| GrantQuotaForCurrentUsage(); |
| AddQuota(10); |
| - operation_runner()->Truncate(file, 10, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(file, 10)); |
| EXPECT_EQ(1, change_observer()->get_and_reset_modify_file_count()); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| EXPECT_EQ(10, GetFileSize("dir/file")); |
| - operation_runner()->Truncate(file, 11, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_ERROR_NO_SPACE, status()); |
| + EXPECT_EQ(base::File::FILE_ERROR_NO_SPACE, Truncate(file, 11)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| EXPECT_EQ(10, GetFileSize("dir/file")); |
| @@ -1136,10 +1130,8 @@ TEST_F(FileSystemOperationImplTest, TestTouchFile) { |
| ASSERT_NE(last_modified, new_modified_time); |
| ASSERT_NE(last_accessed, new_accessed_time); |
| - operation_runner()->TouchFile(file, new_accessed_time, new_modified_time, |
| - RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + TouchFile(file, new_accessed_time, new_modified_time)); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| EXPECT_TRUE(base::GetFileInfo(platform_path, &info)); |
| @@ -1154,19 +1146,15 @@ TEST_F(FileSystemOperationImplTest, TestCreateSnapshotFile) { |
| FileSystemURL dir(CreateDirectory("dir")); |
| // Create a file for the testing. |
| - operation_runner()->DirectoryExists(dir, RecordStatusCallback()); |
| + EXPECT_EQ(base::File::FILE_OK, DirectoryExists(dir)); |
| FileSystemURL file(CreateFile("dir/file")); |
| - operation_runner()->FileExists(file, RecordStatusCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, FileExists(file)); |
| // See if we can get a 'snapshot' file info for the file. |
| // Since FileSystemOperationImpl assumes the file exists in the local |
| // directory it should just returns the same metadata and platform_path |
| // as the file itself. |
| - operation_runner()->CreateSnapshotFile(file, RecordSnapshotFileCallback()); |
| - base::RunLoop().RunUntilIdle(); |
| - EXPECT_EQ(base::File::FILE_OK, status()); |
| + EXPECT_EQ(base::File::FILE_OK, CreateSnapshotFile(file)); |
| EXPECT_FALSE(info().is_directory); |
| EXPECT_EQ(PlatformPath("dir/file"), path()); |
| EXPECT_TRUE(change_observer()->HasNoChange()); |
| @@ -1191,28 +1179,17 @@ TEST_F(FileSystemOperationImplTest, |
| int total_path_cost = GetUsage(); |
| EXPECT_EQ(0, GetDataSizeOnDisk()); |
| - operation_runner()->Truncate( |
| - child_file1, 5000, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - child_file2, 400, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - grandchild_file1, 30, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - grandchild_file2, 2, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(child_file1, 5000)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(child_file2, 400)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(grandchild_file1, 30)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(grandchild_file2, 2)); |
| const int64 all_file_size = 5000 + 400 + 30 + 2; |
| EXPECT_EQ(all_file_size, GetDataSizeOnDisk()); |
| EXPECT_EQ(all_file_size + total_path_cost, GetUsage()); |
| - operation_runner()->Move( |
| - src, dest, FileSystemOperation::OPTION_NONE, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Move(src, dest, FileSystemOperation::OPTION_NONE)); |
| EXPECT_FALSE(DirectoryExists("src/dir")); |
| EXPECT_FALSE(FileExists("src/dir/file2")); |
| @@ -1244,19 +1221,10 @@ TEST_F(FileSystemOperationImplTest, |
| EXPECT_EQ(0, GetDataSizeOnDisk()); |
| - operation_runner()->Truncate( |
| - child_file1, 8000, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - child_file2, 700, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - grandchild_file1, 60, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - operation_runner()->Truncate( |
| - grandchild_file2, 5, |
| - base::Bind(&AssertFileErrorEq, FROM_HERE, base::File::FILE_OK)); |
| - base::RunLoop().RunUntilIdle(); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(child_file1, 8000)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(child_file2, 700)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(grandchild_file1, 60)); |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(grandchild_file2, 5)); |
| const int64 child_file_size = 8000 + 700; |
| const int64 grandchild_file_size = 60 + 5; |
| @@ -1267,19 +1235,8 @@ TEST_F(FileSystemOperationImplTest, |
| EXPECT_EQ(all_file_size, GetDataSizeOnDisk()); |
| EXPECT_EQ(expected_usage, usage); |
| - { |
| - base::RunLoop run_loop; |
| - // Copy src to dest1. |
| - operation_runner()->Copy(src, |
| - dest1, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - base::Bind(&AssertFileErrorEqWithClosure, |
| - FROM_HERE, |
| - base::File::FILE_OK, |
| - run_loop.QuitClosure())); |
| - run_loop.Run(); |
| - } |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src, dest1, FileSystemOperation::OPTION_NONE)); |
| expected_usage += all_file_size + child_path_cost + grandchild_path_cost; |
| EXPECT_TRUE(DirectoryExists("src/dir")); |
| @@ -1290,19 +1247,8 @@ TEST_F(FileSystemOperationImplTest, |
| EXPECT_EQ(2 * all_file_size, GetDataSizeOnDisk()); |
| EXPECT_EQ(expected_usage, GetUsage()); |
| - { |
| - base::RunLoop run_loop; |
| - // Copy src/dir to dest2. |
| - operation_runner()->Copy(child_dir, |
| - dest2, |
| - FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - base::Bind(&AssertFileErrorEqWithClosure, |
| - FROM_HERE, |
| - base::File::FILE_OK, |
| - run_loop.QuitClosure())); |
| - run_loop.Run(); |
| - } |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(child_dir, dest2, FileSystemOperation::OPTION_NONE)); |
| expected_usage += grandchild_file_size + grandchild_path_cost; |
| usage = GetUsage(); |
| @@ -1316,28 +1262,9 @@ TEST_F(FileSystemOperationImplTest, |
| FileSystemURL src_file(CreateFile("src")); |
| FileSystemURL dest_file(CreateFile("dest")); |
| - { |
| - base::RunLoop run_loop; |
| - operation_runner()->Truncate( |
| - dest_file, 6, |
| - base::Bind(&AssertFileErrorEqWithClosure, |
| - FROM_HERE, |
| - base::File::FILE_OK, |
| - run_loop.QuitClosure())); |
| - run_loop.Run(); |
| - } |
| - |
| - { |
| - base::RunLoop run_loop; |
| - operation_runner()->Copy( |
| - src_file, dest_file, FileSystemOperation::OPTION_NONE, |
| - FileSystemOperationRunner::CopyProgressCallback(), |
| - base::Bind(&AssertFileErrorEqWithClosure, |
| - FROM_HERE, |
| - base::File::FILE_OK, |
| - run_loop.QuitClosure())); |
| - run_loop.Run(); |
| - } |
| + EXPECT_EQ(base::File::FILE_OK, Truncate(dest_file, 6)); |
| + EXPECT_EQ(base::File::FILE_OK, |
| + Copy(src_file, dest_file, FileSystemOperation::OPTION_NONE)); |
| EXPECT_EQ(0, GetFileSize("dest")); |
| } |