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

Side by Side Diff: chrome/browser/extensions/api/copresence/copresence_api_unittest.cc

Issue 2051663003: base::ListValue::Append cleanup: pass unique_ptr instead of the released pointer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 6 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 "chrome/browser/extensions/api/copresence/copresence_api.h" 5 #include "chrome/browser/extensions/api/copresence/copresence_api.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/json/json_writer.h" 9 #include "base/json/json_writer.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 function->set_extension(extension()); 124 function->set_extension(extension());
125 function->set_browser_context(profile()); 125 function->set_browser_context(profile());
126 function->set_has_callback(true); 126 function->set_has_callback(true);
127 test_utils::RunFunction(function.get(), std::move(args_list), browser(), 127 test_utils::RunFunction(function.get(), std::move(args_list), browser(),
128 test_utils::NONE); 128 test_utils::NONE);
129 return function->GetResultList(); 129 return function->GetResultList();
130 } 130 }
131 131
132 bool ExecuteOperation(std::unique_ptr<Operation> operation) { 132 bool ExecuteOperation(std::unique_ptr<Operation> operation) {
133 ListValue* operation_list = new ListValue; 133 ListValue* operation_list = new ListValue;
134 operation_list->Append(operation->ToValue().release()); 134 operation_list->Append(operation->ToValue());
135 return ExecuteOperations(operation_list); 135 return ExecuteOperations(operation_list);
136 } 136 }
137 137
138 const ReportRequest& request_sent() const { 138 const ReportRequest& request_sent() const {
139 return copresence_manager_->request_; 139 return copresence_manager_->request_;
140 } 140 }
141 141
142 const std::string& app_id_sent() const { 142 const std::string& app_id_sent() const {
143 return copresence_manager_->app_id_; 143 return copresence_manager_->app_id_;
144 } 144 }
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 } 209 }
210 210
211 TEST_F(CopresenceApiUnittest, DefaultStrategies) { 211 TEST_F(CopresenceApiUnittest, DefaultStrategies) {
212 std::unique_ptr<Operation> publish_operation(new Operation); 212 std::unique_ptr<Operation> publish_operation(new Operation);
213 publish_operation->publish.reset(CreatePublish("pub")); 213 publish_operation->publish.reset(CreatePublish("pub"));
214 214
215 std::unique_ptr<Operation> subscribe_operation(new Operation); 215 std::unique_ptr<Operation> subscribe_operation(new Operation);
216 subscribe_operation->subscribe.reset(CreateSubscribe("sub")); 216 subscribe_operation->subscribe.reset(CreateSubscribe("sub"));
217 217
218 ListValue* operation_list = new ListValue; 218 ListValue* operation_list = new ListValue;
219 operation_list->Append(publish_operation->ToValue().release()); 219 operation_list->Append(publish_operation->ToValue());
220 operation_list->Append(subscribe_operation->ToValue().release()); 220 operation_list->Append(subscribe_operation->ToValue());
221 EXPECT_TRUE(ExecuteOperations(operation_list)); 221 EXPECT_TRUE(ExecuteOperations(operation_list));
222 222
223 EXPECT_EQ(BROADCAST_ONLY, 223 EXPECT_EQ(BROADCAST_ONLY,
224 request_sent().manage_messages_request().message_to_publish(0) 224 request_sent().manage_messages_request().message_to_publish(0)
225 .token_exchange_strategy().broadcast_scan_configuration()); 225 .token_exchange_strategy().broadcast_scan_configuration());
226 EXPECT_EQ(SCAN_ONLY, 226 EXPECT_EQ(SCAN_ONLY,
227 request_sent().manage_subscriptions_request().subscription(0) 227 request_sent().manage_subscriptions_request().subscription(0)
228 .token_exchange_strategy().broadcast_scan_configuration()); 228 .token_exchange_strategy().broadcast_scan_configuration());
229 } 229 }
230 230
231 TEST_F(CopresenceApiUnittest, LowPowerStrategy) { 231 TEST_F(CopresenceApiUnittest, LowPowerStrategy) {
232 std::unique_ptr<Operation> subscribe_operation(new Operation); 232 std::unique_ptr<Operation> subscribe_operation(new Operation);
233 subscribe_operation->subscribe.reset(CreateSubscribe("sub")); 233 subscribe_operation->subscribe.reset(CreateSubscribe("sub"));
234 subscribe_operation->subscribe->strategies.reset(new Strategy); 234 subscribe_operation->subscribe->strategies.reset(new Strategy);
235 subscribe_operation->subscribe->strategies->low_power.reset(new bool(true)); 235 subscribe_operation->subscribe->strategies->low_power.reset(new bool(true));
236 236
237 ListValue* operation_list = new ListValue; 237 ListValue* operation_list = new ListValue;
238 operation_list->Append(subscribe_operation->ToValue().release()); 238 operation_list->Append(subscribe_operation->ToValue());
239 EXPECT_TRUE(ExecuteOperations(operation_list)); 239 EXPECT_TRUE(ExecuteOperations(operation_list));
240 240
241 EXPECT_EQ(copresence::BROADCAST_SCAN_CONFIGURATION_UNKNOWN, 241 EXPECT_EQ(copresence::BROADCAST_SCAN_CONFIGURATION_UNKNOWN,
242 request_sent().manage_subscriptions_request().subscription(0) 242 request_sent().manage_subscriptions_request().subscription(0)
243 .token_exchange_strategy().broadcast_scan_configuration()); 243 .token_exchange_strategy().broadcast_scan_configuration());
244 } 244 }
245 245
246 TEST_F(CopresenceApiUnittest, UnPubSub) { 246 TEST_F(CopresenceApiUnittest, UnPubSub) {
247 // First we need to create a publish and a subscribe to cancel. 247 // First we need to create a publish and a subscribe to cancel.
248 std::unique_ptr<Operation> publish_operation(new Operation); 248 std::unique_ptr<Operation> publish_operation(new Operation);
249 std::unique_ptr<Operation> subscribe_operation(new Operation); 249 std::unique_ptr<Operation> subscribe_operation(new Operation);
250 publish_operation->publish.reset(CreatePublish("pub")); 250 publish_operation->publish.reset(CreatePublish("pub"));
251 subscribe_operation->subscribe.reset(CreateSubscribe("sub")); 251 subscribe_operation->subscribe.reset(CreateSubscribe("sub"));
252 ListValue* operation_list = new ListValue; 252 ListValue* operation_list = new ListValue;
253 operation_list->Append(publish_operation->ToValue().release()); 253 operation_list->Append(publish_operation->ToValue());
254 operation_list->Append(subscribe_operation->ToValue().release()); 254 operation_list->Append(subscribe_operation->ToValue());
255 EXPECT_TRUE(ExecuteOperations(operation_list)); 255 EXPECT_TRUE(ExecuteOperations(operation_list));
256 256
257 std::unique_ptr<Operation> unpublish_operation(new Operation); 257 std::unique_ptr<Operation> unpublish_operation(new Operation);
258 unpublish_operation->unpublish.reset(new UnpublishOperation); 258 unpublish_operation->unpublish.reset(new UnpublishOperation);
259 unpublish_operation->unpublish->unpublish_id = "pub"; 259 unpublish_operation->unpublish->unpublish_id = "pub";
260 260
261 std::unique_ptr<Operation> unsubscribe_operation(new Operation); 261 std::unique_ptr<Operation> unsubscribe_operation(new Operation);
262 unsubscribe_operation->unsubscribe.reset(new UnsubscribeOperation); 262 unsubscribe_operation->unsubscribe.reset(new UnsubscribeOperation);
263 unsubscribe_operation->unsubscribe->unsubscribe_id = "sub"; 263 unsubscribe_operation->unsubscribe->unsubscribe_id = "sub";
264 264
265 operation_list = new ListValue; 265 operation_list = new ListValue;
266 operation_list->Append(unpublish_operation->ToValue().release()); 266 operation_list->Append(unpublish_operation->ToValue());
267 operation_list->Append(unsubscribe_operation->ToValue().release()); 267 operation_list->Append(unsubscribe_operation->ToValue());
268 EXPECT_TRUE(ExecuteOperations(operation_list)); 268 EXPECT_TRUE(ExecuteOperations(operation_list));
269 269
270 std::string unpublish_id; 270 std::string unpublish_id;
271 ASSERT_TRUE(GetOnly( 271 ASSERT_TRUE(GetOnly(
272 request_sent().manage_messages_request().id_to_unpublish(), 272 request_sent().manage_messages_request().id_to_unpublish(),
273 &unpublish_id)); 273 &unpublish_id));
274 EXPECT_EQ("pub", unpublish_id); 274 EXPECT_EQ("pub", unpublish_id);
275 275
276 std::string unsubscribe_id; 276 std::string unsubscribe_id;
277 ASSERT_TRUE(GetOnly( 277 ASSERT_TRUE(GetOnly(
(...skipping 14 matching lines...) Expand all
292 std::unique_ptr<Operation> multi_operation(new Operation); 292 std::unique_ptr<Operation> multi_operation(new Operation);
293 multi_operation->publish.reset(CreatePublish("pub")); 293 multi_operation->publish.reset(CreatePublish("pub"));
294 multi_operation->subscribe.reset(CreateSubscribe("sub")); 294 multi_operation->subscribe.reset(CreateSubscribe("sub"));
295 295
296 EXPECT_FALSE(ExecuteOperation(std::move(multi_operation))); 296 EXPECT_FALSE(ExecuteOperation(std::move(multi_operation)));
297 } 297 }
298 298
299 } // namespace extensions 299 } // namespace extensions
300 300
301 // TODO(ckehoe): add tests for auth tokens and api key functionality 301 // TODO(ckehoe): add tests for auth tokens and api key functionality
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698