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

Side by Side Diff: extensions/browser/event_listener_map_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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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 "extensions/browser/event_listener_map.h" 5 #include "extensions/browser/event_listener_map.h"
6 6
7 #include <utility>
8
7 #include "base/bind.h" 9 #include "base/bind.h"
8 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
9 #include "content/public/test/mock_render_process_host.h" 11 #include "content/public/test/mock_render_process_host.h"
10 #include "content/public/test/test_browser_context.h" 12 #include "content/public/test/test_browser_context.h"
11 #include "extensions/browser/event_router.h" 13 #include "extensions/browser/event_router.h"
12 #include "testing/gtest/include/gtest/gtest.h" 14 #include "testing/gtest/include/gtest/gtest.h"
13 #include "url/gurl.h" 15 #include "url/gurl.h"
14 16
15 using base::DictionaryValue; 17 using base::DictionaryValue;
16 using base::ListValue; 18 using base::ListValue;
(...skipping 30 matching lines...) Expand all
47 process_(new content::MockRenderProcessHost(browser_context_.get())) {} 49 process_(new content::MockRenderProcessHost(browser_context_.get())) {}
48 50
49 std::unique_ptr<DictionaryValue> CreateHostSuffixFilter( 51 std::unique_ptr<DictionaryValue> CreateHostSuffixFilter(
50 const std::string& suffix) { 52 const std::string& suffix) {
51 std::unique_ptr<DictionaryValue> filter(new DictionaryValue); 53 std::unique_ptr<DictionaryValue> filter(new DictionaryValue);
52 std::unique_ptr<ListValue> filter_list(new ListValue); 54 std::unique_ptr<ListValue> filter_list(new ListValue);
53 std::unique_ptr<DictionaryValue> filter_dict(new DictionaryValue); 55 std::unique_ptr<DictionaryValue> filter_dict(new DictionaryValue);
54 56
55 filter_dict->Set("hostSuffix", new StringValue(suffix)); 57 filter_dict->Set("hostSuffix", new StringValue(suffix));
56 58
57 filter_list->Append(filter_dict.release()); 59 filter_list->Append(std::move(filter_dict));
58 filter->Set("url", filter_list.release()); 60 filter->Set("url", filter_list.release());
59 return filter; 61 return filter;
60 } 62 }
61 63
62 std::unique_ptr<Event> CreateNamedEvent(const std::string& event_name) { 64 std::unique_ptr<Event> CreateNamedEvent(const std::string& event_name) {
63 return CreateEvent(event_name, GURL()); 65 return CreateEvent(event_name, GURL());
64 } 66 }
65 67
66 std::unique_ptr<Event> CreateEvent(const std::string& event_name, 68 std::unique_ptr<Event> CreateEvent(const std::string& event_name,
67 const GURL& url) { 69 const GURL& url) {
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 355
354 TEST_F(EventListenerMapTest, AddLazyListenersFromPreferences) { 356 TEST_F(EventListenerMapTest, AddLazyListenersFromPreferences) {
355 std::unique_ptr<DictionaryValue> filter1( 357 std::unique_ptr<DictionaryValue> filter1(
356 CreateHostSuffixFilter("google.com")); 358 CreateHostSuffixFilter("google.com"));
357 std::unique_ptr<DictionaryValue> filter2(CreateHostSuffixFilter("yahoo.com")); 359 std::unique_ptr<DictionaryValue> filter2(CreateHostSuffixFilter("yahoo.com"));
358 360
359 DictionaryValue filtered_listeners; 361 DictionaryValue filtered_listeners;
360 ListValue* filter_list = new ListValue(); 362 ListValue* filter_list = new ListValue();
361 filtered_listeners.Set(kEvent1Name, filter_list); 363 filtered_listeners.Set(kEvent1Name, filter_list);
362 364
363 filter_list->Append(filter1.release()); 365 filter_list->Append(std::move(filter1));
364 filter_list->Append(filter2.release()); 366 filter_list->Append(std::move(filter2));
365 367
366 listeners_->LoadFilteredLazyListeners(kExt1Id, filtered_listeners); 368 listeners_->LoadFilteredLazyListeners(kExt1Id, filtered_listeners);
367 369
368 std::unique_ptr<Event> event( 370 std::unique_ptr<Event> event(
369 CreateEvent(kEvent1Name, GURL("http://www.google.com"))); 371 CreateEvent(kEvent1Name, GURL("http://www.google.com")));
370 std::set<const EventListener*> targets(listeners_->GetEventListeners(*event)); 372 std::set<const EventListener*> targets(listeners_->GetEventListeners(*event));
371 ASSERT_EQ(1u, targets.size()); 373 ASSERT_EQ(1u, targets.size());
372 std::unique_ptr<EventListener> listener(EventListener::ForExtension( 374 std::unique_ptr<EventListener> listener(EventListener::ForExtension(
373 kEvent1Name, kExt1Id, NULL, CreateHostSuffixFilter("google.com"))); 375 kEvent1Name, kExt1Id, NULL, CreateHostSuffixFilter("google.com")));
374 ASSERT_TRUE((*targets.begin())->Equals(listener.get())); 376 ASSERT_TRUE((*targets.begin())->Equals(listener.get()));
(...skipping 11 matching lines...) Expand all
386 388
387 std::unique_ptr<Event> event( 389 std::unique_ptr<Event> event(
388 CreateEvent(kEvent1Name, GURL("http://www.google.com"))); 390 CreateEvent(kEvent1Name, GURL("http://www.google.com")));
389 std::set<const EventListener*> targets(listeners_->GetEventListeners(*event)); 391 std::set<const EventListener*> targets(listeners_->GetEventListeners(*event));
390 ASSERT_EQ(0u, targets.size()); 392 ASSERT_EQ(0u, targets.size());
391 } 393 }
392 394
393 } // namespace 395 } // namespace
394 396
395 } // namespace extensions 397 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698