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

Side by Side Diff: google_apis/drive/test_util.h

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 #ifndef GOOGLE_APIS_DRIVE_TEST_UTIL_H_ 5 #ifndef GOOGLE_APIS_DRIVE_TEST_UTIL_H_
6 #define GOOGLE_APIS_DRIVE_TEST_UTIL_H_ 6 #define GOOGLE_APIS_DRIVE_TEST_UTIL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
11 #include <memory>
11 #include <string> 12 #include <string>
12 #include <utility> 13 #include <utility>
13 #include <vector> 14 #include <vector>
14 15
15 #include "base/bind.h" 16 #include "base/bind.h"
16 #include "base/callback.h" 17 #include "base/callback.h"
17 #include "base/macros.h" 18 #include "base/macros.h"
18 #include "base/memory/scoped_ptr.h"
19 #include "base/memory/scoped_vector.h" 19 #include "base/memory/scoped_vector.h"
20 #include "google_apis/drive/base_requests.h" 20 #include "google_apis/drive/base_requests.h"
21 #include "google_apis/drive/drive_api_error_codes.h" 21 #include "google_apis/drive/drive_api_error_codes.h"
22 #include "google_apis/drive/task_util.h" 22 #include "google_apis/drive/task_util.h"
23 23
24 class GURL; 24 class GURL;
25 25
26 namespace base { 26 namespace base {
27 class FilePath; 27 class FilePath;
28 class RunLoop; 28 class RunLoop;
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 // used. 74 // used.
75 // Returns true on success with the created file's |path| and |data|, otherwise 75 // Returns true on success with the created file's |path| and |data|, otherwise
76 // false. 76 // false.
77 bool CreateFileOfSpecifiedSize(const base::FilePath& temp_dir, 77 bool CreateFileOfSpecifiedSize(const base::FilePath& temp_dir,
78 size_t size, 78 size_t size,
79 base::FilePath* path, 79 base::FilePath* path,
80 std::string* data); 80 std::string* data);
81 81
82 // Loads a test JSON file as a base::Value, from a test file stored under 82 // Loads a test JSON file as a base::Value, from a test file stored under
83 // chrome/test/data. 83 // chrome/test/data.
84 scoped_ptr<base::Value> LoadJSONFile(const std::string& relative_path); 84 std::unique_ptr<base::Value> LoadJSONFile(const std::string& relative_path);
85 85
86 // Returns a HttpResponse created from the given file path. 86 // Returns a HttpResponse created from the given file path.
87 scoped_ptr<net::test_server::BasicHttpResponse> CreateHttpResponseFromFile( 87 std::unique_ptr<net::test_server::BasicHttpResponse> CreateHttpResponseFromFile(
88 const base::FilePath& file_path); 88 const base::FilePath& file_path);
89 89
90 // Handles a request for downloading a file. Reads a file from the test 90 // Handles a request for downloading a file. Reads a file from the test
91 // directory and returns the content. Also, copies the |request| to the memory 91 // directory and returns the content. Also, copies the |request| to the memory
92 // pointed by |out_request|. 92 // pointed by |out_request|.
93 // |base_url| must be set to the server's base url. 93 // |base_url| must be set to the server's base url.
94 scoped_ptr<net::test_server::HttpResponse> HandleDownloadFileRequest( 94 std::unique_ptr<net::test_server::HttpResponse> HandleDownloadFileRequest(
95 const GURL& base_url, 95 const GURL& base_url,
96 net::test_server::HttpRequest* out_request, 96 net::test_server::HttpRequest* out_request,
97 const net::test_server::HttpRequest& request); 97 const net::test_server::HttpRequest& request);
98 98
99 // Parses a value of Content-Range header, which looks like 99 // Parses a value of Content-Range header, which looks like
100 // "bytes <start_position>-<end_position>/<length>". 100 // "bytes <start_position>-<end_position>/<length>".
101 // Returns true on success. 101 // Returns true on success.
102 bool ParseContentRangeHeader(const std::string& value, 102 bool ParseContentRangeHeader(const std::string& value,
103 int64_t* start_position, 103 int64_t* start_position,
104 int64_t* end_position, 104 int64_t* end_position,
(...skipping 25 matching lines...) Expand all
130 // Following helper templates are to support Chrome's move semantics. 130 // Following helper templates are to support Chrome's move semantics.
131 // Their goal is defining helper methods which are similar to: 131 // Their goal is defining helper methods which are similar to:
132 // void CopyResultCallback1(T1* out1, T1&& in1) 132 // void CopyResultCallback1(T1* out1, T1&& in1)
133 // void CopyResultCallback2(T1* out1, T2* out2, T1&& in1, T2&& in2) 133 // void CopyResultCallback2(T1* out1, T2* out2, T1&& in1, T2&& in2)
134 // : 134 // :
135 // in C++11. 135 // in C++11.
136 136
137 // Declare if the type is movable or not. Currently limited to scoped_ptr only. 137 // Declare if the type is movable or not. Currently limited to scoped_ptr only.
138 // We can add more types upon the usage. 138 // We can add more types upon the usage.
139 template<typename T> struct IsMovable : std::false_type {}; 139 template<typename T> struct IsMovable : std::false_type {};
140 template<typename T, typename D> 140 template <typename T, typename D>
141 struct IsMovable<scoped_ptr<T, D> > : std::true_type {}; 141 struct IsMovable<std::unique_ptr<T, D>> : std::true_type {};
142 142
143 // InType is const T& if |UseConstRef| is true, otherwise |T|. 143 // InType is const T& if |UseConstRef| is true, otherwise |T|.
144 template<bool UseConstRef, typename T> struct InTypeHelper { 144 template<bool UseConstRef, typename T> struct InTypeHelper {
145 typedef const T& InType; 145 typedef const T& InType;
146 }; 146 };
147 template<typename T> struct InTypeHelper<false, T> { 147 template<typename T> struct InTypeHelper<false, T> {
148 typedef T InType; 148 typedef T InType;
149 }; 149 };
150 150
151 // Simulates the std::move function in C++11. We use pointer here for argument, 151 // Simulates the std::move function in C++11. We use pointer here for argument,
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 TestGetContentCallback(); 281 TestGetContentCallback();
282 ~TestGetContentCallback(); 282 ~TestGetContentCallback();
283 283
284 const GetContentCallback& callback() const { return callback_; } 284 const GetContentCallback& callback() const { return callback_; }
285 const ScopedVector<std::string>& data() const { return data_; } 285 const ScopedVector<std::string>& data() const { return data_; }
286 ScopedVector<std::string>* mutable_data() { return &data_; } 286 ScopedVector<std::string>* mutable_data() { return &data_; }
287 std::string GetConcatenatedData() const; 287 std::string GetConcatenatedData() const;
288 288
289 private: 289 private:
290 void OnGetContent(google_apis::DriveApiErrorCode error, 290 void OnGetContent(google_apis::DriveApiErrorCode error,
291 scoped_ptr<std::string> data); 291 std::unique_ptr<std::string> data);
292 292
293 const GetContentCallback callback_; 293 const GetContentCallback callback_;
294 ScopedVector<std::string> data_; 294 ScopedVector<std::string> data_;
295 295
296 DISALLOW_COPY_AND_ASSIGN(TestGetContentCallback); 296 DISALLOW_COPY_AND_ASSIGN(TestGetContentCallback);
297 }; 297 };
298 298
299 } // namespace test_util 299 } // namespace test_util
300 } // namespace google_apis 300 } // namespace google_apis
301 301
302 #endif // GOOGLE_APIS_DRIVE_TEST_UTIL_H_ 302 #endif // GOOGLE_APIS_DRIVE_TEST_UTIL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698