Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1223)

Side by Side Diff: webkit/fileapi/file_writer_delegate_unittest.cc

Issue 7433006: Pepper quota support (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: updated Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // NOTE: These tests are run as part of "unit_tests" (in chrome/test/unit) 5 // NOTE: These tests are run as part of "unit_tests" (in chrome/test/unit)
6 // rather than as part of test_shell_tests because they rely on being able 6 // rather than as part of test_shell_tests because they rely on being able
7 // to instantiate a MessageLoop of type TYPE_IO. test_shell_tests uses 7 // to instantiate a MessageLoop of type TYPE_IO. test_shell_tests uses
8 // TYPE_UI, which URLRequest doesn't allow. 8 // TYPE_UI, which URLRequest doesn't allow.
9 // 9 //
10 10
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 &created, &error_code); 104 &created, &error_code);
105 ASSERT_EQ(base::PLATFORM_FILE_OK, error_code); 105 ASSERT_EQ(base::PLATFORM_FILE_OK, error_code);
106 106
107 result_.reset(new Result()); 107 result_.reset(new Result());
108 file_writer_delegate_.reset(new FileWriterDelegate( 108 file_writer_delegate_.reset(new FileWriterDelegate(
109 CreateNewOperation(result_.get(), allowed_growth), 109 CreateNewOperation(result_.get(), allowed_growth),
110 offset, base::MessageLoopProxy::CreateForCurrentThread())); 110 offset, base::MessageLoopProxy::CreateForCurrentThread()));
111 request_.reset(new net::URLRequest(blob_url, file_writer_delegate_.get())); 111 request_.reset(new net::URLRequest(blob_url, file_writer_delegate_.get()));
112 } 112 }
113 113
114 int64 GetFileSize() {
115 base::PlatformFileInfo info;
116 bool result = base::GetPlatformFileInfo(file_, &info);
117 EXPECT_EQ(base::PLATFORM_FILE_OK, result);
118 return info.size;
119 }
120
114 FileSystemOperation* CreateNewOperation(Result* result, int64 quota); 121 FileSystemOperation* CreateNewOperation(Result* result, int64 quota);
115 122
116 static net::URLRequest::ProtocolFactory Factory; 123 static net::URLRequest::ProtocolFactory Factory;
117 124
118 scoped_ptr<FileWriterDelegate> file_writer_delegate_; 125 scoped_ptr<FileWriterDelegate> file_writer_delegate_;
119 scoped_ptr<net::URLRequest> request_; 126 scoped_ptr<net::URLRequest> request_;
120 scoped_ptr<Result> result_; 127 scoped_ptr<Result> result_;
121 FileSystemTestOriginHelper test_helper_; 128 FileSystemTestOriginHelper test_helper_;
122 129
123 MessageLoop loop_; 130 MessageLoop loop_;
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 } 249 }
243 250
244 TEST_F(FileWriterDelegateTest, WriteSuccessWithoutQuotaLimit) { 251 TEST_F(FileWriterDelegateTest, WriteSuccessWithoutQuotaLimit) {
245 const GURL kBlobURL("blob:nolimit"); 252 const GURL kBlobURL("blob:nolimit");
246 content_ = kData; 253 content_ = kData;
247 254
248 PrepareForWrite(kBlobURL, 0, QuotaFileUtil::kNoLimit); 255 PrepareForWrite(kBlobURL, 0, QuotaFileUtil::kNoLimit);
249 256
250 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 257 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
251 test_helper_.GetCachedOriginUsage()); 258 test_helper_.GetCachedOriginUsage());
252 file_writer_delegate_->Start(file_, request_.get()); 259 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
253 MessageLoop::current()->Run(); 260 MessageLoop::current()->Run();
254 ASSERT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize, 261 ASSERT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize,
255 test_helper_.GetCachedOriginUsage()); 262 test_helper_.GetCachedOriginUsage());
256 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 263 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
257 test_helper_.GetCachedOriginUsage()); 264 test_helper_.GetCachedOriginUsage());
258 265
259 EXPECT_EQ(kDataSize, result_->bytes_written()); 266 EXPECT_EQ(kDataSize, result_->bytes_written());
260 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 267 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
261 EXPECT_TRUE(result_->complete()); 268 EXPECT_TRUE(result_->complete());
262 269
263 file_writer_delegate_.reset(); 270 file_writer_delegate_.reset();
264 } 271 }
265 272
266 TEST_F(FileWriterDelegateTest, WriteSuccessWithJustQuota) { 273 TEST_F(FileWriterDelegateTest, WriteSuccessWithJustQuota) {
267 const GURL kBlobURL("blob:just"); 274 const GURL kBlobURL("blob:just");
268 content_ = kData; 275 content_ = kData;
269 const int64 kAllowedGrowth = kDataSize; 276 const int64 kAllowedGrowth = kDataSize;
270 PrepareForWrite(kBlobURL, 0, kAllowedGrowth); 277 PrepareForWrite(kBlobURL, 0, kAllowedGrowth);
271 278
272 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 279 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
273 test_helper_.GetCachedOriginUsage()); 280 test_helper_.GetCachedOriginUsage());
274 file_writer_delegate_->Start(file_, request_.get()); 281 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
275 MessageLoop::current()->Run(); 282 MessageLoop::current()->Run();
276 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize, 283 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize,
277 test_helper_.GetCachedOriginUsage()); 284 test_helper_.GetCachedOriginUsage());
278 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 285 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
279 test_helper_.GetCachedOriginUsage()); 286 test_helper_.GetCachedOriginUsage());
280 287
281 file_writer_delegate_.reset(); 288 file_writer_delegate_.reset();
282 289
283 EXPECT_EQ(kAllowedGrowth, result_->bytes_written()); 290 EXPECT_EQ(kAllowedGrowth, result_->bytes_written());
284 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 291 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
285 EXPECT_TRUE(result_->complete()); 292 EXPECT_TRUE(result_->complete());
286 } 293 }
287 294
288 TEST_F(FileWriterDelegateTest, WriteFailureByQuota) { 295 TEST_F(FileWriterDelegateTest, WriteFailureByQuota) {
289 const GURL kBlobURL("blob:failure"); 296 const GURL kBlobURL("blob:failure");
290 content_ = kData; 297 content_ = kData;
291 const int64 kAllowedGrowth = kDataSize - 1; 298 const int64 kAllowedGrowth = kDataSize - 1;
292 PrepareForWrite(kBlobURL, 0, kAllowedGrowth); 299 PrepareForWrite(kBlobURL, 0, kAllowedGrowth);
293 300
294 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 301 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
295 test_helper_.GetCachedOriginUsage()); 302 test_helper_.GetCachedOriginUsage());
296 file_writer_delegate_->Start(file_, request_.get()); 303 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
297 MessageLoop::current()->Run(); 304 MessageLoop::current()->Run();
298 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize, 305 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize,
299 test_helper_.GetCachedOriginUsage()); 306 test_helper_.GetCachedOriginUsage());
300 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 307 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
301 test_helper_.GetCachedOriginUsage()); 308 test_helper_.GetCachedOriginUsage());
302 309
303 file_writer_delegate_.reset(); 310 file_writer_delegate_.reset();
304 311
305 EXPECT_EQ(kAllowedGrowth, result_->bytes_written()); 312 EXPECT_EQ(kAllowedGrowth, result_->bytes_written());
306 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NO_SPACE, result_->status()); 313 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NO_SPACE, result_->status());
307 EXPECT_TRUE(result_->complete()); 314 EXPECT_TRUE(result_->complete());
308 } 315 }
309 316
310 TEST_F(FileWriterDelegateTest, WriteZeroBytesSuccessfullyWithZeroQuota) { 317 TEST_F(FileWriterDelegateTest, WriteZeroBytesSuccessfullyWithZeroQuota) {
311 const GURL kBlobURL("blob:zero"); 318 const GURL kBlobURL("blob:zero");
312 content_ = ""; 319 content_ = "";
313 int64 kAllowedGrowth = 0; 320 int64 kAllowedGrowth = 0;
314 PrepareForWrite(kBlobURL, 0, kAllowedGrowth); 321 PrepareForWrite(kBlobURL, 0, kAllowedGrowth);
315 322
316 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 323 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
317 test_helper_.GetCachedOriginUsage()); 324 test_helper_.GetCachedOriginUsage());
318 file_writer_delegate_->Start(file_, request_.get()); 325 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
319 MessageLoop::current()->Run(); 326 MessageLoop::current()->Run();
320 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize, 327 ASSERT_EQ(kAllowedGrowth + FileSystemUsageCache::kUsageFileSize,
321 test_helper_.GetCachedOriginUsage()); 328 test_helper_.GetCachedOriginUsage());
322 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 329 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
323 test_helper_.GetCachedOriginUsage()); 330 test_helper_.GetCachedOriginUsage());
324 331
325 file_writer_delegate_.reset(); 332 file_writer_delegate_.reset();
326 333
327 EXPECT_EQ(kAllowedGrowth, result_->bytes_written()); 334 EXPECT_EQ(kAllowedGrowth, result_->bytes_written());
328 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 335 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
(...skipping 26 matching lines...) Expand all
355 362
356 // Credate another FileWriterDelegate for concurrent write. 363 // Credate another FileWriterDelegate for concurrent write.
357 result2.reset(new Result()); 364 result2.reset(new Result());
358 file_writer_delegate2.reset(new FileWriterDelegate( 365 file_writer_delegate2.reset(new FileWriterDelegate(
359 CreateNewOperation(result2.get(), QuotaFileUtil::kNoLimit), 366 CreateNewOperation(result2.get(), QuotaFileUtil::kNoLimit),
360 0, base::MessageLoopProxy::CreateForCurrentThread())); 367 0, base::MessageLoopProxy::CreateForCurrentThread()));
361 request2.reset(new net::URLRequest(kBlobURL2, file_writer_delegate2.get())); 368 request2.reset(new net::URLRequest(kBlobURL2, file_writer_delegate2.get()));
362 369
363 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 370 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
364 test_helper_.GetCachedOriginUsage()); 371 test_helper_.GetCachedOriginUsage());
365 file_writer_delegate_->Start(file_, request_.get()); 372 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
366 file_writer_delegate2->Start(file2, request2.get()); 373 file_writer_delegate2->Start(file2, GetFileSize(), request2.get());
367 MessageLoop::current()->Run(); 374 MessageLoop::current()->Run();
368 if (!result_->complete() || !result2->complete()) 375 if (!result_->complete() || !result2->complete())
369 MessageLoop::current()->Run(); 376 MessageLoop::current()->Run();
370 377
371 ASSERT_EQ(kDataSize * 2 + FileSystemUsageCache::kUsageFileSize, 378 ASSERT_EQ(kDataSize * 2 + FileSystemUsageCache::kUsageFileSize,
372 test_helper_.GetCachedOriginUsage()); 379 test_helper_.GetCachedOriginUsage());
373 base::FlushPlatformFile(file2); 380 base::FlushPlatformFile(file2);
374 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 381 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
375 test_helper_.GetCachedOriginUsage()); 382 test_helper_.GetCachedOriginUsage());
376 383
(...skipping 14 matching lines...) Expand all
391 content_ = kData; 398 content_ = kData;
392 399
393 // Writing kDataSize (=45) bytes data while allowed_growth is 100. 400 // Writing kDataSize (=45) bytes data while allowed_growth is 100.
394 int64 offset = 0; 401 int64 offset = 0;
395 int64 allowed_growth = 100; 402 int64 allowed_growth = 100;
396 ASSERT_LT(kDataSize, allowed_growth); 403 ASSERT_LT(kDataSize, allowed_growth);
397 PrepareForWrite(kBlobURL, offset, allowed_growth); 404 PrepareForWrite(kBlobURL, offset, allowed_growth);
398 405
399 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize, 406 ASSERT_EQ(FileSystemUsageCache::kUsageFileSize,
400 test_helper_.GetCachedOriginUsage()); 407 test_helper_.GetCachedOriginUsage());
401 file_writer_delegate_->Start(file_, request_.get()); 408 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
402 MessageLoop::current()->Run(); 409 MessageLoop::current()->Run();
403 ASSERT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize, 410 ASSERT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize,
404 test_helper_.GetCachedOriginUsage()); 411 test_helper_.GetCachedOriginUsage());
405 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 412 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
406 test_helper_.GetCachedOriginUsage()); 413 test_helper_.GetCachedOriginUsage());
407 EXPECT_EQ(kDataSize, result_->bytes_written()); 414 EXPECT_EQ(kDataSize, result_->bytes_written());
408 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 415 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
409 EXPECT_TRUE(result_->complete()); 416 EXPECT_TRUE(result_->complete());
410 417
411 // Trying to overwrite kDataSize bytes data while allowed_growth is 20. 418 // Trying to overwrite kDataSize bytes data while allowed_growth is 20.
412 offset = 0; 419 offset = 0;
413 allowed_growth = 20; 420 allowed_growth = 20;
414 PrepareForWrite(kBlobURL, offset, allowed_growth); 421 PrepareForWrite(kBlobURL, offset, allowed_growth);
415 422
416 file_writer_delegate_->Start(file_, request_.get()); 423 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
417 MessageLoop::current()->Run(); 424 MessageLoop::current()->Run();
418 EXPECT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize, 425 EXPECT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize,
419 test_helper_.GetCachedOriginUsage()); 426 test_helper_.GetCachedOriginUsage());
420 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 427 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
421 test_helper_.GetCachedOriginUsage()); 428 test_helper_.GetCachedOriginUsage());
422 EXPECT_EQ(kDataSize, result_->bytes_written()); 429 EXPECT_EQ(kDataSize, result_->bytes_written());
423 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 430 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
424 EXPECT_TRUE(result_->complete()); 431 EXPECT_TRUE(result_->complete());
425 432
426 // Trying to write kDataSize bytes data from offset 25 while 433 // Trying to write kDataSize bytes data from offset 25 while
427 // allowed_growth is 55. 434 // allowed_growth is 55.
428 offset = 25; 435 offset = 25;
429 allowed_growth = 55; 436 allowed_growth = 55;
430 PrepareForWrite(kBlobURL, offset, allowed_growth); 437 PrepareForWrite(kBlobURL, offset, allowed_growth);
431 438
432 file_writer_delegate_->Start(file_, request_.get()); 439 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
433 MessageLoop::current()->Run(); 440 MessageLoop::current()->Run();
434 EXPECT_EQ(offset + kDataSize + FileSystemUsageCache::kUsageFileSize, 441 EXPECT_EQ(offset + kDataSize + FileSystemUsageCache::kUsageFileSize,
435 test_helper_.GetCachedOriginUsage()); 442 test_helper_.GetCachedOriginUsage());
436 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 443 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
437 test_helper_.GetCachedOriginUsage()); 444 test_helper_.GetCachedOriginUsage());
438 EXPECT_EQ(kDataSize, result_->bytes_written()); 445 EXPECT_EQ(kDataSize, result_->bytes_written());
439 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 446 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
440 EXPECT_TRUE(result_->complete()); 447 EXPECT_TRUE(result_->complete());
441 448
442 // Trying to overwrite 45 bytes data while allowed_growth is -20. 449 // Trying to overwrite 45 bytes data while allowed_growth is -20.
443 offset = 0; 450 offset = 0;
444 allowed_growth = -20; 451 allowed_growth = -20;
445 PrepareForWrite(kBlobURL, offset, allowed_growth); 452 PrepareForWrite(kBlobURL, offset, allowed_growth);
446 453
447 int64 pre_write_usage = ComputeCurrentOriginUsage(); 454 int64 pre_write_usage = ComputeCurrentOriginUsage();
448 file_writer_delegate_->Start(file_, request_.get()); 455 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
449 MessageLoop::current()->Run(); 456 MessageLoop::current()->Run();
450 EXPECT_EQ(pre_write_usage + FileSystemUsageCache::kUsageFileSize, 457 EXPECT_EQ(pre_write_usage + FileSystemUsageCache::kUsageFileSize,
451 test_helper_.GetCachedOriginUsage()); 458 test_helper_.GetCachedOriginUsage());
452 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 459 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
453 test_helper_.GetCachedOriginUsage()); 460 test_helper_.GetCachedOriginUsage());
454 EXPECT_EQ(kDataSize, result_->bytes_written()); 461 EXPECT_EQ(kDataSize, result_->bytes_written());
455 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 462 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
456 EXPECT_TRUE(result_->complete()); 463 EXPECT_TRUE(result_->complete());
457 464
458 // Trying to overwrite 45 bytes data with offset pre_write_usage - 20, 465 // Trying to overwrite 45 bytes data with offset pre_write_usage - 20,
459 // while allowed_growth is 10. 466 // while allowed_growth is 10.
460 const int kOverlap = 20; 467 const int kOverlap = 20;
461 offset = pre_write_usage - kOverlap; 468 offset = pre_write_usage - kOverlap;
462 allowed_growth = 10; 469 allowed_growth = 10;
463 PrepareForWrite(kBlobURL, offset, allowed_growth); 470 PrepareForWrite(kBlobURL, offset, allowed_growth);
464 471
465 file_writer_delegate_->Start(file_, request_.get()); 472 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
466 MessageLoop::current()->Run(); 473 MessageLoop::current()->Run();
467 EXPECT_EQ(pre_write_usage + allowed_growth + 474 EXPECT_EQ(pre_write_usage + allowed_growth +
468 FileSystemUsageCache::kUsageFileSize, 475 FileSystemUsageCache::kUsageFileSize,
469 test_helper_.GetCachedOriginUsage()); 476 test_helper_.GetCachedOriginUsage());
470 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 477 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
471 test_helper_.GetCachedOriginUsage()); 478 test_helper_.GetCachedOriginUsage());
472 EXPECT_EQ(kOverlap + allowed_growth, result_->bytes_written()); 479 EXPECT_EQ(kOverlap + allowed_growth, result_->bytes_written());
473 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NO_SPACE, result_->status()); 480 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NO_SPACE, result_->status());
474 EXPECT_TRUE(result_->complete()); 481 EXPECT_TRUE(result_->complete());
475 } 482 }
(...skipping 13 matching lines...) Expand all
489 } 496 }
490 497
491 TEST_F(FileWriterDelegateUnlimitedTest, WriteWithQuota) { 498 TEST_F(FileWriterDelegateUnlimitedTest, WriteWithQuota) {
492 const GURL kBlobURL("blob:with-unlimited"); 499 const GURL kBlobURL("blob:with-unlimited");
493 content_ = kData; 500 content_ = kData;
494 501
495 // Set small allowed_growth bytes 502 // Set small allowed_growth bytes
496 PrepareForWrite(kBlobURL, 0, 10); 503 PrepareForWrite(kBlobURL, 0, 10);
497 504
498 // We shouldn't fail as the context is configured as 'unlimited'. 505 // We shouldn't fail as the context is configured as 'unlimited'.
499 file_writer_delegate_->Start(file_, request_.get()); 506 file_writer_delegate_->Start(file_, GetFileSize(), request_.get());
500 MessageLoop::current()->Run(); 507 MessageLoop::current()->Run();
501 EXPECT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize, 508 EXPECT_EQ(kDataSize + FileSystemUsageCache::kUsageFileSize,
502 test_helper_.GetCachedOriginUsage()); 509 test_helper_.GetCachedOriginUsage());
503 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize, 510 EXPECT_EQ(ComputeCurrentOriginUsage() + FileSystemUsageCache::kUsageFileSize,
504 test_helper_.GetCachedOriginUsage()); 511 test_helper_.GetCachedOriginUsage());
505 EXPECT_EQ(kDataSize, result_->bytes_written()); 512 EXPECT_EQ(kDataSize, result_->bytes_written());
506 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status()); 513 EXPECT_EQ(base::PLATFORM_FILE_OK, result_->status());
507 EXPECT_TRUE(result_->complete()); 514 EXPECT_TRUE(result_->complete());
508 } 515 }
509 516
510 } // namespace fileapi 517 } // namespace fileapi
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698