| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/files/file_path.h" | 6 #include "base/files/file_path.h" |
| 7 #include "base/message_loop_proxy.h" | 7 #include "base/message_loop_proxy.h" |
| 8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
| 9 #include "base/values.h" | 9 #include "base/values.h" |
| 10 #include "chrome/browser/google_apis/drive_api_operations.h" | 10 #include "chrome/browser/google_apis/drive_api_operations.h" |
| 11 #include "chrome/browser/google_apis/drive_api_parser.h" | 11 #include "chrome/browser/google_apis/drive_api_parser.h" |
| 12 #include "chrome/browser/google_apis/drive_api_url_generator.h" | 12 #include "chrome/browser/google_apis/drive_api_url_generator.h" |
| 13 #include "chrome/browser/google_apis/operation_registry.h" | 13 #include "chrome/browser/google_apis/operation_registry.h" |
| 14 #include "chrome/browser/google_apis/task_util.h" |
| 14 #include "chrome/browser/google_apis/test_server/http_request.h" | 15 #include "chrome/browser/google_apis/test_server/http_request.h" |
| 15 #include "chrome/browser/google_apis/test_server/http_response.h" | 16 #include "chrome/browser/google_apis/test_server/http_response.h" |
| 16 #include "chrome/browser/google_apis/test_server/http_server.h" | 17 #include "chrome/browser/google_apis/test_server/http_server.h" |
| 17 #include "chrome/browser/google_apis/test_util.h" | 18 #include "chrome/browser/google_apis/test_util.h" |
| 18 #include "content/public/test/test_browser_thread.h" | 19 #include "content/public/test/test_browser_thread.h" |
| 19 #include "net/url_request/url_request_test_util.h" | 20 #include "net/url_request/url_request_test_util.h" |
| 20 #include "testing/gtest/include/gtest/gtest.h" | 21 #include "testing/gtest/include/gtest/gtest.h" |
| 21 | 22 |
| 22 namespace google_apis { | 23 namespace google_apis { |
| 23 | 24 |
| 24 namespace { | 25 namespace { |
| 25 | 26 |
| 26 const char kTestDriveApiAuthToken[] = "testtoken"; | 27 const char kTestDriveApiAuthToken[] = "testtoken"; |
| 27 const char kTestETag[] = "test_etag"; | 28 const char kTestETag[] = "test_etag"; |
| 28 const char kTestUserAgent[] = "test-user-agent"; | 29 const char kTestUserAgent[] = "test-user-agent"; |
| 29 | 30 |
| 30 const char kTestChildrenResponse[] = | 31 const char kTestChildrenResponse[] = |
| 31 "{\n" | 32 "{\n" |
| 32 "\"kind\": \"drive#childReference\",\n" | 33 "\"kind\": \"drive#childReference\",\n" |
| 33 "\"id\": \"resource_id\",\n" | 34 "\"id\": \"resource_id\",\n" |
| 34 "\"selfLink\": \"self_link\",\n" | 35 "\"selfLink\": \"self_link\",\n" |
| 35 "\"childLink\": \"child_link\",\n" | 36 "\"childLink\": \"child_link\",\n" |
| 36 "}\n"; | 37 "}\n"; |
| 37 | 38 |
| 38 const char kTestUploadExistingFilePath[] = "/upload/existingfile/path"; | 39 const char kTestUploadExistingFilePath[] = "/upload/existingfile/path"; |
| 39 const char kTestUploadNewFilePath[] = "/upload/newfile/path"; | 40 const char kTestUploadNewFilePath[] = "/upload/newfile/path"; |
| 40 | 41 |
| 41 void CopyResultsFromGetAboutResourceCallbackAndQuit( | |
| 42 GDataErrorCode* error_out, | |
| 43 scoped_ptr<AboutResource>* about_resource_out, | |
| 44 const GDataErrorCode error_in, | |
| 45 scoped_ptr<AboutResource> about_resource_in) { | |
| 46 *error_out = error_in; | |
| 47 *about_resource_out = about_resource_in.Pass(); | |
| 48 MessageLoop::current()->Quit(); | |
| 49 } | |
| 50 | |
| 51 void CopyResultsFromFileResourceCallbackAndQuit( | 42 void CopyResultsFromFileResourceCallbackAndQuit( |
| 52 GDataErrorCode* error_out, | 43 GDataErrorCode* error_out, |
| 53 scoped_ptr<FileResource>* file_resource_out, | 44 scoped_ptr<FileResource>* file_resource_out, |
| 54 const GDataErrorCode error_in, | 45 const GDataErrorCode error_in, |
| 55 scoped_ptr<FileResource> file_resource_in) { | 46 scoped_ptr<FileResource> file_resource_in) { |
| 56 *error_out = error_in; | 47 *error_out = error_in; |
| 57 *file_resource_out = file_resource_in.Pass(); | 48 *file_resource_out = file_resource_in.Pass(); |
| 58 MessageLoop::current()->Quit(); | 49 MessageLoop::current()->Quit(); |
| 59 } | 50 } |
| 60 | 51 |
| (...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 expected_data_file_path_ = test_util::GetTestFilePath( | 323 expected_data_file_path_ = test_util::GetTestFilePath( |
| 333 "chromeos/drive/about.json"); | 324 "chromeos/drive/about.json"); |
| 334 | 325 |
| 335 GDataErrorCode error = GDATA_OTHER_ERROR; | 326 GDataErrorCode error = GDATA_OTHER_ERROR; |
| 336 scoped_ptr<AboutResource> feed_data; | 327 scoped_ptr<AboutResource> feed_data; |
| 337 | 328 |
| 338 GetAboutOperation* operation = new GetAboutOperation( | 329 GetAboutOperation* operation = new GetAboutOperation( |
| 339 &operation_registry_, | 330 &operation_registry_, |
| 340 request_context_getter_.get(), | 331 request_context_getter_.get(), |
| 341 *url_generator_, | 332 *url_generator_, |
| 342 base::Bind(&CopyResultsFromGetAboutResourceCallbackAndQuit, | 333 CreateComposedCallback( |
| 343 &error, &feed_data)); | 334 base::Bind(&test_util::RunAndQuit), |
| 335 test_util::CreateCopyResultCallback(&error, &feed_data))); |
| 344 operation->Start(kTestDriveApiAuthToken, kTestUserAgent, | 336 operation->Start(kTestDriveApiAuthToken, kTestUserAgent, |
| 345 base::Bind(&test_util::DoNothingForReAuthenticateCallback)); | 337 base::Bind(&test_util::DoNothingForReAuthenticateCallback)); |
| 346 MessageLoop::current()->Run(); | 338 MessageLoop::current()->Run(); |
| 347 | 339 |
| 348 EXPECT_EQ(HTTP_SUCCESS, error); | 340 EXPECT_EQ(HTTP_SUCCESS, error); |
| 349 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); | 341 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); |
| 350 EXPECT_EQ("/drive/v2/about", http_request_.relative_url); | 342 EXPECT_EQ("/drive/v2/about", http_request_.relative_url); |
| 351 | 343 |
| 352 scoped_ptr<AboutResource> expected( | 344 scoped_ptr<AboutResource> expected( |
| 353 AboutResource::CreateFrom( | 345 AboutResource::CreateFrom( |
| (...skipping 10 matching lines...) Expand all Loading... |
| 364 expected_data_file_path_ = test_util::GetTestFilePath( | 356 expected_data_file_path_ = test_util::GetTestFilePath( |
| 365 "chromeos/gdata/testfile.txt"); | 357 "chromeos/gdata/testfile.txt"); |
| 366 | 358 |
| 367 GDataErrorCode error = GDATA_OTHER_ERROR; | 359 GDataErrorCode error = GDATA_OTHER_ERROR; |
| 368 scoped_ptr<AboutResource> feed_data; | 360 scoped_ptr<AboutResource> feed_data; |
| 369 | 361 |
| 370 GetAboutOperation* operation = new GetAboutOperation( | 362 GetAboutOperation* operation = new GetAboutOperation( |
| 371 &operation_registry_, | 363 &operation_registry_, |
| 372 request_context_getter_.get(), | 364 request_context_getter_.get(), |
| 373 *url_generator_, | 365 *url_generator_, |
| 374 base::Bind(&CopyResultsFromGetAboutResourceCallbackAndQuit, | 366 CreateComposedCallback( |
| 375 &error, &feed_data)); | 367 base::Bind(&test_util::RunAndQuit), |
| 368 test_util::CreateCopyResultCallback(&error, &feed_data))); |
| 376 operation->Start(kTestDriveApiAuthToken, kTestUserAgent, | 369 operation->Start(kTestDriveApiAuthToken, kTestUserAgent, |
| 377 base::Bind(&test_util::DoNothingForReAuthenticateCallback)); | 370 base::Bind(&test_util::DoNothingForReAuthenticateCallback)); |
| 378 MessageLoop::current()->Run(); | 371 MessageLoop::current()->Run(); |
| 379 | 372 |
| 380 // "parse error" should be returned, and the feed should be NULL. | 373 // "parse error" should be returned, and the feed should be NULL. |
| 381 EXPECT_EQ(GDATA_PARSE_ERROR, error); | 374 EXPECT_EQ(GDATA_PARSE_ERROR, error); |
| 382 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); | 375 EXPECT_EQ(test_server::METHOD_GET, http_request_.method); |
| 383 EXPECT_EQ("/drive/v2/about", http_request_.relative_url); | 376 EXPECT_EQ("/drive/v2/about", http_request_.relative_url); |
| 384 EXPECT_FALSE(feed_data.get()); | 377 EXPECT_FALSE(feed_data.get()); |
| 385 } | 378 } |
| (...skipping 685 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1071 EXPECT_EQ("Conflicting-etag", http_request_.headers["If-Match"]); | 1064 EXPECT_EQ("Conflicting-etag", http_request_.headers["If-Match"]); |
| 1072 | 1065 |
| 1073 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); | 1066 EXPECT_EQ(test_server::METHOD_PUT, http_request_.method); |
| 1074 EXPECT_EQ("/upload/drive/v2/files/resource_id?uploadType=resumable", | 1067 EXPECT_EQ("/upload/drive/v2/files/resource_id?uploadType=resumable", |
| 1075 http_request_.relative_url); | 1068 http_request_.relative_url); |
| 1076 EXPECT_TRUE(http_request_.has_content); | 1069 EXPECT_TRUE(http_request_.has_content); |
| 1077 EXPECT_TRUE(http_request_.content.empty()); | 1070 EXPECT_TRUE(http_request_.content.empty()); |
| 1078 } | 1071 } |
| 1079 | 1072 |
| 1080 } // namespace google_apis | 1073 } // namespace google_apis |
| OLD | NEW |