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

Side by Side Diff: components/subresource_filter/content/browser/content_ruleset_service_unittest.cc

Issue 2726523002: Pass Callback to TaskRunner by value and consume it on invocation (1) (Closed)
Patch Set: -unneeded callback_helpers.h Created 3 years, 9 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/subresource_filter/content/browser/content_ruleset_service. h" 5 #include "components/subresource_filter/content/browser/content_ruleset_service. h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <string> 9 #include <string>
10 #include <tuple> 10 #include <tuple>
(...skipping 29 matching lines...) Expand all
40 using MockClosureTarget = 40 using MockClosureTarget =
41 ::testing::StrictMock<::testing::MockFunction<void()>>; 41 ::testing::StrictMock<::testing::MockFunction<void()>>;
42 42
43 class TestContentBrowserClient : public ::content::ContentBrowserClient { 43 class TestContentBrowserClient : public ::content::ContentBrowserClient {
44 public: 44 public:
45 TestContentBrowserClient() {} 45 TestContentBrowserClient() {}
46 46
47 // ::content::ContentBrowserClient: 47 // ::content::ContentBrowserClient:
48 void PostAfterStartupTask(const tracked_objects::Location&, 48 void PostAfterStartupTask(const tracked_objects::Location&,
49 const scoped_refptr<base::TaskRunner>& task_runner, 49 const scoped_refptr<base::TaskRunner>& task_runner,
50 const base::Closure& task) override { 50 base::Closure task) override {
51 scoped_refptr<base::TaskRunner> ui_task_runner = 51 scoped_refptr<base::TaskRunner> ui_task_runner =
52 content::BrowserThread::GetTaskRunnerForThread( 52 content::BrowserThread::GetTaskRunnerForThread(
53 content::BrowserThread::UI); 53 content::BrowserThread::UI);
54 EXPECT_EQ(ui_task_runner, task_runner); 54 EXPECT_EQ(ui_task_runner, task_runner);
55 last_task_ = task; 55 last_task_ = std::move(task);
56 } 56 }
57 57
58 void RunAfterStartupTask() { 58 void RunAfterStartupTask() {
59 if (!last_task_.is_null()) 59 if (!last_task_.is_null())
60 last_task_.Run(); 60 std::move(last_task_).Run();
61 } 61 }
62 62
63 private: 63 private:
64 base::Closure last_task_; 64 base::Closure last_task_;
65 65
66 DISALLOW_COPY_AND_ASSIGN(TestContentBrowserClient); 66 DISALLOW_COPY_AND_ASSIGN(TestContentBrowserClient);
67 }; 67 };
68 68
69 class NotifyingMockRenderProcessHost : public content::MockRenderProcessHost { 69 class NotifyingMockRenderProcessHost : public content::MockRenderProcessHost {
70 public: 70 public:
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 182
183 MockClosureTarget mock_closure_target; 183 MockClosureTarget mock_closure_target;
184 service.PostAfterStartupTask(base::Bind( 184 service.PostAfterStartupTask(base::Bind(
185 &MockClosureTarget::Call, base::Unretained(&mock_closure_target))); 185 &MockClosureTarget::Call, base::Unretained(&mock_closure_target)));
186 186
187 EXPECT_CALL(mock_closure_target, Call()).Times(1); 187 EXPECT_CALL(mock_closure_target, Call()).Times(1);
188 browser_client()->RunAfterStartupTask(); 188 browser_client()->RunAfterStartupTask();
189 } 189 }
190 190
191 } // namespace subresource_filter 191 } // namespace subresource_filter
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698