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

Side by Side Diff: chrome/browser/drive/drive_uploader_unittest.cc

Issue 17948002: Update Linux to use scoped_refptr<T>::get() rather than implicit "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "chrome/browser/drive/drive_uploader.h" 5 #include "chrome/browser/drive/drive_uploader.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 base::FilePath local_path; 307 base::FilePath local_path;
308 std::string data; 308 std::string data;
309 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 309 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
310 temp_dir_.path(), 0, &local_path, &data)); 310 temp_dir_.path(), 0, &local_path, &data));
311 311
312 GDataErrorCode error = GDATA_OTHER_ERROR; 312 GDataErrorCode error = GDATA_OTHER_ERROR;
313 GURL upload_location; 313 GURL upload_location;
314 scoped_ptr<ResourceEntry> resource_entry; 314 scoped_ptr<ResourceEntry> resource_entry;
315 315
316 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size()); 316 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size());
317 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 317 DriveUploader uploader(&mock_service,
318 base::MessageLoopProxy::current().get());
318 std::vector<test_util::ProgressInfo> upload_progress_values; 319 std::vector<test_util::ProgressInfo> upload_progress_values;
319 uploader.UploadExistingFile( 320 uploader.UploadExistingFile(
320 kTestInitiateUploadResourceId, 321 kTestInitiateUploadResourceId,
321 local_path, 322 local_path,
322 kTestMimeType, 323 kTestMimeType,
323 std::string(), // etag 324 std::string(), // etag
324 test_util::CreateCopyResultCallback( 325 test_util::CreateCopyResultCallback(
325 &error, &upload_location, &resource_entry), 326 &error, &upload_location, &resource_entry),
326 base::Bind(&test_util::AppendProgressCallbackResult, 327 base::Bind(&test_util::AppendProgressCallbackResult,
327 &upload_progress_values)); 328 &upload_progress_values));
(...skipping 13 matching lines...) Expand all
341 base::FilePath local_path; 342 base::FilePath local_path;
342 std::string data; 343 std::string data;
343 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 344 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
344 temp_dir_.path(), 512 * 1024, &local_path, &data)); 345 temp_dir_.path(), 512 * 1024, &local_path, &data));
345 346
346 GDataErrorCode error = GDATA_OTHER_ERROR; 347 GDataErrorCode error = GDATA_OTHER_ERROR;
347 GURL upload_location; 348 GURL upload_location;
348 scoped_ptr<ResourceEntry> resource_entry; 349 scoped_ptr<ResourceEntry> resource_entry;
349 350
350 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size()); 351 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size());
351 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 352 DriveUploader uploader(&mock_service,
353 base::MessageLoopProxy::current().get());
352 std::vector<test_util::ProgressInfo> upload_progress_values; 354 std::vector<test_util::ProgressInfo> upload_progress_values;
353 uploader.UploadExistingFile( 355 uploader.UploadExistingFile(
354 kTestInitiateUploadResourceId, 356 kTestInitiateUploadResourceId,
355 local_path, 357 local_path,
356 kTestMimeType, 358 kTestMimeType,
357 std::string(), // etag 359 std::string(), // etag
358 test_util::CreateCopyResultCallback( 360 test_util::CreateCopyResultCallback(
359 &error, &upload_location, &resource_entry), 361 &error, &upload_location, &resource_entry),
360 base::Bind(&test_util::AppendProgressCallbackResult, 362 base::Bind(&test_util::AppendProgressCallbackResult,
361 &upload_progress_values)); 363 &upload_progress_values));
(...skipping 15 matching lines...) Expand all
377 base::FilePath local_path; 379 base::FilePath local_path;
378 std::string data; 380 std::string data;
379 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 381 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
380 temp_dir_.path(), 512 * 1024, &local_path, &data)); 382 temp_dir_.path(), 512 * 1024, &local_path, &data));
381 383
382 GDataErrorCode error = HTTP_SUCCESS; 384 GDataErrorCode error = HTTP_SUCCESS;
383 GURL upload_location; 385 GURL upload_location;
384 scoped_ptr<ResourceEntry> resource_entry; 386 scoped_ptr<ResourceEntry> resource_entry;
385 387
386 MockDriveServiceNoConnectionAtInitiate mock_service; 388 MockDriveServiceNoConnectionAtInitiate mock_service;
387 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 389 DriveUploader uploader(&mock_service,
388 uploader.UploadExistingFile( 390 base::MessageLoopProxy::current().get());
389 kTestInitiateUploadResourceId, 391 uploader.UploadExistingFile(kTestInitiateUploadResourceId,
390 local_path, 392 local_path,
391 kTestMimeType, 393 kTestMimeType,
392 std::string(), // etag 394 std::string(), // etag
393 test_util::CreateCopyResultCallback( 395 test_util::CreateCopyResultCallback(
394 &error, &upload_location, &resource_entry), 396 &error, &upload_location, &resource_entry),
395 google_apis::ProgressCallback()); 397 google_apis::ProgressCallback());
396 base::RunLoop().RunUntilIdle(); 398 base::RunLoop().RunUntilIdle();
397 399
398 EXPECT_EQ(GDATA_NO_CONNECTION, error); 400 EXPECT_EQ(GDATA_NO_CONNECTION, error);
399 EXPECT_TRUE(upload_location.is_empty()); 401 EXPECT_TRUE(upload_location.is_empty());
400 EXPECT_FALSE(resource_entry); 402 EXPECT_FALSE(resource_entry);
401 } 403 }
402 404
403 TEST_F(DriveUploaderTest, InitiateUploadNoConflict) { 405 TEST_F(DriveUploaderTest, InitiateUploadNoConflict) {
404 base::FilePath local_path; 406 base::FilePath local_path;
405 std::string data; 407 std::string data;
406 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 408 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
407 temp_dir_.path(), 512 * 1024, &local_path, &data)); 409 temp_dir_.path(), 512 * 1024, &local_path, &data));
408 410
409 GDataErrorCode error = GDATA_OTHER_ERROR; 411 GDataErrorCode error = GDATA_OTHER_ERROR;
410 GURL upload_location; 412 GURL upload_location;
411 scoped_ptr<ResourceEntry> resource_entry; 413 scoped_ptr<ResourceEntry> resource_entry;
412 414
413 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size()); 415 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size());
414 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 416 DriveUploader uploader(&mock_service,
415 uploader.UploadExistingFile( 417 base::MessageLoopProxy::current().get());
416 kTestInitiateUploadResourceId, 418 uploader.UploadExistingFile(kTestInitiateUploadResourceId,
417 local_path, 419 local_path,
418 kTestMimeType, 420 kTestMimeType,
419 kTestETag, 421 kTestETag,
420 test_util::CreateCopyResultCallback( 422 test_util::CreateCopyResultCallback(
421 &error, &upload_location, &resource_entry), 423 &error, &upload_location, &resource_entry),
422 google_apis::ProgressCallback()); 424 google_apis::ProgressCallback());
423 base::RunLoop().RunUntilIdle(); 425 base::RunLoop().RunUntilIdle();
424 426
425 EXPECT_EQ(HTTP_SUCCESS, error); 427 EXPECT_EQ(HTTP_SUCCESS, error);
426 EXPECT_TRUE(upload_location.is_empty()); 428 EXPECT_TRUE(upload_location.is_empty());
427 } 429 }
428 430
429 TEST_F(DriveUploaderTest, InitiateUploadConflict) { 431 TEST_F(DriveUploaderTest, InitiateUploadConflict) {
430 base::FilePath local_path; 432 base::FilePath local_path;
431 std::string data; 433 std::string data;
432 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 434 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
433 temp_dir_.path(), 512 * 1024, &local_path, &data)); 435 temp_dir_.path(), 512 * 1024, &local_path, &data));
434 const std::string kDestinationETag("destination_etag"); 436 const std::string kDestinationETag("destination_etag");
435 437
436 GDataErrorCode error = GDATA_OTHER_ERROR; 438 GDataErrorCode error = GDATA_OTHER_ERROR;
437 GURL upload_location; 439 GURL upload_location;
438 scoped_ptr<ResourceEntry> resource_entry; 440 scoped_ptr<ResourceEntry> resource_entry;
439 441
440 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size()); 442 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size());
441 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 443 DriveUploader uploader(&mock_service,
442 uploader.UploadExistingFile( 444 base::MessageLoopProxy::current().get());
443 kTestInitiateUploadResourceId, 445 uploader.UploadExistingFile(kTestInitiateUploadResourceId,
444 local_path, 446 local_path,
445 kTestMimeType, 447 kTestMimeType,
446 kDestinationETag, 448 kDestinationETag,
447 test_util::CreateCopyResultCallback( 449 test_util::CreateCopyResultCallback(
448 &error, &upload_location, &resource_entry), 450 &error, &upload_location, &resource_entry),
449 google_apis::ProgressCallback()); 451 google_apis::ProgressCallback());
450 base::RunLoop().RunUntilIdle(); 452 base::RunLoop().RunUntilIdle();
451 453
452 EXPECT_EQ(HTTP_CONFLICT, error); 454 EXPECT_EQ(HTTP_CONFLICT, error);
453 EXPECT_TRUE(upload_location.is_empty()); 455 EXPECT_TRUE(upload_location.is_empty());
454 } 456 }
455 457
456 TEST_F(DriveUploaderTest, ResumeUploadFail) { 458 TEST_F(DriveUploaderTest, ResumeUploadFail) {
457 base::FilePath local_path; 459 base::FilePath local_path;
458 std::string data; 460 std::string data;
459 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 461 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
460 temp_dir_.path(), 512 * 1024, &local_path, &data)); 462 temp_dir_.path(), 512 * 1024, &local_path, &data));
461 463
462 GDataErrorCode error = HTTP_SUCCESS; 464 GDataErrorCode error = HTTP_SUCCESS;
463 GURL upload_location; 465 GURL upload_location;
464 scoped_ptr<ResourceEntry> resource_entry; 466 scoped_ptr<ResourceEntry> resource_entry;
465 467
466 MockDriveServiceNoConnectionAtResume mock_service; 468 MockDriveServiceNoConnectionAtResume mock_service;
467 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 469 DriveUploader uploader(&mock_service,
468 uploader.UploadExistingFile( 470 base::MessageLoopProxy::current().get());
469 kTestInitiateUploadResourceId, 471 uploader.UploadExistingFile(kTestInitiateUploadResourceId,
470 local_path, 472 local_path,
471 kTestMimeType, 473 kTestMimeType,
472 std::string(), // etag 474 std::string(), // etag
473 test_util::CreateCopyResultCallback( 475 test_util::CreateCopyResultCallback(
474 &error, &upload_location, &resource_entry), 476 &error, &upload_location, &resource_entry),
475 google_apis::ProgressCallback()); 477 google_apis::ProgressCallback());
476 base::RunLoop().RunUntilIdle(); 478 base::RunLoop().RunUntilIdle();
477 479
478 EXPECT_EQ(GDATA_NO_CONNECTION, error); 480 EXPECT_EQ(GDATA_NO_CONNECTION, error);
479 EXPECT_EQ(GURL(kTestUploadExistingFileURL), upload_location); 481 EXPECT_EQ(GURL(kTestUploadExistingFileURL), upload_location);
480 } 482 }
481 483
482 TEST_F(DriveUploaderTest, NonExistingSourceFile) { 484 TEST_F(DriveUploaderTest, NonExistingSourceFile) {
483 GDataErrorCode error = GDATA_OTHER_ERROR; 485 GDataErrorCode error = GDATA_OTHER_ERROR;
484 GURL upload_location; 486 GURL upload_location;
485 scoped_ptr<ResourceEntry> resource_entry; 487 scoped_ptr<ResourceEntry> resource_entry;
486 488
487 DriveUploader uploader(NULL, // NULL, the service won't be used. 489 DriveUploader uploader(NULL, // NULL, the service won't be used.
488 base::MessageLoopProxy::current()); 490 base::MessageLoopProxy::current().get());
489 uploader.UploadExistingFile( 491 uploader.UploadExistingFile(
490 kTestInitiateUploadResourceId, 492 kTestInitiateUploadResourceId,
491 temp_dir_.path().AppendASCII("_this_path_should_not_exist_"), 493 temp_dir_.path().AppendASCII("_this_path_should_not_exist_"),
492 kTestMimeType, 494 kTestMimeType,
493 std::string(), // etag 495 std::string(), // etag
494 test_util::CreateCopyResultCallback( 496 test_util::CreateCopyResultCallback(
495 &error, &upload_location, &resource_entry), 497 &error, &upload_location, &resource_entry),
496 google_apis::ProgressCallback()); 498 google_apis::ProgressCallback());
497 base::RunLoop().RunUntilIdle(); 499 base::RunLoop().RunUntilIdle();
498 500
499 // Should return failure without doing any attempt to connect to the server. 501 // Should return failure without doing any attempt to connect to the server.
500 EXPECT_EQ(HTTP_NOT_FOUND, error); 502 EXPECT_EQ(HTTP_NOT_FOUND, error);
501 EXPECT_TRUE(upload_location.is_empty()); 503 EXPECT_TRUE(upload_location.is_empty());
502 } 504 }
503 505
504 TEST_F(DriveUploaderTest, ResumeUpload) { 506 TEST_F(DriveUploaderTest, ResumeUpload) {
505 base::FilePath local_path; 507 base::FilePath local_path;
506 std::string data; 508 std::string data;
507 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize( 509 ASSERT_TRUE(test_util::CreateFileOfSpecifiedSize(
508 temp_dir_.path(), 1024 * 1024, &local_path, &data)); 510 temp_dir_.path(), 1024 * 1024, &local_path, &data));
509 511
510 GDataErrorCode error = GDATA_OTHER_ERROR; 512 GDataErrorCode error = GDATA_OTHER_ERROR;
511 GURL upload_location; 513 GURL upload_location;
512 scoped_ptr<ResourceEntry> resource_entry; 514 scoped_ptr<ResourceEntry> resource_entry;
513 515
514 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size()); 516 MockDriveServiceWithUploadExpectation mock_service(local_path, data.size());
515 DriveUploader uploader(&mock_service, base::MessageLoopProxy::current()); 517 DriveUploader uploader(&mock_service,
518 base::MessageLoopProxy::current().get());
516 // Emulate the situation that the only first part is successfully uploaded, 519 // Emulate the situation that the only first part is successfully uploaded,
517 // but not the latter half. 520 // but not the latter half.
518 mock_service.set_received_bytes(512 * 1024); 521 mock_service.set_received_bytes(512 * 1024);
519 522
520 std::vector<test_util::ProgressInfo> upload_progress_values; 523 std::vector<test_util::ProgressInfo> upload_progress_values;
521 uploader.ResumeUploadFile( 524 uploader.ResumeUploadFile(
522 GURL(kTestUploadExistingFileURL), 525 GURL(kTestUploadExistingFileURL),
523 local_path, 526 local_path,
524 kTestMimeType, 527 kTestMimeType,
525 test_util::CreateCopyResultCallback( 528 test_util::CreateCopyResultCallback(
526 &error, &upload_location, &resource_entry), 529 &error, &upload_location, &resource_entry),
527 base::Bind(&test_util::AppendProgressCallbackResult, 530 base::Bind(&test_util::AppendProgressCallbackResult,
528 &upload_progress_values)); 531 &upload_progress_values));
529 base::RunLoop().RunUntilIdle(); 532 base::RunLoop().RunUntilIdle();
530 533
531 EXPECT_EQ(1, mock_service.resume_upload_call_count()); 534 EXPECT_EQ(1, mock_service.resume_upload_call_count());
532 EXPECT_EQ(1024 * 1024, mock_service.received_bytes()); 535 EXPECT_EQ(1024 * 1024, mock_service.received_bytes());
533 EXPECT_EQ(HTTP_SUCCESS, error); 536 EXPECT_EQ(HTTP_SUCCESS, error);
534 EXPECT_TRUE(upload_location.is_empty()); 537 EXPECT_TRUE(upload_location.is_empty());
535 ASSERT_TRUE(resource_entry); 538 ASSERT_TRUE(resource_entry);
536 EXPECT_EQ(kTestDummyId, resource_entry->id()); 539 EXPECT_EQ(kTestDummyId, resource_entry->id());
537 ASSERT_EQ(1U, upload_progress_values.size()); 540 ASSERT_EQ(1U, upload_progress_values.size());
538 EXPECT_EQ(test_util::ProgressInfo(1024 * 1024, 1024 * 1024), 541 EXPECT_EQ(test_util::ProgressInfo(1024 * 1024, 1024 * 1024),
539 upload_progress_values[0]); 542 upload_progress_values[0]);
540 } 543 }
541 544
542 } // namespace drive 545 } // namespace drive
OLDNEW
« no previous file with comments | « chrome/browser/drive/drive_uploader.cc ('k') | chrome/browser/extensions/activity_log/fullstream_ui_policy_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698