| Index: webkit/fileapi/file_writer_delegate_unittest.cc
|
| diff --git a/webkit/fileapi/file_writer_delegate_unittest.cc b/webkit/fileapi/file_writer_delegate_unittest.cc
|
| index edce01702673d509043b223945226b651a3eba61..06176adc19c3bc5eb2bf82819313eaea3c10131e 100644
|
| --- a/webkit/fileapi/file_writer_delegate_unittest.cc
|
| +++ b/webkit/fileapi/file_writer_delegate_unittest.cc
|
| @@ -31,26 +31,23 @@ class Result {
|
| Result()
|
| : status_(base::PLATFORM_FILE_OK),
|
| bytes_written_(0),
|
| - complete_(false) {}
|
| + write_status_(FileWriterDelegate::SUCCESS_IO_PENDING) {}
|
|
|
| base::PlatformFileError status() const { return status_; }
|
| - void add_bytes_written(int64 bytes, bool complete) {
|
| - bytes_written_ += bytes;
|
| - EXPECT_FALSE(complete_);
|
| - complete_ = complete;
|
| - }
|
| int64 bytes_written() const { return bytes_written_; }
|
| - bool complete() const { return complete_; }
|
| + FileWriterDelegate::WriteProgressStatus write_status() const {
|
| + return write_status_;
|
| + }
|
|
|
| - void DidWrite(base::PlatformFileError status, int64 bytes, bool complete) {
|
| + void DidWrite(base::PlatformFileError status, int64 bytes,
|
| + FileWriterDelegate::WriteProgressStatus write_status) {
|
| + write_status_ = write_status;
|
| if (status == base::PLATFORM_FILE_OK) {
|
| - add_bytes_written(bytes, complete);
|
| - if (complete)
|
| + bytes_written_ += bytes;
|
| + if (write_status_ != FileWriterDelegate::SUCCESS_IO_PENDING)
|
| MessageLoop::current()->Quit();
|
| } else {
|
| - EXPECT_FALSE(complete_);
|
| - EXPECT_EQ(status_, base::PLATFORM_FILE_OK);
|
| - complete_ = true;
|
| + EXPECT_EQ(base::PLATFORM_FILE_OK, status_);
|
| status_ = status;
|
| MessageLoop::current()->Quit();
|
| }
|
| @@ -60,7 +57,7 @@ class Result {
|
| // For post-operation status.
|
| base::PlatformFileError status_;
|
| int64 bytes_written_;
|
| - bool complete_;
|
| + FileWriterDelegate::WriteProgressStatus write_status_;
|
| };
|
|
|
| const char kData[] = "The quick brown fox jumps over the lazy dog.\n";
|
| @@ -237,7 +234,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WriteSuccessWithoutQuotaLimit) {
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
|
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| ASSERT_EQ(kDataSize, test_helper_.GetCachedOriginUsage());
|
| @@ -263,7 +260,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WriteSuccessWithJustQuota) {
|
| ASSERT_EQ(0, test_helper_.GetCachedOriginUsage());
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| ASSERT_EQ(kAllowedGrowth, test_helper_.GetCachedOriginUsage());
|
| @@ -282,7 +279,7 @@ TEST_F(FileWriterDelegateTest, DISABLED_WriteFailureByQuota) {
|
| ASSERT_EQ(0, test_helper_.GetCachedOriginUsage());
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::ERROR_WRITE_STARTED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| ASSERT_EQ(kAllowedGrowth, test_helper_.GetCachedOriginUsage());
|
| @@ -290,7 +287,7 @@ TEST_F(FileWriterDelegateTest, DISABLED_WriteFailureByQuota) {
|
|
|
| EXPECT_EQ(kAllowedGrowth, result_->bytes_written());
|
| EXPECT_EQ(base::PLATFORM_FILE_ERROR_NO_SPACE, result_->status());
|
| - EXPECT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::ERROR_WRITE_STARTED, result_->write_status());
|
| }
|
|
|
| TEST_F(FileWriterDelegateTest, WriteZeroBytesSuccessfullyWithZeroQuota) {
|
| @@ -302,7 +299,7 @@ TEST_F(FileWriterDelegateTest, WriteZeroBytesSuccessfullyWithZeroQuota) {
|
| ASSERT_EQ(0, test_helper_.GetCachedOriginUsage());
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| ASSERT_EQ(kAllowedGrowth, test_helper_.GetCachedOriginUsage());
|
| @@ -310,7 +307,7 @@ TEST_F(FileWriterDelegateTest, WriteZeroBytesSuccessfullyWithZeroQuota) {
|
|
|
| EXPECT_EQ(kAllowedGrowth, result_->bytes_written());
|
| EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
|
| - EXPECT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| }
|
|
|
| #if defined(OS_WIN)
|
| @@ -352,11 +349,12 @@ TEST_F(FileWriterDelegateTest, MAYBE_WriteSuccessWithoutQuotaLimitConcurrent) {
|
| file_writer_delegate_->Start(request_.Pass());
|
| file_writer_delegate2->Start(request2.Pass());
|
| MessageLoop::current()->Run();
|
| - if (!result_->complete() || !result2->complete())
|
| + if (result_->write_status() == FileWriterDelegate::SUCCESS_IO_PENDING ||
|
| + result2->write_status() == FileWriterDelegate::SUCCESS_IO_PENDING)
|
| MessageLoop::current()->Run();
|
|
|
| - ASSERT_TRUE(result_->complete());
|
| - ASSERT_TRUE(result2->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result2->write_status());
|
| file_writer_delegate_.reset();
|
| file_writer_delegate2.reset();
|
|
|
| @@ -391,7 +389,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WritesWithQuotaAndOffset) {
|
| ASSERT_EQ(0, test_helper_.GetCachedOriginUsage());
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| ASSERT_EQ(kDataSize, test_helper_.GetCachedOriginUsage());
|
| @@ -410,7 +408,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WritesWithQuotaAndOffset) {
|
| EXPECT_EQ(ComputeCurrentOriginUsage(), test_helper_.GetCachedOriginUsage());
|
| EXPECT_EQ(kDataSize, result_->bytes_written());
|
| EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
|
| - EXPECT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
|
|
| // Trying to write kDataSize bytes data from offset 25 while
|
| // allowed_growth is 55.
|
| @@ -420,7 +418,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WritesWithQuotaAndOffset) {
|
|
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| EXPECT_EQ(offset + kDataSize, test_helper_.GetCachedOriginUsage());
|
| @@ -436,7 +434,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WritesWithQuotaAndOffset) {
|
| int64 pre_write_usage = ComputeCurrentOriginUsage();
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::SUCCESS_COMPLETED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| EXPECT_EQ(pre_write_usage, test_helper_.GetCachedOriginUsage());
|
| @@ -453,7 +451,7 @@ TEST_F(FileWriterDelegateTest, MAYBE_WritesWithQuotaAndOffset) {
|
|
|
| file_writer_delegate_->Start(request_.Pass());
|
| MessageLoop::current()->Run();
|
| - ASSERT_TRUE(result_->complete());
|
| + ASSERT_EQ(FileWriterDelegate::ERROR_WRITE_STARTED, result_->write_status());
|
| file_writer_delegate_.reset();
|
|
|
| EXPECT_EQ(pre_write_usage + allowed_growth,
|
|
|