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

Side by Side Diff: google_apis/drive/base_requests_unittest.cc

Issue 1873663002: Convert //google_apis from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 "google_apis/drive/base_requests.h" 5 #include "google_apis/drive/base_requests.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8
9 #include <memory>
8 #include <utility> 10 #include <utility>
9 11
10 #include "base/bind.h" 12 #include "base/bind.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "base/message_loop/message_loop.h" 13 #include "base/message_loop/message_loop.h"
13 #include "base/run_loop.h" 14 #include "base/run_loop.h"
14 #include "base/values.h" 15 #include "base/values.h"
15 #include "google_apis/drive/drive_api_parser.h" 16 #include "google_apis/drive/drive_api_parser.h"
16 #include "google_apis/drive/drive_api_requests.h" 17 #include "google_apis/drive/drive_api_requests.h"
17 #include "google_apis/drive/dummy_auth_service.h" 18 #include "google_apis/drive/dummy_auth_service.h"
18 #include "google_apis/drive/request_sender.h" 19 #include "google_apis/drive/request_sender.h"
19 #include "google_apis/drive/test_util.h" 20 #include "google_apis/drive/test_util.h"
20 #include "net/test/embedded_test_server/embedded_test_server.h" 21 #include "net/test/embedded_test_server/embedded_test_server.h"
21 #include "net/test/embedded_test_server/http_request.h" 22 #include "net/test/embedded_test_server/http_request.h"
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 sender_.reset(new RequestSender(new DummyAuthService, 117 sender_.reset(new RequestSender(new DummyAuthService,
117 request_context_getter_.get(), 118 request_context_getter_.get(),
118 message_loop_.task_runner(), 119 message_loop_.task_runner(),
119 std::string() /* custom user agent */)); 120 std::string() /* custom user agent */));
120 121
121 ASSERT_TRUE(test_server_.Start()); 122 ASSERT_TRUE(test_server_.Start());
122 test_server_.RegisterRequestHandler( 123 test_server_.RegisterRequestHandler(
123 base::Bind(&BaseRequestsTest::HandleRequest, base::Unretained(this))); 124 base::Bind(&BaseRequestsTest::HandleRequest, base::Unretained(this)));
124 } 125 }
125 126
126 scoped_ptr<net::test_server::HttpResponse> HandleRequest( 127 std::unique_ptr<net::test_server::HttpResponse> HandleRequest(
127 const net::test_server::HttpRequest& request) { 128 const net::test_server::HttpRequest& request) {
128 scoped_ptr<net::test_server::BasicHttpResponse> response( 129 std::unique_ptr<net::test_server::BasicHttpResponse> response(
129 new net::test_server::BasicHttpResponse); 130 new net::test_server::BasicHttpResponse);
130 response->set_code(response_code_); 131 response->set_code(response_code_);
131 response->set_content(response_body_); 132 response->set_content(response_body_);
132 response->set_content_type("application/json"); 133 response->set_content_type("application/json");
133 return std::move(response); 134 return std::move(response);
134 } 135 }
135 136
136 base::MessageLoopForIO message_loop_; 137 base::MessageLoopForIO message_loop_;
137 scoped_refptr<net::TestURLRequestContextGetter> request_context_getter_; 138 scoped_refptr<net::TestURLRequestContextGetter> request_context_getter_;
138 scoped_ptr<RequestSender> sender_; 139 std::unique_ptr<RequestSender> sender_;
139 net::EmbeddedTestServer test_server_; 140 net::EmbeddedTestServer test_server_;
140 141
141 net::HttpStatusCode response_code_; 142 net::HttpStatusCode response_code_;
142 std::string response_body_; 143 std::string response_body_;
143 }; 144 };
144 145
145 typedef BaseRequestsTest MultipartUploadRequestBaseTest; 146 typedef BaseRequestsTest MultipartUploadRequestBaseTest;
146 147
147 TEST_F(BaseRequestsTest, ParseValidJson) { 148 TEST_F(BaseRequestsTest, ParseValidJson) {
148 scoped_ptr<base::Value> json(ParseJson(kValidJsonString)); 149 std::unique_ptr<base::Value> json(ParseJson(kValidJsonString));
149 150
150 base::DictionaryValue* root_dict = NULL; 151 base::DictionaryValue* root_dict = NULL;
151 ASSERT_TRUE(json); 152 ASSERT_TRUE(json);
152 ASSERT_TRUE(json->GetAsDictionary(&root_dict)); 153 ASSERT_TRUE(json->GetAsDictionary(&root_dict));
153 154
154 int int_value = 0; 155 int int_value = 0;
155 ASSERT_TRUE(root_dict->GetInteger("test", &int_value)); 156 ASSERT_TRUE(root_dict->GetInteger("test", &int_value));
156 EXPECT_EQ(123, int_value); 157 EXPECT_EQ(123, int_value);
157 } 158 }
158 159
(...skipping 26 matching lines...) Expand all
185 test_server_.base_url())); 186 test_server_.base_url()));
186 run_loop.Run(); 187 run_loop.Run();
187 188
188 // HTTP_FORBIDDEN (403) is overridden by the error reason. 189 // HTTP_FORBIDDEN (403) is overridden by the error reason.
189 EXPECT_EQ(HTTP_SERVICE_UNAVAILABLE, error); 190 EXPECT_EQ(HTTP_SERVICE_UNAVAILABLE, error);
190 } 191 }
191 192
192 TEST_F(MultipartUploadRequestBaseTest, Basic) { 193 TEST_F(MultipartUploadRequestBaseTest, Basic) {
193 response_code_ = net::HTTP_OK; 194 response_code_ = net::HTTP_OK;
194 response_body_ = "{\"kind\": \"drive#file\", \"id\": \"file_id\"}"; 195 response_body_ = "{\"kind\": \"drive#file\", \"id\": \"file_id\"}";
195 scoped_ptr<google_apis::FileResource> file; 196 std::unique_ptr<google_apis::FileResource> file;
196 DriveApiErrorCode error = DRIVE_OTHER_ERROR; 197 DriveApiErrorCode error = DRIVE_OTHER_ERROR;
197 base::RunLoop run_loop; 198 base::RunLoop run_loop;
198 const base::FilePath source_path = 199 const base::FilePath source_path =
199 google_apis::test_util::GetTestFilePath("drive/text.txt"); 200 google_apis::test_util::GetTestFilePath("drive/text.txt");
200 std::string upload_content_type; 201 std::string upload_content_type;
201 std::string upload_content_data; 202 std::string upload_content_data;
202 FakeMultipartUploadRequest* const multipart_request = 203 FakeMultipartUploadRequest* const multipart_request =
203 new FakeMultipartUploadRequest( 204 new FakeMultipartUploadRequest(
204 sender_->blocking_task_runner(), "{json:\"test\"}", "text/plain", 10, 205 sender_->blocking_task_runner(), "{json:\"test\"}", "text/plain", 10,
205 source_path, 206 source_path,
206 test_util::CreateQuitCallback( 207 test_util::CreateQuitCallback(
207 &run_loop, test_util::CreateCopyResultCallback(&error, &file)), 208 &run_loop, test_util::CreateCopyResultCallback(&error, &file)),
208 ProgressCallback(), test_server_.base_url(), &upload_content_type, 209 ProgressCallback(), test_server_.base_url(), &upload_content_type,
209 &upload_content_data); 210 &upload_content_data);
210 multipart_request->SetBoundaryForTesting("TESTBOUNDARY"); 211 multipart_request->SetBoundaryForTesting("TESTBOUNDARY");
211 scoped_ptr<drive::SingleBatchableDelegateRequest> request( 212 std::unique_ptr<drive::SingleBatchableDelegateRequest> request(
212 new drive::SingleBatchableDelegateRequest( 213 new drive::SingleBatchableDelegateRequest(sender_.get(),
213 sender_.get(), multipart_request)); 214 multipart_request));
214 sender_->StartRequestWithAuthRetry(request.release()); 215 sender_->StartRequestWithAuthRetry(request.release());
215 run_loop.Run(); 216 run_loop.Run();
216 EXPECT_EQ("multipart/related; boundary=TESTBOUNDARY", upload_content_type); 217 EXPECT_EQ("multipart/related; boundary=TESTBOUNDARY", upload_content_type);
217 EXPECT_EQ( 218 EXPECT_EQ(
218 "--TESTBOUNDARY\n" 219 "--TESTBOUNDARY\n"
219 "Content-Type: application/json\n" 220 "Content-Type: application/json\n"
220 "\n" 221 "\n"
221 "{json:\"test\"}\n" 222 "{json:\"test\"}\n"
222 "--TESTBOUNDARY\n" 223 "--TESTBOUNDARY\n"
223 "Content-Type: text/plain\n" 224 "Content-Type: text/plain\n"
224 "\n" 225 "\n"
225 "This is a sample file. I like chocolate and chips.\n" 226 "This is a sample file. I like chocolate and chips.\n"
226 "\n" 227 "\n"
227 "--TESTBOUNDARY--", 228 "--TESTBOUNDARY--",
228 upload_content_data); 229 upload_content_data);
229 ASSERT_EQ(HTTP_SUCCESS, error); 230 ASSERT_EQ(HTTP_SUCCESS, error);
230 EXPECT_EQ("file_id", file->file_id()); 231 EXPECT_EQ("file_id", file->file_id());
231 } 232 }
232 233
233 } // Namespace google_apis 234 } // Namespace google_apis
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698