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

Side by Side Diff: chrome/browser/google_apis/gdata_wapi_operations_unittest.cc

Issue 11824023: Add unittest for google_apis::GetAboutOperation. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Get rid of EXPECT_X creation. Move the verification method to test_util to share it with gdata_wapi… Created 7 years, 11 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
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 <algorithm> 5 #include <algorithm>
6 #include <map> 6 #include <map>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/file_path.h" 9 #include "base/file_path.h"
10 #include "base/file_util.h" 10 #include "base/file_util.h"
11 #include "base/json/json_reader.h"
12 #include "base/message_loop_proxy.h" 11 #include "base/message_loop_proxy.h"
13 #include "base/string_number_conversions.h" 12 #include "base/string_number_conversions.h"
14 #include "base/string_split.h" 13 #include "base/string_split.h"
15 #include "base/stringprintf.h" 14 #include "base/stringprintf.h"
16 #include "chrome/browser/google_apis/gdata_wapi_operations.h" 15 #include "chrome/browser/google_apis/gdata_wapi_operations.h"
17 #include "chrome/browser/google_apis/gdata_wapi_parser.h" 16 #include "chrome/browser/google_apis/gdata_wapi_parser.h"
18 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h" 17 #include "chrome/browser/google_apis/gdata_wapi_url_generator.h"
19 #include "chrome/browser/google_apis/operation_registry.h" 18 #include "chrome/browser/google_apis/operation_registry.h"
20 #include "chrome/browser/google_apis/test_server/http_server.h" 19 #include "chrome/browser/google_apis/test_server/http_server.h"
21 #include "chrome/browser/google_apis/test_util.h" 20 #include "chrome/browser/google_apis/test_util.h"
22 #include "chrome/browser/profiles/profile.h" 21 #include "chrome/browser/profiles/profile.h"
23 #include "chrome/test/base/testing_profile.h" 22 #include "chrome/test/base/testing_profile.h"
24 #include "content/public/test/test_browser_thread.h" 23 #include "content/public/test/test_browser_thread.h"
25 #include "net/base/escape.h" 24 #include "net/base/escape.h"
26 #include "net/url_request/url_request_test_util.h" 25 #include "net/url_request/url_request_test_util.h"
27 #include "testing/gtest/include/gtest/gtest.h" 26 #include "testing/gtest/include/gtest/gtest.h"
28 27
29 namespace google_apis { 28 namespace google_apis {
30 29
31 namespace { 30 namespace {
32 31
33 const char kTestGDataAuthToken[] = "testtoken"; 32 const char kTestGDataAuthToken[] = "testtoken";
34 const char kTestUserAgent[] = "test-user-agent"; 33 const char kTestUserAgent[] = "test-user-agent";
35 const char kTestETag[] = "test_etag"; 34 const char kTestETag[] = "test_etag";
36 35
37 // Copies the results from GetDataCallback and quit the message loop.
38 void CopyResultsFromGetDataCallbackAndQuit(
39 GDataErrorCode* out_result_code,
40 scoped_ptr<base::Value>* out_result_data,
41 GDataErrorCode result_code,
42 scoped_ptr<base::Value> result_data) {
43 *out_result_code = result_code;
44 *out_result_data = result_data.Pass();
45 MessageLoop::current()->Quit();
46 }
47
48 // Copies the results from DownloadActionCallback and quit the message loop. 36 // Copies the results from DownloadActionCallback and quit the message loop.
49 // The contents of the download cache file are copied to a string, and the 37 // The contents of the download cache file are copied to a string, and the
50 // file is removed. 38 // file is removed.
51 void CopyResultsFromDownloadActionCallbackAndQuit( 39 void CopyResultsFromDownloadActionCallbackAndQuit(
52 GDataErrorCode* out_result_code, 40 GDataErrorCode* out_result_code,
53 std::string* contents, 41 std::string* contents,
54 GDataErrorCode result_code, 42 GDataErrorCode result_code,
55 const FilePath& cache_file_path) { 43 const FilePath& cache_file_path) {
56 *out_result_code = result_code; 44 *out_result_code = result_code;
57 file_util::ReadFileToString(cache_file_path, contents); 45 file_util::ReadFileToString(cache_file_path, contents);
(...skipping 24 matching lines...) Expand all
82 void CopyResultFromResumeUploadCallbackAndQuit( 70 void CopyResultFromResumeUploadCallbackAndQuit(
83 ResumeUploadResponse* out_response, 71 ResumeUploadResponse* out_response,
84 scoped_ptr<ResourceEntry>* out_new_entry, 72 scoped_ptr<ResourceEntry>* out_new_entry,
85 const ResumeUploadResponse& response, 73 const ResumeUploadResponse& response,
86 scoped_ptr<ResourceEntry> new_entry) { 74 scoped_ptr<ResourceEntry> new_entry) {
87 *out_response = response; 75 *out_response = response;
88 *out_new_entry = new_entry.Pass(); 76 *out_new_entry = new_entry.Pass();
89 MessageLoop::current()->Quit(); 77 MessageLoop::current()->Quit();
90 } 78 }
91 79
92 // Returns true if |json_data| equals to JSON data in |expected_json_file_path|.
93 bool VerifyJsonData(const FilePath& expected_json_file_path,
94 const base::Value* json_data) {
95 std::string expected_contents;
96 if (!file_util::ReadFileToString(expected_json_file_path, &expected_contents))
97 return false;
98
99 scoped_ptr<base::Value> expected_data(
100 base::JSONReader::Read(expected_contents));
101 return base::Value::Equals(expected_data.get(), json_data);
102 }
103
104 // Removes |prefix| from |input| and stores the result in |output|. Returns 80 // Removes |prefix| from |input| and stores the result in |output|. Returns
105 // true if the prefix is removed. 81 // true if the prefix is removed.
106 bool RemovePrefix(const std::string& input, 82 bool RemovePrefix(const std::string& input,
107 const std::string& prefix, 83 const std::string& prefix,
108 std::string* output) { 84 std::string* output) {
109 if (!StartsWithASCII(input, prefix, true /* case sensitive */)) 85 if (!StartsWithASCII(input, prefix, true /* case sensitive */))
110 return false; 86 return false;
111 87
112 *output = input.substr(prefix.size()); 88 *output = input.substr(prefix.size());
113 return true; 89 return true;
(...skipping 25 matching lines...) Expand all
139 115
140 parts.clear(); 116 parts.clear();
141 base::SplitString(range, '-', &parts); 117 base::SplitString(range, '-', &parts);
142 if (parts.size() != 2U) 118 if (parts.size() != 2U)
143 return false; 119 return false;
144 120
145 return (base::StringToInt64(parts[0], start_position) && 121 return (base::StringToInt64(parts[0], start_position) &&
146 base::StringToInt64(parts[1], end_position)); 122 base::StringToInt64(parts[1], end_position));
147 } 123 }
148 124
149 // Does nothing for ReAuthenticateCallback(). This function should not be
150 // reached as there won't be any authentication failures in the test.
151 void DoNothingForReAuthenticateCallback(
152 AuthenticatedOperationInterface* /* operation */) {
153 NOTREACHED();
154 }
155
156 class GDataWapiOperationsTest : public testing::Test { 125 class GDataWapiOperationsTest : public testing::Test {
157 public: 126 public:
158 GDataWapiOperationsTest() 127 GDataWapiOperationsTest()
159 : ui_thread_(content::BrowserThread::UI, &message_loop_), 128 : ui_thread_(content::BrowserThread::UI, &message_loop_),
160 file_thread_(content::BrowserThread::FILE), 129 file_thread_(content::BrowserThread::FILE),
161 io_thread_(content::BrowserThread::IO) { 130 io_thread_(content::BrowserThread::IO) {
162 } 131 }
163 132
164 virtual void SetUp() OVERRIDE { 133 virtual void SetUp() OVERRIDE {
165 file_thread_.Start(); 134 file_thread_.Start();
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
410 379
411 GetResourceListOperation* operation = new GetResourceListOperation( 380 GetResourceListOperation* operation = new GetResourceListOperation(
412 &operation_registry_, 381 &operation_registry_,
413 request_context_getter_.get(), 382 request_context_getter_.get(),
414 *url_generator_, 383 *url_generator_,
415 GURL(), // Pass an empty URL to use the default feed 384 GURL(), // Pass an empty URL to use the default feed
416 0, // start changestamp 385 0, // start changestamp
417 "", // search string 386 "", // search string
418 false, // shared with me 387 false, // shared with me
419 "", // directory resource ID 388 "", // directory resource ID
420 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 389 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
421 &result_code, 390 &result_code,
422 &result_data)); 391 &result_data));
423 operation->Start(kTestGDataAuthToken, kTestUserAgent, 392 operation->Start(kTestGDataAuthToken, kTestUserAgent,
424 base::Bind(&DoNothingForReAuthenticateCallback)); 393 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
425 MessageLoop::current()->Run(); 394 MessageLoop::current()->Run();
426 395
427 EXPECT_EQ(HTTP_SUCCESS, result_code); 396 EXPECT_EQ(HTTP_SUCCESS, result_code);
428 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 397 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
429 EXPECT_EQ("/feeds/default/private/full/-/mine?v=3&alt=json&showfolders=true" 398 EXPECT_EQ("/feeds/default/private/full/-/mine?v=3&alt=json&showfolders=true"
430 "&max-results=500&include-installed-apps=true", 399 "&max-results=500&include-installed-apps=true",
431 http_request_.relative_url); 400 http_request_.relative_url);
432 ASSERT_TRUE(result_data); 401 EXPECT_TRUE(test_util::VerifyJsonData(
433 EXPECT_TRUE(VerifyJsonData(
434 test_util::GetTestFilePath("gdata/root_feed.json"), 402 test_util::GetTestFilePath("gdata/root_feed.json"),
435 result_data.get())); 403 result_data.get()));
436 } 404 }
437 405
438 TEST_F(GDataWapiOperationsTest, GetResourceListOperation_ValidFeed) { 406 TEST_F(GDataWapiOperationsTest, GetResourceListOperation_ValidFeed) {
439 GDataErrorCode result_code = GDATA_OTHER_ERROR; 407 GDataErrorCode result_code = GDATA_OTHER_ERROR;
440 scoped_ptr<base::Value> result_data; 408 scoped_ptr<base::Value> result_data;
441 409
442 GetResourceListOperation* operation = new GetResourceListOperation( 410 GetResourceListOperation* operation = new GetResourceListOperation(
443 &operation_registry_, 411 &operation_registry_,
444 request_context_getter_.get(), 412 request_context_getter_.get(),
445 *url_generator_, 413 *url_generator_,
446 test_server_.GetURL("/files/gdata/root_feed.json"), 414 test_server_.GetURL("/files/gdata/root_feed.json"),
447 0, // start changestamp 415 0, // start changestamp
448 "", // search string 416 "", // search string
449 false, // shared with me 417 false, // shared with me
450 "", // directory resource ID 418 "", // directory resource ID
451 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 419 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
452 &result_code, 420 &result_code,
453 &result_data)); 421 &result_data));
454 operation->Start(kTestGDataAuthToken, kTestUserAgent, 422 operation->Start(kTestGDataAuthToken, kTestUserAgent,
455 base::Bind(&DoNothingForReAuthenticateCallback)); 423 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
456 MessageLoop::current()->Run(); 424 MessageLoop::current()->Run();
457 425
458 EXPECT_EQ(HTTP_SUCCESS, result_code); 426 EXPECT_EQ(HTTP_SUCCESS, result_code);
459 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 427 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
460 EXPECT_EQ("/files/gdata/root_feed.json?v=3&alt=json&showfolders=true" 428 EXPECT_EQ("/files/gdata/root_feed.json?v=3&alt=json&showfolders=true"
461 "&max-results=500&include-installed-apps=true", 429 "&max-results=500&include-installed-apps=true",
462 http_request_.relative_url); 430 http_request_.relative_url);
463 ASSERT_TRUE(result_data); 431 EXPECT_TRUE(test_util::VerifyJsonData(
464 EXPECT_TRUE(VerifyJsonData(
465 test_util::GetTestFilePath("gdata/root_feed.json"), 432 test_util::GetTestFilePath("gdata/root_feed.json"),
466 result_data.get())); 433 result_data.get()));
467 } 434 }
468 435
469 TEST_F(GDataWapiOperationsTest, GetResourceListOperation_InvalidFeed) { 436 TEST_F(GDataWapiOperationsTest, GetResourceListOperation_InvalidFeed) {
470 // testfile.txt exists but the response is not JSON, so it should 437 // testfile.txt exists but the response is not JSON, so it should
471 // emit a parse error instead. 438 // emit a parse error instead.
472 GDataErrorCode result_code = GDATA_OTHER_ERROR; 439 GDataErrorCode result_code = GDATA_OTHER_ERROR;
473 scoped_ptr<base::Value> result_data; 440 scoped_ptr<base::Value> result_data;
474 441
475 GetResourceListOperation* operation = new GetResourceListOperation( 442 GetResourceListOperation* operation = new GetResourceListOperation(
476 &operation_registry_, 443 &operation_registry_,
477 request_context_getter_.get(), 444 request_context_getter_.get(),
478 *url_generator_, 445 *url_generator_,
479 test_server_.GetURL("/files/gdata/testfile.txt"), 446 test_server_.GetURL("/files/gdata/testfile.txt"),
480 0, // start changestamp 447 0, // start changestamp
481 "", // search string 448 "", // search string
482 false, // shared with me 449 false, // shared with me
483 "", // directory resource ID 450 "", // directory resource ID
484 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 451 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
485 &result_code, 452 &result_code,
486 &result_data)); 453 &result_data));
487 operation->Start(kTestGDataAuthToken, kTestUserAgent, 454 operation->Start(kTestGDataAuthToken, kTestUserAgent,
488 base::Bind(&DoNothingForReAuthenticateCallback)); 455 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
489 MessageLoop::current()->Run(); 456 MessageLoop::current()->Run();
490 457
491 EXPECT_EQ(GDATA_PARSE_ERROR, result_code); 458 EXPECT_EQ(GDATA_PARSE_ERROR, result_code);
492 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 459 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
493 EXPECT_EQ("/files/gdata/testfile.txt?v=3&alt=json&showfolders=true" 460 EXPECT_EQ("/files/gdata/testfile.txt?v=3&alt=json&showfolders=true"
494 "&max-results=500&include-installed-apps=true", 461 "&max-results=500&include-installed-apps=true",
495 http_request_.relative_url); 462 http_request_.relative_url);
496 EXPECT_FALSE(result_data); 463 EXPECT_FALSE(result_data);
497 } 464 }
498 465
499 TEST_F(GDataWapiOperationsTest, GetResourceEntryOperation_ValidResourceId) { 466 TEST_F(GDataWapiOperationsTest, GetResourceEntryOperation_ValidResourceId) {
500 GDataErrorCode result_code = GDATA_OTHER_ERROR; 467 GDataErrorCode result_code = GDATA_OTHER_ERROR;
501 scoped_ptr<base::Value> result_data; 468 scoped_ptr<base::Value> result_data;
502 469
503 GetResourceEntryOperation* operation = new GetResourceEntryOperation( 470 GetResourceEntryOperation* operation = new GetResourceEntryOperation(
504 &operation_registry_, 471 &operation_registry_,
505 request_context_getter_.get(), 472 request_context_getter_.get(),
506 *url_generator_, 473 *url_generator_,
507 "file:2_file_resource_id", // resource ID 474 "file:2_file_resource_id", // resource ID
508 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 475 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
509 &result_code, 476 &result_code,
510 &result_data)); 477 &result_data));
511 operation->Start(kTestGDataAuthToken, kTestUserAgent, 478 operation->Start(kTestGDataAuthToken, kTestUserAgent,
512 base::Bind(&DoNothingForReAuthenticateCallback)); 479 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
513 MessageLoop::current()->Run(); 480 MessageLoop::current()->Run();
514 481
515 EXPECT_EQ(HTTP_SUCCESS, result_code); 482 EXPECT_EQ(HTTP_SUCCESS, result_code);
516 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 483 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
517 EXPECT_EQ("/feeds/default/private/full/file%3A2_file_resource_id" 484 EXPECT_EQ("/feeds/default/private/full/file%3A2_file_resource_id"
518 "?v=3&alt=json", 485 "?v=3&alt=json",
519 http_request_.relative_url); 486 http_request_.relative_url);
520 ASSERT_TRUE(result_data); 487 EXPECT_TRUE(test_util::VerifyJsonData(
521 EXPECT_TRUE(VerifyJsonData(
522 test_util::GetTestFilePath("gdata/file_entry.json"), 488 test_util::GetTestFilePath("gdata/file_entry.json"),
523 result_data.get())); 489 result_data.get()));
524 } 490 }
525 491
526 TEST_F(GDataWapiOperationsTest, GetResourceEntryOperation_InvalidResourceId) { 492 TEST_F(GDataWapiOperationsTest, GetResourceEntryOperation_InvalidResourceId) {
527 GDataErrorCode result_code = GDATA_OTHER_ERROR; 493 GDataErrorCode result_code = GDATA_OTHER_ERROR;
528 scoped_ptr<base::Value> result_data; 494 scoped_ptr<base::Value> result_data;
529 495
530 GetResourceEntryOperation* operation = new GetResourceEntryOperation( 496 GetResourceEntryOperation* operation = new GetResourceEntryOperation(
531 &operation_registry_, 497 &operation_registry_,
532 request_context_getter_.get(), 498 request_context_getter_.get(),
533 *url_generator_, 499 *url_generator_,
534 "<invalid>", // resource ID 500 "<invalid>", // resource ID
535 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 501 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
536 &result_code, 502 &result_code,
537 &result_data)); 503 &result_data));
538 operation->Start(kTestGDataAuthToken, kTestUserAgent, 504 operation->Start(kTestGDataAuthToken, kTestUserAgent,
539 base::Bind(&DoNothingForReAuthenticateCallback)); 505 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
540 MessageLoop::current()->Run(); 506 MessageLoop::current()->Run();
541 507
542 EXPECT_EQ(HTTP_NOT_FOUND, result_code); 508 EXPECT_EQ(HTTP_NOT_FOUND, result_code);
543 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 509 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
544 EXPECT_EQ("/feeds/default/private/full/%3Cinvalid%3E?v=3&alt=json", 510 EXPECT_EQ("/feeds/default/private/full/%3Cinvalid%3E?v=3&alt=json",
545 http_request_.relative_url); 511 http_request_.relative_url);
546 ASSERT_FALSE(result_data); 512 ASSERT_FALSE(result_data);
547 } 513 }
548 514
549 TEST_F(GDataWapiOperationsTest, GetAccountMetadataOperation) { 515 TEST_F(GDataWapiOperationsTest, GetAccountMetadataOperation) {
550 GDataErrorCode result_code = GDATA_OTHER_ERROR; 516 GDataErrorCode result_code = GDATA_OTHER_ERROR;
551 scoped_ptr<base::Value> result_data; 517 scoped_ptr<base::Value> result_data;
552 518
553 GetAccountMetadataOperation* operation = new GetAccountMetadataOperation( 519 GetAccountMetadataOperation* operation = new GetAccountMetadataOperation(
554 &operation_registry_, 520 &operation_registry_,
555 request_context_getter_.get(), 521 request_context_getter_.get(),
556 *url_generator_, 522 *url_generator_,
557 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 523 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
558 &result_code, 524 &result_code,
559 &result_data)); 525 &result_data));
560 operation->Start(kTestGDataAuthToken, kTestUserAgent, 526 operation->Start(kTestGDataAuthToken, kTestUserAgent,
561 base::Bind(&DoNothingForReAuthenticateCallback)); 527 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
562 MessageLoop::current()->Run(); 528 MessageLoop::current()->Run();
563 529
564 EXPECT_EQ(HTTP_SUCCESS, result_code); 530 EXPECT_EQ(HTTP_SUCCESS, result_code);
565 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 531 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
566 EXPECT_EQ("/feeds/metadata/default?v=3&alt=json&include-installed-apps=true", 532 EXPECT_EQ("/feeds/metadata/default?v=3&alt=json&include-installed-apps=true",
567 http_request_.relative_url); 533 http_request_.relative_url);
568 EXPECT_TRUE(VerifyJsonData( 534 EXPECT_TRUE(test_util::VerifyJsonData(
569 test_util::GetTestFilePath("gdata/account_metadata.json"), 535 test_util::GetTestFilePath("gdata/account_metadata.json"),
570 result_data.get())); 536 result_data.get()));
571 } 537 }
572 538
573 TEST_F(GDataWapiOperationsTest, DownloadFileOperation_ValidFile) { 539 TEST_F(GDataWapiOperationsTest, DownloadFileOperation_ValidFile) {
574 GDataErrorCode result_code = GDATA_OTHER_ERROR; 540 GDataErrorCode result_code = GDATA_OTHER_ERROR;
575 std::string contents; 541 std::string contents;
576 DownloadFileOperation* operation = new DownloadFileOperation( 542 DownloadFileOperation* operation = new DownloadFileOperation(
577 &operation_registry_, 543 &operation_registry_,
578 request_context_getter_.get(), 544 request_context_getter_.get(),
579 base::Bind(&CopyResultsFromDownloadActionCallbackAndQuit, 545 base::Bind(&CopyResultsFromDownloadActionCallbackAndQuit,
580 &result_code, 546 &result_code,
581 &contents), 547 &contents),
582 GetContentCallback(), 548 GetContentCallback(),
583 test_server_.GetURL("/files/gdata/testfile.txt"), 549 test_server_.GetURL("/files/gdata/testfile.txt"),
584 FilePath::FromUTF8Unsafe("/dummy/gdata/testfile.txt"), 550 FilePath::FromUTF8Unsafe("/dummy/gdata/testfile.txt"),
585 GetTestCachedFilePath(FilePath::FromUTF8Unsafe("cached_testfile.txt"))); 551 GetTestCachedFilePath(FilePath::FromUTF8Unsafe("cached_testfile.txt")));
586 operation->Start(kTestGDataAuthToken, kTestUserAgent, 552 operation->Start(kTestGDataAuthToken, kTestUserAgent,
587 base::Bind(&DoNothingForReAuthenticateCallback)); 553 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
588 MessageLoop::current()->Run(); 554 MessageLoop::current()->Run();
589 555
590 EXPECT_EQ(HTTP_SUCCESS, result_code); 556 EXPECT_EQ(HTTP_SUCCESS, result_code);
591 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 557 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
592 EXPECT_EQ("/files/gdata/testfile.txt", http_request_.relative_url); 558 EXPECT_EQ("/files/gdata/testfile.txt", http_request_.relative_url);
593 559
594 const FilePath expected_path = 560 const FilePath expected_path =
595 test_util::GetTestFilePath("gdata/testfile.txt"); 561 test_util::GetTestFilePath("gdata/testfile.txt");
596 std::string expected_contents; 562 std::string expected_contents;
597 file_util::ReadFileToString(expected_path, &expected_contents); 563 file_util::ReadFileToString(expected_path, &expected_contents);
598 EXPECT_EQ(expected_contents, contents); 564 EXPECT_EQ(expected_contents, contents);
599 } 565 }
600 566
601 TEST_F(GDataWapiOperationsTest, DownloadFileOperation_NonExistentFile) { 567 TEST_F(GDataWapiOperationsTest, DownloadFileOperation_NonExistentFile) {
602 GDataErrorCode result_code = GDATA_OTHER_ERROR; 568 GDataErrorCode result_code = GDATA_OTHER_ERROR;
603 std::string contents; 569 std::string contents;
604 DownloadFileOperation* operation = new DownloadFileOperation( 570 DownloadFileOperation* operation = new DownloadFileOperation(
605 &operation_registry_, 571 &operation_registry_,
606 request_context_getter_.get(), 572 request_context_getter_.get(),
607 base::Bind(&CopyResultsFromDownloadActionCallbackAndQuit, 573 base::Bind(&CopyResultsFromDownloadActionCallbackAndQuit,
608 &result_code, 574 &result_code,
609 &contents), 575 &contents),
610 GetContentCallback(), 576 GetContentCallback(),
611 test_server_.GetURL("/files/gdata/no-such-file.txt"), 577 test_server_.GetURL("/files/gdata/no-such-file.txt"),
612 FilePath::FromUTF8Unsafe("/dummy/gdata/no-such-file.txt"), 578 FilePath::FromUTF8Unsafe("/dummy/gdata/no-such-file.txt"),
613 GetTestCachedFilePath( 579 GetTestCachedFilePath(
614 FilePath::FromUTF8Unsafe("cache_no-such-file.txt"))); 580 FilePath::FromUTF8Unsafe("cache_no-such-file.txt")));
615 operation->Start(kTestGDataAuthToken, kTestUserAgent, 581 operation->Start(kTestGDataAuthToken, kTestUserAgent,
616 base::Bind(&DoNothingForReAuthenticateCallback)); 582 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
617 MessageLoop::current()->Run(); 583 MessageLoop::current()->Run();
618 584
619 EXPECT_EQ(HTTP_NOT_FOUND, result_code); 585 EXPECT_EQ(HTTP_NOT_FOUND, result_code);
620 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); 586 EXPECT_EQ(test_server::METHOD_GET, http_request_.method);
621 EXPECT_EQ("/files/gdata/no-such-file.txt", http_request_.relative_url); 587 EXPECT_EQ("/files/gdata/no-such-file.txt", http_request_.relative_url);
622 // Do not verify the not found message. 588 // Do not verify the not found message.
623 } 589 }
624 590
625 TEST_F(GDataWapiOperationsTest, DeleteResourceOperation) { 591 TEST_F(GDataWapiOperationsTest, DeleteResourceOperation) {
626 GDataErrorCode result_code = GDATA_OTHER_ERROR; 592 GDataErrorCode result_code = GDATA_OTHER_ERROR;
627 593
628 DeleteResourceOperation* operation = new DeleteResourceOperation( 594 DeleteResourceOperation* operation = new DeleteResourceOperation(
629 &operation_registry_, 595 &operation_registry_,
630 request_context_getter_.get(), 596 request_context_getter_.get(),
631 base::Bind(&CopyResultFromEntryActionCallbackAndQuit, 597 base::Bind(&CopyResultFromEntryActionCallbackAndQuit,
632 &result_code), 598 &result_code),
633 test_server_.GetURL( 599 test_server_.GetURL(
634 "/feeds/default/private/full/file:2_file_resource_id")); 600 "/feeds/default/private/full/file:2_file_resource_id"));
635 601
636 operation->Start(kTestGDataAuthToken, kTestUserAgent, 602 operation->Start(kTestGDataAuthToken, kTestUserAgent,
637 base::Bind(&DoNothingForReAuthenticateCallback)); 603 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
638 MessageLoop::current()->Run(); 604 MessageLoop::current()->Run();
639 605
640 EXPECT_EQ(HTTP_SUCCESS, result_code); 606 EXPECT_EQ(HTTP_SUCCESS, result_code);
641 EXPECT_EQ(test_server::METHOD_DELETE, http_request_.method); 607 EXPECT_EQ(test_server::METHOD_DELETE, http_request_.method);
642 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json", 608 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json",
643 http_request_.relative_url); 609 http_request_.relative_url);
644 EXPECT_EQ("*", http_request_.headers["If-Match"]); 610 EXPECT_EQ("*", http_request_.headers["If-Match"]);
645 } 611 }
646 612
647 TEST_F(GDataWapiOperationsTest, CreateDirectoryOperation) { 613 TEST_F(GDataWapiOperationsTest, CreateDirectoryOperation) {
648 GDataErrorCode result_code = GDATA_OTHER_ERROR; 614 GDataErrorCode result_code = GDATA_OTHER_ERROR;
649 scoped_ptr<base::Value> result_data; 615 scoped_ptr<base::Value> result_data;
650 616
651 // Create "new directory" in the root directory. 617 // Create "new directory" in the root directory.
652 CreateDirectoryOperation* operation = new CreateDirectoryOperation( 618 CreateDirectoryOperation* operation = new CreateDirectoryOperation(
653 &operation_registry_, 619 &operation_registry_,
654 request_context_getter_.get(), 620 request_context_getter_.get(),
655 *url_generator_, 621 *url_generator_,
656 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 622 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
657 &result_code, 623 &result_code,
658 &result_data), 624 &result_data),
659 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"), 625 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"),
660 FILE_PATH_LITERAL("new directory")); 626 FILE_PATH_LITERAL("new directory"));
661 627
662 operation->Start(kTestGDataAuthToken, kTestUserAgent, 628 operation->Start(kTestGDataAuthToken, kTestUserAgent,
663 base::Bind(&DoNothingForReAuthenticateCallback)); 629 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
664 MessageLoop::current()->Run(); 630 MessageLoop::current()->Run();
665 631
666 EXPECT_EQ(HTTP_SUCCESS, result_code); 632 EXPECT_EQ(HTTP_SUCCESS, result_code);
667 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 633 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
668 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot?v=3&alt=json", 634 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot?v=3&alt=json",
669 http_request_.relative_url); 635 http_request_.relative_url);
670 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 636 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
671 637
672 EXPECT_TRUE(http_request_.has_content); 638 EXPECT_TRUE(http_request_.has_content);
673 EXPECT_EQ("<?xml version=\"1.0\"?>\n" 639 EXPECT_EQ("<?xml version=\"1.0\"?>\n"
674 "<entry xmlns=\"http://www.w3.org/2005/Atom\">\n" 640 "<entry xmlns=\"http://www.w3.org/2005/Atom\">\n"
675 " <category scheme=\"http://schemas.google.com/g/2005#kind\" " 641 " <category scheme=\"http://schemas.google.com/g/2005#kind\" "
676 "term=\"http://schemas.google.com/docs/2007#folder\"/>\n" 642 "term=\"http://schemas.google.com/docs/2007#folder\"/>\n"
677 " <title>new directory</title>\n" 643 " <title>new directory</title>\n"
678 "</entry>\n", 644 "</entry>\n",
679 http_request_.content); 645 http_request_.content);
680 } 646 }
681 647
682 TEST_F(GDataWapiOperationsTest, CopyHostedDocumentOperation) { 648 TEST_F(GDataWapiOperationsTest, CopyHostedDocumentOperation) {
683 GDataErrorCode result_code = GDATA_OTHER_ERROR; 649 GDataErrorCode result_code = GDATA_OTHER_ERROR;
684 scoped_ptr<base::Value> result_data; 650 scoped_ptr<base::Value> result_data;
685 651
686 // Copy a document with a new name "New Document". 652 // Copy a document with a new name "New Document".
687 CopyHostedDocumentOperation* operation = new CopyHostedDocumentOperation( 653 CopyHostedDocumentOperation* operation = new CopyHostedDocumentOperation(
688 &operation_registry_, 654 &operation_registry_,
689 request_context_getter_.get(), 655 request_context_getter_.get(),
690 *url_generator_, 656 *url_generator_,
691 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 657 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
692 &result_code, 658 &result_code,
693 &result_data), 659 &result_data),
694 "document:5_document_resource_id", // source resource ID 660 "document:5_document_resource_id", // source resource ID
695 FILE_PATH_LITERAL("New Document")); 661 FILE_PATH_LITERAL("New Document"));
696 662
697 operation->Start(kTestGDataAuthToken, kTestUserAgent, 663 operation->Start(kTestGDataAuthToken, kTestUserAgent,
698 base::Bind(&DoNothingForReAuthenticateCallback)); 664 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
699 MessageLoop::current()->Run(); 665 MessageLoop::current()->Run();
700 666
701 EXPECT_EQ(HTTP_SUCCESS, result_code); 667 EXPECT_EQ(HTTP_SUCCESS, result_code);
702 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 668 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
703 EXPECT_EQ("/feeds/default/private/full?v=3&alt=json", 669 EXPECT_EQ("/feeds/default/private/full?v=3&alt=json",
704 http_request_.relative_url); 670 http_request_.relative_url);
705 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 671 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
706 672
707 EXPECT_TRUE(http_request_.has_content); 673 EXPECT_TRUE(http_request_.has_content);
708 EXPECT_EQ("<?xml version=\"1.0\"?>\n" 674 EXPECT_EQ("<?xml version=\"1.0\"?>\n"
(...skipping 11 matching lines...) Expand all
720 RenameResourceOperation* operation = new RenameResourceOperation( 686 RenameResourceOperation* operation = new RenameResourceOperation(
721 &operation_registry_, 687 &operation_registry_,
722 request_context_getter_.get(), 688 request_context_getter_.get(),
723 base::Bind(&CopyResultFromEntryActionCallbackAndQuit, 689 base::Bind(&CopyResultFromEntryActionCallbackAndQuit,
724 &result_code), 690 &result_code),
725 test_server_.GetURL( 691 test_server_.GetURL(
726 "/feeds/default/private/full/file:2_file_resource_id"), 692 "/feeds/default/private/full/file:2_file_resource_id"),
727 FILE_PATH_LITERAL("New File")); 693 FILE_PATH_LITERAL("New File"));
728 694
729 operation->Start(kTestGDataAuthToken, kTestUserAgent, 695 operation->Start(kTestGDataAuthToken, kTestUserAgent,
730 base::Bind(&DoNothingForReAuthenticateCallback)); 696 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
731 MessageLoop::current()->Run(); 697 MessageLoop::current()->Run();
732 698
733 EXPECT_EQ(HTTP_SUCCESS, result_code); 699 EXPECT_EQ(HTTP_SUCCESS, result_code);
734 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 700 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
735 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json", 701 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json",
736 http_request_.relative_url); 702 http_request_.relative_url);
737 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 703 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
738 EXPECT_EQ("*", http_request_.headers["If-Match"]); 704 EXPECT_EQ("*", http_request_.headers["If-Match"]);
739 705
740 EXPECT_TRUE(http_request_.has_content); 706 EXPECT_TRUE(http_request_.has_content);
741 EXPECT_EQ("<?xml version=\"1.0\"?>\n" 707 EXPECT_EQ("<?xml version=\"1.0\"?>\n"
742 "<entry xmlns=\"http://www.w3.org/2005/Atom\">\n" 708 "<entry xmlns=\"http://www.w3.org/2005/Atom\">\n"
743 " <title>New File</title>\n" 709 " <title>New File</title>\n"
744 "</entry>\n", 710 "</entry>\n",
745 http_request_.content); 711 http_request_.content);
746 } 712 }
747 713
748 TEST_F(GDataWapiOperationsTest, AuthorizeAppOperation_ValidFeed) { 714 TEST_F(GDataWapiOperationsTest, AuthorizeAppOperation_ValidFeed) {
749 GDataErrorCode result_code = GDATA_OTHER_ERROR; 715 GDataErrorCode result_code = GDATA_OTHER_ERROR;
750 scoped_ptr<base::Value> result_data; 716 scoped_ptr<base::Value> result_data;
751 717
752 // Authorize an app with APP_ID to access to a document. 718 // Authorize an app with APP_ID to access to a document.
753 AuthorizeAppOperation* operation = new AuthorizeAppOperation( 719 AuthorizeAppOperation* operation = new AuthorizeAppOperation(
754 &operation_registry_, 720 &operation_registry_,
755 request_context_getter_.get(), 721 request_context_getter_.get(),
756 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 722 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
757 &result_code, 723 &result_code,
758 &result_data), 724 &result_data),
759 test_server_.GetURL( 725 test_server_.GetURL(
760 "/feeds/default/private/full/file:2_file_resource_id"), 726 "/feeds/default/private/full/file:2_file_resource_id"),
761 "APP_ID"); 727 "APP_ID");
762 728
763 operation->Start(kTestGDataAuthToken, kTestUserAgent, 729 operation->Start(kTestGDataAuthToken, kTestUserAgent,
764 base::Bind(&DoNothingForReAuthenticateCallback)); 730 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
765 MessageLoop::current()->Run(); 731 MessageLoop::current()->Run();
766 732
767 EXPECT_EQ(HTTP_SUCCESS, result_code); 733 EXPECT_EQ(HTTP_SUCCESS, result_code);
768 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 734 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
769 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json", 735 EXPECT_EQ("/feeds/default/private/full/file:2_file_resource_id?v=3&alt=json",
770 http_request_.relative_url); 736 http_request_.relative_url);
771 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 737 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
772 EXPECT_EQ("*", http_request_.headers["If-Match"]); 738 EXPECT_EQ("*", http_request_.headers["If-Match"]);
773 739
774 EXPECT_TRUE(http_request_.has_content); 740 EXPECT_TRUE(http_request_.has_content);
775 EXPECT_EQ("<?xml version=\"1.0\"?>\n" 741 EXPECT_EQ("<?xml version=\"1.0\"?>\n"
776 "<entry xmlns=\"http://www.w3.org/2005/Atom\" " 742 "<entry xmlns=\"http://www.w3.org/2005/Atom\" "
777 "xmlns:docs=\"http://schemas.google.com/docs/2007\">\n" 743 "xmlns:docs=\"http://schemas.google.com/docs/2007\">\n"
778 " <docs:authorizedApp>APP_ID</docs:authorizedApp>\n" 744 " <docs:authorizedApp>APP_ID</docs:authorizedApp>\n"
779 "</entry>\n", 745 "</entry>\n",
780 http_request_.content); 746 http_request_.content);
781 } 747 }
782 748
783 TEST_F(GDataWapiOperationsTest, AuthorizeAppOperation_InvalidFeed) { 749 TEST_F(GDataWapiOperationsTest, AuthorizeAppOperation_InvalidFeed) {
784 GDataErrorCode result_code = GDATA_OTHER_ERROR; 750 GDataErrorCode result_code = GDATA_OTHER_ERROR;
785 scoped_ptr<base::Value> result_data; 751 scoped_ptr<base::Value> result_data;
786 752
787 // Authorize an app with APP_ID to access to a document but an invalid feed. 753 // Authorize an app with APP_ID to access to a document but an invalid feed.
788 AuthorizeAppOperation* operation = new AuthorizeAppOperation( 754 AuthorizeAppOperation* operation = new AuthorizeAppOperation(
789 &operation_registry_, 755 &operation_registry_,
790 request_context_getter_.get(), 756 request_context_getter_.get(),
791 base::Bind(&CopyResultsFromGetDataCallbackAndQuit, 757 base::Bind(&test_util::CopyResultsFromGetDataCallbackAndQuit,
792 &result_code, 758 &result_code,
793 &result_data), 759 &result_data),
794 test_server_.GetURL("/files/gdata/testfile.txt"), 760 test_server_.GetURL("/files/gdata/testfile.txt"),
795 "APP_ID"); 761 "APP_ID");
796 762
797 operation->Start(kTestGDataAuthToken, kTestUserAgent, 763 operation->Start(kTestGDataAuthToken, kTestUserAgent,
798 base::Bind(&DoNothingForReAuthenticateCallback)); 764 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
799 MessageLoop::current()->Run(); 765 MessageLoop::current()->Run();
800 766
801 EXPECT_EQ(GDATA_PARSE_ERROR, result_code); 767 EXPECT_EQ(GDATA_PARSE_ERROR, result_code);
802 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 768 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
803 EXPECT_EQ("/files/gdata/testfile.txt?v=3&alt=json", 769 EXPECT_EQ("/files/gdata/testfile.txt?v=3&alt=json",
804 http_request_.relative_url); 770 http_request_.relative_url);
805 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 771 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
806 EXPECT_EQ("*", http_request_.headers["If-Match"]); 772 EXPECT_EQ("*", http_request_.headers["If-Match"]);
807 773
808 EXPECT_TRUE(http_request_.has_content); 774 EXPECT_TRUE(http_request_.has_content);
(...skipping 14 matching lines...) Expand all
823 &operation_registry_, 789 &operation_registry_,
824 request_context_getter_.get(), 790 request_context_getter_.get(),
825 *url_generator_, 791 *url_generator_,
826 base::Bind(&CopyResultFromEntryActionCallbackAndQuit, 792 base::Bind(&CopyResultFromEntryActionCallbackAndQuit,
827 &result_code), 793 &result_code),
828 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"), 794 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"),
829 test_server_.GetURL( 795 test_server_.GetURL(
830 "/feeds/default/private/full/file:2_file_resource_id")); 796 "/feeds/default/private/full/file:2_file_resource_id"));
831 797
832 operation->Start(kTestGDataAuthToken, kTestUserAgent, 798 operation->Start(kTestGDataAuthToken, kTestUserAgent,
833 base::Bind(&DoNothingForReAuthenticateCallback)); 799 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
834 MessageLoop::current()->Run(); 800 MessageLoop::current()->Run();
835 801
836 EXPECT_EQ(HTTP_SUCCESS, result_code); 802 EXPECT_EQ(HTTP_SUCCESS, result_code);
837 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 803 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
838 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot?v=3&alt=json", 804 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot?v=3&alt=json",
839 http_request_.relative_url); 805 http_request_.relative_url);
840 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]); 806 EXPECT_EQ("application/atom+xml", http_request_.headers["Content-Type"]);
841 807
842 EXPECT_TRUE(http_request_.has_content); 808 EXPECT_TRUE(http_request_.has_content);
843 EXPECT_EQ("<?xml version=\"1.0\"?>\n" 809 EXPECT_EQ("<?xml version=\"1.0\"?>\n"
(...skipping 11 matching lines...) Expand all
855 RemoveResourceFromDirectoryOperation* operation = 821 RemoveResourceFromDirectoryOperation* operation =
856 new RemoveResourceFromDirectoryOperation( 822 new RemoveResourceFromDirectoryOperation(
857 &operation_registry_, 823 &operation_registry_,
858 request_context_getter_.get(), 824 request_context_getter_.get(),
859 base::Bind(&CopyResultFromEntryActionCallbackAndQuit, 825 base::Bind(&CopyResultFromEntryActionCallbackAndQuit,
860 &result_code), 826 &result_code),
861 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"), 827 test_server_.GetURL("/feeds/default/private/full/folder%3Aroot"),
862 "file:2_file_resource_id"); 828 "file:2_file_resource_id");
863 829
864 operation->Start(kTestGDataAuthToken, kTestUserAgent, 830 operation->Start(kTestGDataAuthToken, kTestUserAgent,
865 base::Bind(&DoNothingForReAuthenticateCallback)); 831 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
866 MessageLoop::current()->Run(); 832 MessageLoop::current()->Run();
867 833
868 EXPECT_EQ(HTTP_SUCCESS, result_code); 834 EXPECT_EQ(HTTP_SUCCESS, result_code);
869 // DELETE method should be used, without the body content. 835 // DELETE method should be used, without the body content.
870 EXPECT_EQ(test_server::METHOD_DELETE, http_request_.method); 836 EXPECT_EQ(test_server::METHOD_DELETE, http_request_.method);
871 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot/" 837 EXPECT_EQ("/feeds/default/private/full/folder%3Aroot/"
872 "file%3A2_file_resource_id?v=3&alt=json", 838 "file%3A2_file_resource_id?v=3&alt=json",
873 http_request_.relative_url); 839 http_request_.relative_url);
874 EXPECT_EQ("*", http_request_.headers["If-Match"]); 840 EXPECT_EQ("*", http_request_.headers["If-Match"]);
875 EXPECT_FALSE(http_request_.has_content); 841 EXPECT_FALSE(http_request_.has_content);
(...skipping 17 matching lines...) Expand all
893 "" /* etag */); 859 "" /* etag */);
894 860
895 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 861 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
896 &operation_registry_, 862 &operation_registry_,
897 request_context_getter_.get(), 863 request_context_getter_.get(),
898 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 864 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
899 &result_code, 865 &result_code,
900 &upload_url), 866 &upload_url),
901 initiate_params); 867 initiate_params);
902 868
903 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 869 initiate_operation->Start(
904 base::Bind(&DoNothingForReAuthenticateCallback)); 870 kTestGDataAuthToken, kTestUserAgent,
871 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
905 MessageLoop::current()->Run(); 872 MessageLoop::current()->Run();
906 873
907 EXPECT_EQ(HTTP_SUCCESS, result_code); 874 EXPECT_EQ(HTTP_SUCCESS, result_code);
908 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url); 875 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url);
909 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 876 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
910 // convert=false should be passed as files should be uploaded as-is. 877 // convert=false should be passed as files should be uploaded as-is.
911 EXPECT_EQ("/feeds/upload/create-session/default/private/full" 878 EXPECT_EQ("/feeds/upload/create-session/default/private/full"
912 "?convert=false&v=3&alt=json", 879 "?convert=false&v=3&alt=json",
913 http_request_.relative_url); 880 http_request_.relative_url);
914 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]); 881 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]);
(...skipping 25 matching lines...) Expand all
940 scoped_ptr<ResourceEntry> new_entry; 907 scoped_ptr<ResourceEntry> new_entry;
941 908
942 ResumeUploadOperation* resume_operation = new ResumeUploadOperation( 909 ResumeUploadOperation* resume_operation = new ResumeUploadOperation(
943 &operation_registry_, 910 &operation_registry_,
944 request_context_getter_.get(), 911 request_context_getter_.get(),
945 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit, 912 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit,
946 &response, 913 &response,
947 &new_entry), 914 &new_entry),
948 resume_params); 915 resume_params);
949 916
950 resume_operation->Start(kTestGDataAuthToken, kTestUserAgent, 917 resume_operation->Start(
951 base::Bind(&DoNothingForReAuthenticateCallback)); 918 kTestGDataAuthToken, kTestUserAgent,
919 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
952 MessageLoop::current()->Run(); 920 MessageLoop::current()->Run();
953 921
954 // METHOD_PUT should be used to upload data. 922 // METHOD_PUT should be used to upload data.
955 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 923 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
956 // Request should go to the upload URL. 924 // Request should go to the upload URL.
957 EXPECT_EQ(upload_url.path(), http_request_.relative_url); 925 EXPECT_EQ(upload_url.path(), http_request_.relative_url);
958 // Content-Range header should be added. 926 // Content-Range header should be added.
959 EXPECT_EQ("bytes 0-" + 927 EXPECT_EQ("bytes 0-" +
960 base::Int64ToString(kUploadContent.size() -1) + "/" + 928 base::Int64ToString(kUploadContent.size() -1) + "/" +
961 base::Int64ToString(kUploadContent.size()), 929 base::Int64ToString(kUploadContent.size()),
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
993 "" /* etag */); 961 "" /* etag */);
994 962
995 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 963 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
996 &operation_registry_, 964 &operation_registry_,
997 request_context_getter_.get(), 965 request_context_getter_.get(),
998 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 966 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
999 &result_code, 967 &result_code,
1000 &upload_url), 968 &upload_url),
1001 initiate_params); 969 initiate_params);
1002 970
1003 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 971 initiate_operation->Start(
1004 base::Bind(&DoNothingForReAuthenticateCallback)); 972 kTestGDataAuthToken, kTestUserAgent,
973 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1005 MessageLoop::current()->Run(); 974 MessageLoop::current()->Run();
1006 975
1007 EXPECT_EQ(HTTP_SUCCESS, result_code); 976 EXPECT_EQ(HTTP_SUCCESS, result_code);
1008 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url); 977 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url);
1009 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 978 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
1010 // convert=false should be passed as files should be uploaded as-is. 979 // convert=false should be passed as files should be uploaded as-is.
1011 EXPECT_EQ("/feeds/upload/create-session/default/private/full?convert=false" 980 EXPECT_EQ("/feeds/upload/create-session/default/private/full?convert=false"
1012 "&v=3&alt=json", 981 "&v=3&alt=json",
1013 http_request_.relative_url); 982 http_request_.relative_url);
1014 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]); 983 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]);
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1053 scoped_ptr<ResourceEntry> new_entry; 1022 scoped_ptr<ResourceEntry> new_entry;
1054 1023
1055 ResumeUploadOperation* resume_operation = new ResumeUploadOperation( 1024 ResumeUploadOperation* resume_operation = new ResumeUploadOperation(
1056 &operation_registry_, 1025 &operation_registry_,
1057 request_context_getter_.get(), 1026 request_context_getter_.get(),
1058 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit, 1027 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit,
1059 &response, 1028 &response,
1060 &new_entry), 1029 &new_entry),
1061 resume_params); 1030 resume_params);
1062 1031
1063 resume_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1032 resume_operation->Start(
1064 base::Bind(&DoNothingForReAuthenticateCallback)); 1033 kTestGDataAuthToken, kTestUserAgent,
1034 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1065 MessageLoop::current()->Run(); 1035 MessageLoop::current()->Run();
1066 1036
1067 // METHOD_PUT should be used to upload data. 1037 // METHOD_PUT should be used to upload data.
1068 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1038 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1069 // Request should go to the upload URL. 1039 // Request should go to the upload URL.
1070 EXPECT_EQ(upload_url.path(), http_request_.relative_url); 1040 EXPECT_EQ(upload_url.path(), http_request_.relative_url);
1071 // Content-Range header should be added. 1041 // Content-Range header should be added.
1072 EXPECT_EQ("bytes " + 1042 EXPECT_EQ("bytes " +
1073 base::Int64ToString(start_position) + "-" + 1043 base::Int64ToString(start_position) + "-" +
1074 base::Int64ToString(end_position - 1) + "/" + 1044 base::Int64ToString(end_position - 1) + "/" +
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
1118 "" /* etag */); 1088 "" /* etag */);
1119 1089
1120 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 1090 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
1121 &operation_registry_, 1091 &operation_registry_,
1122 request_context_getter_.get(), 1092 request_context_getter_.get(),
1123 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 1093 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
1124 &result_code, 1094 &result_code,
1125 &upload_url), 1095 &upload_url),
1126 initiate_params); 1096 initiate_params);
1127 1097
1128 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1098 initiate_operation->Start(
1129 base::Bind(&DoNothingForReAuthenticateCallback)); 1099 kTestGDataAuthToken, kTestUserAgent,
1100 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1130 MessageLoop::current()->Run(); 1101 MessageLoop::current()->Run();
1131 1102
1132 EXPECT_EQ(HTTP_SUCCESS, result_code); 1103 EXPECT_EQ(HTTP_SUCCESS, result_code);
1133 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url); 1104 EXPECT_EQ(test_server_.GetURL("/upload_new_file"), upload_url);
1134 EXPECT_EQ(test_server::METHOD_POST, http_request_.method); 1105 EXPECT_EQ(test_server::METHOD_POST, http_request_.method);
1135 // convert=false should be passed as files should be uploaded as-is. 1106 // convert=false should be passed as files should be uploaded as-is.
1136 EXPECT_EQ("/feeds/upload/create-session/default/private/full?convert=false" 1107 EXPECT_EQ("/feeds/upload/create-session/default/private/full?convert=false"
1137 "&v=3&alt=json", 1108 "&v=3&alt=json",
1138 http_request_.relative_url); 1109 http_request_.relative_url);
1139 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]); 1110 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]);
(...skipping 25 matching lines...) Expand all
1165 scoped_ptr<ResourceEntry> new_entry; 1136 scoped_ptr<ResourceEntry> new_entry;
1166 1137
1167 ResumeUploadOperation* resume_operation = new ResumeUploadOperation( 1138 ResumeUploadOperation* resume_operation = new ResumeUploadOperation(
1168 &operation_registry_, 1139 &operation_registry_,
1169 request_context_getter_.get(), 1140 request_context_getter_.get(),
1170 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit, 1141 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit,
1171 &response, 1142 &response,
1172 &new_entry), 1143 &new_entry),
1173 resume_params); 1144 resume_params);
1174 1145
1175 resume_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1146 resume_operation->Start(
1176 base::Bind(&DoNothingForReAuthenticateCallback)); 1147 kTestGDataAuthToken, kTestUserAgent,
1148 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1177 MessageLoop::current()->Run(); 1149 MessageLoop::current()->Run();
1178 1150
1179 // METHOD_PUT should be used to upload data. 1151 // METHOD_PUT should be used to upload data.
1180 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1152 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1181 // Request should go to the upload URL. 1153 // Request should go to the upload URL.
1182 EXPECT_EQ(upload_url.path(), http_request_.relative_url); 1154 EXPECT_EQ(upload_url.path(), http_request_.relative_url);
1183 // Content-Range header should not exit if the content is empty. 1155 // Content-Range header should not exit if the content is empty.
1184 // We should not generate the header with an invalid value "bytes 0--1/0". 1156 // We should not generate the header with an invalid value "bytes 0--1/0".
1185 EXPECT_EQ(0U, http_request_.headers.count("Content-Range")); 1157 EXPECT_EQ(0U, http_request_.headers.count("Content-Range"));
1186 // The upload content should be set in the HTTP request. 1158 // The upload content should be set in the HTTP request.
(...skipping 26 matching lines...) Expand all
1213 "" /* etag */); 1185 "" /* etag */);
1214 1186
1215 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 1187 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
1216 &operation_registry_, 1188 &operation_registry_,
1217 request_context_getter_.get(), 1189 request_context_getter_.get(),
1218 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 1190 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
1219 &result_code, 1191 &result_code,
1220 &upload_url), 1192 &upload_url),
1221 initiate_params); 1193 initiate_params);
1222 1194
1223 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1195 initiate_operation->Start(
1224 base::Bind(&DoNothingForReAuthenticateCallback)); 1196 kTestGDataAuthToken, kTestUserAgent,
1197 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1225 MessageLoop::current()->Run(); 1198 MessageLoop::current()->Run();
1226 1199
1227 EXPECT_EQ(HTTP_SUCCESS, result_code); 1200 EXPECT_EQ(HTTP_SUCCESS, result_code);
1228 EXPECT_EQ(test_server_.GetURL("/upload_existing_file"), upload_url); 1201 EXPECT_EQ(test_server_.GetURL("/upload_existing_file"), upload_url);
1229 // For updating an existing file, METHOD_PUT should be used. 1202 // For updating an existing file, METHOD_PUT should be used.
1230 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1203 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1231 // convert=false should be passed as files should be uploaded as-is. 1204 // convert=false should be passed as files should be uploaded as-is.
1232 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo" 1205 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo"
1233 "?convert=false&v=3&alt=json", 1206 "?convert=false&v=3&alt=json",
1234 http_request_.relative_url); 1207 http_request_.relative_url);
(...skipping 25 matching lines...) Expand all
1260 scoped_ptr<ResourceEntry> new_entry; 1233 scoped_ptr<ResourceEntry> new_entry;
1261 1234
1262 ResumeUploadOperation* resume_operation = new ResumeUploadOperation( 1235 ResumeUploadOperation* resume_operation = new ResumeUploadOperation(
1263 &operation_registry_, 1236 &operation_registry_,
1264 request_context_getter_.get(), 1237 request_context_getter_.get(),
1265 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit, 1238 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit,
1266 &response, 1239 &response,
1267 &new_entry), 1240 &new_entry),
1268 resume_params); 1241 resume_params);
1269 1242
1270 resume_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1243 resume_operation->Start(
1271 base::Bind(&DoNothingForReAuthenticateCallback)); 1244 kTestGDataAuthToken, kTestUserAgent,
1245 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1272 MessageLoop::current()->Run(); 1246 MessageLoop::current()->Run();
1273 1247
1274 // METHOD_PUT should be used to upload data. 1248 // METHOD_PUT should be used to upload data.
1275 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1249 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1276 // Request should go to the upload URL. 1250 // Request should go to the upload URL.
1277 EXPECT_EQ(upload_url.path(), http_request_.relative_url); 1251 EXPECT_EQ(upload_url.path(), http_request_.relative_url);
1278 // Content-Range header should be added. 1252 // Content-Range header should be added.
1279 EXPECT_EQ("bytes 0-" + 1253 EXPECT_EQ("bytes 0-" +
1280 base::Int64ToString(kUploadContent.size() -1) + "/" + 1254 base::Int64ToString(kUploadContent.size() -1) + "/" +
1281 base::Int64ToString(kUploadContent.size()), 1255 base::Int64ToString(kUploadContent.size()),
(...skipping 28 matching lines...) Expand all
1310 kTestETag); 1284 kTestETag);
1311 1285
1312 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 1286 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
1313 &operation_registry_, 1287 &operation_registry_,
1314 request_context_getter_.get(), 1288 request_context_getter_.get(),
1315 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 1289 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
1316 &result_code, 1290 &result_code,
1317 &upload_url), 1291 &upload_url),
1318 initiate_params); 1292 initiate_params);
1319 1293
1320 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1294 initiate_operation->Start(
1321 base::Bind(&DoNothingForReAuthenticateCallback)); 1295 kTestGDataAuthToken, kTestUserAgent,
1296 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1322 MessageLoop::current()->Run(); 1297 MessageLoop::current()->Run();
1323 1298
1324 EXPECT_EQ(HTTP_SUCCESS, result_code); 1299 EXPECT_EQ(HTTP_SUCCESS, result_code);
1325 EXPECT_EQ(test_server_.GetURL("/upload_existing_file"), upload_url); 1300 EXPECT_EQ(test_server_.GetURL("/upload_existing_file"), upload_url);
1326 // For updating an existing file, METHOD_PUT should be used. 1301 // For updating an existing file, METHOD_PUT should be used.
1327 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1302 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1328 // convert=false should be passed as files should be uploaded as-is. 1303 // convert=false should be passed as files should be uploaded as-is.
1329 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo" 1304 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo"
1330 "?convert=false&v=3&alt=json", 1305 "?convert=false&v=3&alt=json",
1331 http_request_.relative_url); 1306 http_request_.relative_url);
(...skipping 25 matching lines...) Expand all
1357 scoped_ptr<ResourceEntry> new_entry; 1332 scoped_ptr<ResourceEntry> new_entry;
1358 1333
1359 ResumeUploadOperation* resume_operation = new ResumeUploadOperation( 1334 ResumeUploadOperation* resume_operation = new ResumeUploadOperation(
1360 &operation_registry_, 1335 &operation_registry_,
1361 request_context_getter_.get(), 1336 request_context_getter_.get(),
1362 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit, 1337 base::Bind(&CopyResultFromResumeUploadCallbackAndQuit,
1363 &response, 1338 &response,
1364 &new_entry), 1339 &new_entry),
1365 resume_params); 1340 resume_params);
1366 1341
1367 resume_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1342 resume_operation->Start(
1368 base::Bind(&DoNothingForReAuthenticateCallback)); 1343 kTestGDataAuthToken, kTestUserAgent,
1344 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1369 MessageLoop::current()->Run(); 1345 MessageLoop::current()->Run();
1370 1346
1371 // METHOD_PUT should be used to upload data. 1347 // METHOD_PUT should be used to upload data.
1372 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1348 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1373 // Request should go to the upload URL. 1349 // Request should go to the upload URL.
1374 EXPECT_EQ(upload_url.path(), http_request_.relative_url); 1350 EXPECT_EQ(upload_url.path(), http_request_.relative_url);
1375 // Content-Range header should be added. 1351 // Content-Range header should be added.
1376 EXPECT_EQ("bytes 0-" + 1352 EXPECT_EQ("bytes 0-" +
1377 base::Int64ToString(kUploadContent.size() -1) + "/" + 1353 base::Int64ToString(kUploadContent.size() -1) + "/" +
1378 base::Int64ToString(kUploadContent.size()), 1354 base::Int64ToString(kUploadContent.size()),
(...skipping 28 matching lines...) Expand all
1407 kWrongETag); 1383 kWrongETag);
1408 1384
1409 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation( 1385 InitiateUploadOperation* initiate_operation = new InitiateUploadOperation(
1410 &operation_registry_, 1386 &operation_registry_,
1411 request_context_getter_.get(), 1387 request_context_getter_.get(),
1412 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit, 1388 base::Bind(&CopyResultFromInitiateUploadCallbackAndQuit,
1413 &result_code, 1389 &result_code,
1414 &upload_url), 1390 &upload_url),
1415 initiate_params); 1391 initiate_params);
1416 1392
1417 initiate_operation->Start(kTestGDataAuthToken, kTestUserAgent, 1393 initiate_operation->Start(
1418 base::Bind(&DoNothingForReAuthenticateCallback)); 1394 kTestGDataAuthToken, kTestUserAgent,
1395 base::Bind(&test_util::DoNothingForReAuthenticateCallback));
1419 MessageLoop::current()->Run(); 1396 MessageLoop::current()->Run();
1420 1397
1421 EXPECT_EQ(HTTP_PRECONDITION, result_code); 1398 EXPECT_EQ(HTTP_PRECONDITION, result_code);
1422 // For updating an existing file, METHOD_PUT should be used. 1399 // For updating an existing file, METHOD_PUT should be used.
1423 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); 1400 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method);
1424 // convert=false should be passed as files should be uploaded as-is. 1401 // convert=false should be passed as files should be uploaded as-is.
1425 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo" 1402 EXPECT_EQ("/feeds/upload/create-session/default/private/full/file:foo"
1426 "?convert=false&v=3&alt=json", 1403 "?convert=false&v=3&alt=json",
1427 http_request_.relative_url); 1404 http_request_.relative_url);
1428 // Even though the body is empty, the content type should be set to 1405 // Even though the body is empty, the content type should be set to
1429 // "text/plain". 1406 // "text/plain".
1430 EXPECT_EQ("text/plain", http_request_.headers["Content-Type"]); 1407 EXPECT_EQ("text/plain", http_request_.headers["Content-Type"]);
1431 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]); 1408 EXPECT_EQ("text/plain", http_request_.headers["X-Upload-Content-Type"]);
1432 EXPECT_EQ(base::Int64ToString(kUploadContent.size()), 1409 EXPECT_EQ(base::Int64ToString(kUploadContent.size()),
1433 http_request_.headers["X-Upload-Content-Length"]); 1410 http_request_.headers["X-Upload-Content-Length"]);
1434 // For updating an existing file, an empty body should be attached (PUT 1411 // For updating an existing file, an empty body should be attached (PUT
1435 // requires a body) 1412 // requires a body)
1436 EXPECT_TRUE(http_request_.has_content); 1413 EXPECT_TRUE(http_request_.has_content);
1437 EXPECT_EQ("", http_request_.content); 1414 EXPECT_EQ("", http_request_.content);
1438 EXPECT_EQ(kWrongETag, http_request_.headers["If-Match"]); 1415 EXPECT_EQ(kWrongETag, http_request_.headers["If-Match"]);
1439 } 1416 }
1440 1417
1441 } // namespace google_apis 1418 } // namespace google_apis
OLDNEW
« no previous file with comments | « chrome/browser/google_apis/drive_api_operations_unittest.cc ('k') | chrome/browser/google_apis/test_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698