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

Side by Side Diff: chrome/browser/browsing_data/browsing_data_remover_test_util.cc

Issue 2827523003: Move BrowsingDataRemover to content/ (Closed)
Patch Set: Rebase over codereview.chromium.org/2815913005 Created 3 years, 7 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h"
6
7 BrowsingDataRemoverCompletionObserver::BrowsingDataRemoverCompletionObserver(
8 BrowsingDataRemover* remover)
9 : message_loop_runner_(new content::MessageLoopRunner), observer_(this) {
10 observer_.Add(remover);
11 }
12
13 BrowsingDataRemoverCompletionObserver::
14 ~BrowsingDataRemoverCompletionObserver() {}
15
16 void BrowsingDataRemoverCompletionObserver::BlockUntilCompletion() {
17 message_loop_runner_->Run();
18 }
19
20 void BrowsingDataRemoverCompletionObserver::OnBrowsingDataRemoverDone() {
21 observer_.RemoveAll();
22 message_loop_runner_->Quit();
23 }
24
25 BrowsingDataRemoverCompletionInhibitor::BrowsingDataRemoverCompletionInhibitor(
26 BrowsingDataRemover* remover)
27 : remover_(remover), message_loop_runner_(new content::MessageLoopRunner) {
28 DCHECK(remover);
29 remover_->SetWouldCompleteCallbackForTesting(
30 base::Bind(&BrowsingDataRemoverCompletionInhibitor::
31 OnBrowsingDataRemoverWouldComplete,
32 base::Unretained(this)));
33 }
34
35 BrowsingDataRemoverCompletionInhibitor::
36 ~BrowsingDataRemoverCompletionInhibitor() {
37 Reset();
38 }
39
40 void BrowsingDataRemoverCompletionInhibitor::Reset() {
41 if (!remover_)
42 return;
43 remover_->SetWouldCompleteCallbackForTesting(
44 base::Callback<void(const base::Closure&)>());
45 remover_ = nullptr;
46 }
47
48 void BrowsingDataRemoverCompletionInhibitor::BlockUntilNearCompletion() {
49 message_loop_runner_->Run();
50 message_loop_runner_ = new content::MessageLoopRunner;
51 }
52
53 void BrowsingDataRemoverCompletionInhibitor::ContinueToCompletion() {
54 DCHECK(!continue_to_completion_callback_.is_null());
55 continue_to_completion_callback_.Run();
56 continue_to_completion_callback_.Reset();
57 }
58
59 void BrowsingDataRemoverCompletionInhibitor::OnBrowsingDataRemoverWouldComplete(
60 const base::Closure& continue_to_completion) {
61 DCHECK(continue_to_completion_callback_.is_null());
62 continue_to_completion_callback_ = continue_to_completion;
63 message_loop_runner_->Quit();
64 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698