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

Side by Side Diff: sync/internal_api/attachments/attachment_uploader_impl_unittest.cc

Issue 1866243002: Convert //sync 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "sync/internal_api/public/attachments/attachment_uploader_impl.h" 5 #include "sync/internal_api/public/attachments/attachment_uploader_impl.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 void TearDown() override; 201 void TearDown() override;
202 202
203 // Run the message loop until UploadDone has been invoked |num_uploads| times. 203 // Run the message loop until UploadDone has been invoked |num_uploads| times.
204 void RunAndWaitFor(int num_uploads); 204 void RunAndWaitFor(int num_uploads);
205 205
206 // Upload an attachment and have the server respond with |status_code|. 206 // Upload an attachment and have the server respond with |status_code|.
207 // 207 //
208 // Returns the attachment that was uploaded. 208 // Returns the attachment that was uploaded.
209 Attachment UploadAndRespondWith(const net::HttpStatusCode& status_code); 209 Attachment UploadAndRespondWith(const net::HttpStatusCode& status_code);
210 210
211 scoped_ptr<AttachmentUploader>& uploader(); 211 std::unique_ptr<AttachmentUploader>& uploader();
212 const AttachmentUploader::UploadCallback& upload_callback() const; 212 const AttachmentUploader::UploadCallback& upload_callback() const;
213 std::vector<HttpRequest>& http_requests_received(); 213 std::vector<HttpRequest>& http_requests_received();
214 std::vector<AttachmentUploader::UploadResult>& upload_results(); 214 std::vector<AttachmentUploader::UploadResult>& upload_results();
215 std::vector<AttachmentId>& attachment_ids(); 215 std::vector<AttachmentId>& attachment_ids();
216 MockOAuth2TokenService& token_service(); 216 MockOAuth2TokenService& token_service();
217 base::MessageLoopForIO& message_loop(); 217 base::MessageLoopForIO& message_loop();
218 RequestHandler& request_handler(); 218 RequestHandler& request_handler();
219 219
220 private: 220 private:
221 // An UploadCallback invoked by AttachmentUploaderImpl. 221 // An UploadCallback invoked by AttachmentUploaderImpl.
222 void UploadDone(const AttachmentUploader::UploadResult& result, 222 void UploadDone(const AttachmentUploader::UploadResult& result,
223 const AttachmentId& attachment_id); 223 const AttachmentId& attachment_id);
224 224
225 base::MessageLoopForIO message_loop_; 225 base::MessageLoopForIO message_loop_;
226 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; 226 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_;
227 scoped_ptr<RequestHandler> request_handler_; 227 std::unique_ptr<RequestHandler> request_handler_;
228 scoped_ptr<AttachmentUploader> uploader_; 228 std::unique_ptr<AttachmentUploader> uploader_;
229 AttachmentUploader::UploadCallback upload_callback_; 229 AttachmentUploader::UploadCallback upload_callback_;
230 net::EmbeddedTestServer server_; 230 net::EmbeddedTestServer server_;
231 // A closure that signals an upload has finished. 231 // A closure that signals an upload has finished.
232 base::Closure signal_upload_done_; 232 base::Closure signal_upload_done_;
233 std::vector<HttpRequest> http_requests_received_; 233 std::vector<HttpRequest> http_requests_received_;
234 std::vector<AttachmentUploader::UploadResult> upload_results_; 234 std::vector<AttachmentUploader::UploadResult> upload_results_;
235 std::vector<AttachmentId> attachment_ids_; 235 std::vector<AttachmentId> attachment_ids_;
236 scoped_ptr<MockOAuth2TokenService> token_service_; 236 std::unique_ptr<MockOAuth2TokenService> token_service_;
237 237
238 // Must be last data member. 238 // Must be last data member.
239 base::WeakPtrFactory<AttachmentUploaderImplTest> weak_ptr_factory_; 239 base::WeakPtrFactory<AttachmentUploaderImplTest> weak_ptr_factory_;
240 }; 240 };
241 241
242 // Handles HTTP requests received by the EmbeddedTestServer. 242 // Handles HTTP requests received by the EmbeddedTestServer.
243 // 243 //
244 // Responds with HTTP_OK by default. See |SetStatusCode|. 244 // Responds with HTTP_OK by default. See |SetStatusCode|.
245 class RequestHandler : public base::NonThreadSafe { 245 class RequestHandler : public base::NonThreadSafe {
246 public: 246 public:
247 // Construct a RequestHandler that will PostTask to |test| using 247 // Construct a RequestHandler that will PostTask to |test| using
248 // |test_task_runner|. 248 // |test_task_runner|.
249 RequestHandler( 249 RequestHandler(
250 const scoped_refptr<base::SingleThreadTaskRunner>& test_task_runner, 250 const scoped_refptr<base::SingleThreadTaskRunner>& test_task_runner,
251 const base::WeakPtr<AttachmentUploaderImplTest>& test); 251 const base::WeakPtr<AttachmentUploaderImplTest>& test);
252 252
253 ~RequestHandler(); 253 ~RequestHandler();
254 254
255 scoped_ptr<HttpResponse> HandleRequest(const HttpRequest& request); 255 std::unique_ptr<HttpResponse> HandleRequest(const HttpRequest& request);
256 256
257 // Set the HTTP status code to respond with. 257 // Set the HTTP status code to respond with.
258 void SetStatusCode(const net::HttpStatusCode& status_code); 258 void SetStatusCode(const net::HttpStatusCode& status_code);
259 259
260 // Returns the HTTP status code that will be used in responses. 260 // Returns the HTTP status code that will be used in responses.
261 net::HttpStatusCode GetStatusCode() const; 261 net::HttpStatusCode GetStatusCode() const;
262 262
263 private: 263 private:
264 // Protects status_code_. 264 // Protects status_code_.
265 mutable base::Lock mutex_; 265 mutable base::Lock mutex_;
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 const net::HttpStatusCode& status_code) { 323 const net::HttpStatusCode& status_code) {
324 token_service().AddAccount(kAccountId); 324 token_service().AddAccount(kAccountId);
325 request_handler().SetStatusCode(status_code); 325 request_handler().SetStatusCode(status_code);
326 scoped_refptr<base::RefCountedString> some_data(new base::RefCountedString); 326 scoped_refptr<base::RefCountedString> some_data(new base::RefCountedString);
327 some_data->data() = kAttachmentData; 327 some_data->data() = kAttachmentData;
328 Attachment attachment = Attachment::Create(some_data); 328 Attachment attachment = Attachment::Create(some_data);
329 uploader()->UploadAttachment(attachment, upload_callback()); 329 uploader()->UploadAttachment(attachment, upload_callback());
330 return attachment; 330 return attachment;
331 } 331 }
332 332
333 scoped_ptr<AttachmentUploader>& AttachmentUploaderImplTest::uploader() { 333 std::unique_ptr<AttachmentUploader>& AttachmentUploaderImplTest::uploader() {
334 return uploader_; 334 return uploader_;
335 } 335 }
336 336
337 const AttachmentUploader::UploadCallback& 337 const AttachmentUploader::UploadCallback&
338 AttachmentUploaderImplTest::upload_callback() const { 338 AttachmentUploaderImplTest::upload_callback() const {
339 return upload_callback_; 339 return upload_callback_;
340 } 340 }
341 341
342 std::vector<HttpRequest>& AttachmentUploaderImplTest::http_requests_received() { 342 std::vector<HttpRequest>& AttachmentUploaderImplTest::http_requests_received() {
343 return http_requests_received_; 343 return http_requests_received_;
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
381 : status_code_(net::HTTP_OK), 381 : status_code_(net::HTTP_OK),
382 test_task_runner_(test_task_runner), 382 test_task_runner_(test_task_runner),
383 test_(test) { 383 test_(test) {
384 DetachFromThread(); 384 DetachFromThread();
385 } 385 }
386 386
387 RequestHandler::~RequestHandler() { 387 RequestHandler::~RequestHandler() {
388 DetachFromThread(); 388 DetachFromThread();
389 } 389 }
390 390
391 scoped_ptr<HttpResponse> RequestHandler::HandleRequest( 391 std::unique_ptr<HttpResponse> RequestHandler::HandleRequest(
392 const HttpRequest& request) { 392 const HttpRequest& request) {
393 DCHECK(CalledOnValidThread()); 393 DCHECK(CalledOnValidThread());
394 test_task_runner_->PostTask( 394 test_task_runner_->PostTask(
395 FROM_HERE, 395 FROM_HERE,
396 base::Bind( 396 base::Bind(
397 &AttachmentUploaderImplTest::OnRequestReceived, test_, request)); 397 &AttachmentUploaderImplTest::OnRequestReceived, test_, request));
398 scoped_ptr<BasicHttpResponse> response(new BasicHttpResponse); 398 std::unique_ptr<BasicHttpResponse> response(new BasicHttpResponse);
399 response->set_code(GetStatusCode()); 399 response->set_code(GetStatusCode());
400 response->set_content_type("text/plain"); 400 response->set_content_type("text/plain");
401 return std::move(response); 401 return std::move(response);
402 } 402 }
403 403
404 void RequestHandler::SetStatusCode(const net::HttpStatusCode& status_code) { 404 void RequestHandler::SetStatusCode(const net::HttpStatusCode& status_code) {
405 base::AutoLock lock(mutex_); 405 base::AutoLock lock(mutex_);
406 status_code_ = status_code; 406 status_code_ = status_code;
407 } 407 }
408 408
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 scoped_refptr<base::RefCountedString> hello_world(new base::RefCountedString); 674 scoped_refptr<base::RefCountedString> hello_world(new base::RefCountedString);
675 hello_world->data() = "hello world"; 675 hello_world->data() = "hello world";
676 EXPECT_EQ("yZRlqg==", AttachmentUploaderImpl::FormatCrc32cHash( 676 EXPECT_EQ("yZRlqg==", AttachmentUploaderImpl::FormatCrc32cHash(
677 ComputeCrc32c(hello_world))); 677 ComputeCrc32c(hello_world)));
678 } 678 }
679 679
680 // TODO(maniscalco): Add test case for when we are uploading an attachment that 680 // TODO(maniscalco): Add test case for when we are uploading an attachment that
681 // already exists. 409 Conflict? (bug 379825) 681 // already exists. 409 Conflict? (bug 379825)
682 682
683 } // namespace syncer 683 } // namespace syncer
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698