Commit b39b70ca authored by Yi Gu's avatar Yi Gu Committed by Chromium LUCI CQ

[CodeHealth] Convert components/permissions/ from base::Bind and base::Callback to Once/Repeating

Bug: 1152263
Change-Id: Iea5a9ae4af34b34267f4c4a04b85ea4c3c715b5f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2585640
Commit-Queue: Balazs Engedy <engedy@chromium.org>
Reviewed-by: default avatarBalazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#836571}
parent fd82cbf8
......@@ -72,8 +72,7 @@ class TestPermissionContext : public PermissionContextBase {
// Null check required here as the quit_closure_ can also be run and reset
// first from within DecidePermission.
if (quit_closure_) {
quit_closure_.Run();
quit_closure_.Reset();
std::move(quit_closure_).Run();
}
}
......@@ -107,21 +106,19 @@ class TestPermissionContext : public PermissionContextBase {
embedding_origin, user_gesture,
std::move(callback));
if (respond_permission_) {
respond_permission_.Run();
respond_permission_.Reset();
std::move(respond_permission_).Run();
} else {
// Stop the run loop from spinning indefinitely if no response callback
// has been set, as is the case with TestParallelRequests.
quit_closure_.Run();
quit_closure_.Reset();
std::move(quit_closure_).Run();
}
}
// Set the callback to run if the permission is being responded to in the
// test. This is left empty where no response is needed, such as in parallel
// requests, invalid origin, and killswitch.
void SetRespondPermissionCallback(base::Closure callback) {
respond_permission_ = callback;
void SetRespondPermissionCallback(base::OnceClosure callback) {
respond_permission_ = std::move(callback);
}
protected:
......@@ -136,10 +133,10 @@ class TestPermissionContext : public PermissionContextBase {
private:
std::vector<ContentSetting> decisions_;
bool tab_context_updated_;
base::Closure quit_closure_;
base::OnceClosure quit_closure_;
// Callback for responding to a permission once the request has been completed
// (valid URL, kill switch disabled)
base::Closure respond_permission_;
base::OnceClosure respond_permission_;
DISALLOW_COPY_AND_ASSIGN(TestPermissionContext);
};
......@@ -222,13 +219,13 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
const PermissionRequestID id(
web_contents()->GetMainFrame()->GetProcess()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(), -1);
permission_context.SetRespondPermissionCallback(base::Bind(
permission_context.SetRespondPermissionCallback(base::BindOnce(
&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url, decision));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
ASSERT_EQ(1u, permission_context.decisions().size());
EXPECT_EQ(decision, permission_context.decisions()[0]);
EXPECT_TRUE(permission_context.tab_context_updated());
......@@ -323,14 +320,14 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetRoutingID(), i);
permission_context.SetRespondPermissionCallback(
base::Bind(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
base::BindOnce(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
histograms.ExpectTotalCount(
"Permissions.Prompt.Dismissed.PriorDismissCount2." +
PermissionUtil::GetPermissionString(content_settings_type),
......@@ -375,14 +372,14 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetRoutingID(), -1);
permission_context.SetRespondPermissionCallback(
base::Bind(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
base::BindOnce(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
PermissionResult result = permission_context.GetPermissionStatus(
nullptr /* render_frame_host */, url, url);
......@@ -414,13 +411,13 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetRoutingID(), i);
permission_context.SetRespondPermissionCallback(
base::Bind(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
base::BindOnce(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
histograms.ExpectTotalCount(
"Permissions.Prompt.Dismissed.PriorDismissCount2.Geolocation",
i + 1);
......@@ -490,13 +487,13 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetProcess()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(), i);
permission_context.SetRespondPermissionCallback(
base::Bind(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
base::BindOnce(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ASK));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
EXPECT_EQ(1u, permission_context.decisions().size());
ASSERT_EQ(CONTENT_SETTING_ASK, permission_context.decisions()[0]);
......@@ -552,8 +549,8 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetRoutingID(), -1);
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
ASSERT_EQ(1u, permission_context.decisions().size());
EXPECT_EQ(CONTENT_SETTING_BLOCK, permission_context.decisions()[0]);
......@@ -575,14 +572,14 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
web_contents()->GetMainFrame()->GetProcess()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(), -1);
permission_context.SetRespondPermissionCallback(
base::Bind(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ALLOW));
base::BindOnce(&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id, url,
CONTENT_SETTING_ALLOW));
permission_context.RequestPermission(
web_contents(), id, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
ASSERT_EQ(1u, permission_context.decisions().size());
EXPECT_EQ(CONTENT_SETTING_ALLOW, permission_context.decisions()[0]);
......@@ -662,19 +659,19 @@ class PermissionContextBaseTests : public content::RenderViewHostTestHarness {
// Request a permission without setting the callback to DecidePermission.
permission_context.RequestPermission(
web_contents(), id0, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
EXPECT_EQ(0u, permission_context.decisions().size());
// Set the callback, and make a second permission request.
permission_context.SetRespondPermissionCallback(base::Bind(
permission_context.SetRespondPermissionCallback(base::BindOnce(
&PermissionContextBaseTests::RespondToPermission,
base::Unretained(this), &permission_context, id0, url, response));
permission_context.RequestPermission(
web_contents(), id1, url, true /* user_gesture */,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
base::BindOnce(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
ASSERT_EQ(2u, permission_context.decisions().size());
EXPECT_EQ(response, permission_context.decisions()[0]);
......
......@@ -406,7 +406,7 @@ void PermissionDecisionAutoBlocker::RemoveEmbargoAndResetCounts(
}
void PermissionDecisionAutoBlocker::RemoveEmbargoAndResetCounts(
base::Callback<bool(const GURL& url)> filter) {
base::RepeatingCallback<bool(const GURL& url)> filter) {
std::unique_ptr<ContentSettingsForOneType> settings(
new ContentSettingsForOneType);
settings_map_->GetSettingsForOneType(
......
......@@ -113,7 +113,7 @@ class PermissionDecisionAutoBlocker : public KeyedService {
// Same as above, but cleans the slate for all permissions and for all URLs
// matching |filter|.
void RemoveEmbargoAndResetCounts(
base::Callback<bool(const GURL& url)> filter);
base::RepeatingCallback<bool(const GURL& url)> filter);
static const char* GetPromptDismissCountKeyForTesting();
......
......@@ -48,12 +48,11 @@ class PermissionDecisionAutoBlockerUnitTest : public testing::Test {
&browser_context_);
}
void SetLastEmbargoStatus(base::Closure quit_closure, bool status) {
void SetLastEmbargoStatus(base::OnceClosure quit_closure, bool status) {
callback_was_run_ = true;
last_embargoed_status_ = status;
if (quit_closure) {
quit_closure.Run();
quit_closure.Reset();
std::move(quit_closure).Run();
}
}
......@@ -307,7 +306,8 @@ TEST_F(PermissionDecisionAutoBlockerUnitTest, RemoveEmbargoAndResetCounts_All) {
EXPECT_EQ(
2, autoblocker()->GetIgnoreCount(url2, ContentSettingsType::GEOLOCATION));
autoblocker()->RemoveEmbargoAndResetCounts(base::Bind(&FilterGoogle));
autoblocker()->RemoveEmbargoAndResetCounts(
base::BindRepeating(&FilterGoogle));
// Expect that url1's actions are gone, but url2's remain.
EXPECT_EQ(0, autoblocker()->GetDismissCount(
......@@ -358,7 +358,7 @@ TEST_F(PermissionDecisionAutoBlockerUnitTest, RemoveEmbargoAndResetCounts_All) {
1, autoblocker()->GetIgnoreCount(url2, ContentSettingsType::MIDI_SYSEX));
// Remove everything and expect that it's all gone.
autoblocker()->RemoveEmbargoAndResetCounts(base::Bind(&FilterAll));
autoblocker()->RemoveEmbargoAndResetCounts(base::BindRepeating(&FilterAll));
EXPECT_EQ(0, autoblocker()->GetDismissCount(
url1, ContentSettingsType::GEOLOCATION));
......@@ -609,7 +609,8 @@ TEST_F(PermissionDecisionAutoBlockerUnitTest, CheckEmbargoStartTime) {
// Remove records of dismiss and ignore embargoes and confirm start time
// reverts to default.
autoblocker()->RemoveEmbargoAndResetCounts(base::Bind(&FilterGoogle));
autoblocker()->RemoveEmbargoAndResetCounts(
base::BindRepeating(&FilterGoogle));
embargo_start_time =
autoblocker()->GetEmbargoStartTime(url, ContentSettingsType::GEOLOCATION);
EXPECT_EQ(base::Time(), embargo_start_time);
......
......@@ -125,7 +125,7 @@ class PermissionManagerTest : public content::RenderViewHostTestHarness {
public:
void OnPermissionChange(PermissionStatus permission) {
if (!quit_closure_.is_null())
quit_closure_.Run();
std::move(quit_closure_).Run();
callback_called_ = true;
callback_result_ = permission;
}
......@@ -173,8 +173,8 @@ class PermissionManagerTest : public content::RenderViewHostTestHarness {
quit_closure_ = loop.QuitClosure();
int result = GetPermissionControllerDelegate()->RequestPermission(
type, rfh, origin, true,
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindOnce(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
loop.Run();
return result;
}
......@@ -261,7 +261,7 @@ class PermissionManagerTest : public content::RenderViewHostTestHarness {
const GURL other_url_;
bool callback_called_;
PermissionStatus callback_result_;
base::Closure quit_closure_;
base::OnceClosure quit_closure_;
std::unique_ptr<content::TestBrowserContext> browser_context_;
TestPermissionsClient client_;
};
......@@ -337,16 +337,16 @@ TEST_F(PermissionManagerTest, SubscriptionDestroyedCleanlyWithoutUnsubscribe) {
// haven't been removed, crbug.com/720071.
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
}
TEST_F(PermissionManagerTest, SubscribeUnsubscribeAfterShutdown) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
// Simulate Keyed Services shutdown pass. Note: Shutdown will be called second
// time during browser_context destruction. This is ok for now: Shutdown is
......@@ -360,8 +360,8 @@ TEST_F(PermissionManagerTest, SubscribeUnsubscribeAfterShutdown) {
int subscription2_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetPermissionControllerDelegate()->UnsubscribePermissionStatusChange(
subscription2_id);
......@@ -371,8 +371,8 @@ TEST_F(PermissionManagerTest, SameTypeChangeNotifies) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), url(), ContentSettingsType::GEOLOCATION, CONTENT_SETTING_ALLOW);
......@@ -388,8 +388,8 @@ TEST_F(PermissionManagerTest, DifferentTypeChangeDoesNotNotify) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), GURL(), ContentSettingsType::NOTIFICATIONS, CONTENT_SETTING_ALLOW);
......@@ -404,8 +404,8 @@ TEST_F(PermissionManagerTest, ChangeAfterUnsubscribeDoesNotNotify) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetPermissionControllerDelegate()->UnsubscribePermissionStatusChange(
subscription_id);
......@@ -420,8 +420,8 @@ TEST_F(PermissionManagerTest, DifferentPrimaryUrlDoesNotNotify) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
other_url(), url(), ContentSettingsType::GEOLOCATION,
......@@ -437,8 +437,8 @@ TEST_F(PermissionManagerTest, DifferentSecondaryUrlDoesNotNotify) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::STORAGE_ACCESS_GRANT, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), other_url(), ContentSettingsType::STORAGE_ACCESS,
......@@ -454,8 +454,8 @@ TEST_F(PermissionManagerTest, WildCardPatternNotifies) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetDefaultContentSetting(
ContentSettingsType::GEOLOCATION, CONTENT_SETTING_ALLOW);
......@@ -474,8 +474,8 @@ TEST_F(PermissionManagerTest, ClearSettingsNotifies) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->ClearSettingsForOneType(
ContentSettingsType::GEOLOCATION);
......@@ -491,8 +491,8 @@ TEST_F(PermissionManagerTest, NewValueCorrectlyPassed) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), url(), ContentSettingsType::GEOLOCATION, CONTENT_SETTING_BLOCK);
......@@ -511,8 +511,8 @@ TEST_F(PermissionManagerTest, ChangeWithoutPermissionChangeDoesNotNotify) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), url(), ContentSettingsType::GEOLOCATION, CONTENT_SETTING_ALLOW);
......@@ -530,8 +530,8 @@ TEST_F(PermissionManagerTest, ChangesBackAndForth) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), url(), ContentSettingsType::GEOLOCATION, CONTENT_SETTING_ALLOW);
......@@ -558,8 +558,8 @@ TEST_F(PermissionManagerTest, ChangesBackAndForthWorker) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, nullptr, url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
url(), url(), ContentSettingsType::GEOLOCATION, CONTENT_SETTING_ALLOW);
......@@ -583,8 +583,8 @@ TEST_F(PermissionManagerTest, SubscribeMIDIPermission) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::MIDI, main_rfh(), url(),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
CheckPermissionStatus(PermissionType::GEOLOCATION, PermissionStatus::ASK);
GetHostContentSettingsMap()->SetContentSettingDefaultScope(
......@@ -608,8 +608,8 @@ TEST_F(PermissionManagerTest, PermissionIgnoredCleanup) {
GetPermissionControllerDelegate()->RequestPermission(
PermissionType::GEOLOCATION, main_rfh(), url(), /*user_gesture=*/true,
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindOnce(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
EXPECT_FALSE(PendingRequestsEmpty());
......@@ -794,8 +794,8 @@ TEST_F(PermissionManagerTest, SubscribeWithPermissionDelegation) {
int subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, child, GURL(kOrigin2),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
EXPECT_FALSE(callback_called());
// Location should be blocked for the child because it's not delegated.
......@@ -831,8 +831,8 @@ TEST_F(PermissionManagerTest, SubscribeWithPermissionDelegation) {
subscription_id =
GetPermissionControllerDelegate()->SubscribePermissionStatusChange(
PermissionType::GEOLOCATION, child, GURL(kOrigin2),
base::Bind(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
base::BindRepeating(&PermissionManagerTest::OnPermissionChange,
base::Unretained(this)));
EXPECT_FALSE(callback_called());
// Blocking access to the parent should trigger the callback to be run for the
......
......@@ -67,7 +67,7 @@ class PermissionPrompt {
virtual bool WasCurrentRequestAlreadyDisplayed() = 0;
};
typedef base::Callback<
typedef base::RepeatingCallback<
std::unique_ptr<PermissionPrompt>(content::WebContents*, Delegate*)>
Factory;
......
......@@ -445,7 +445,7 @@ bool PermissionRequestManager::WasCurrentRequestAlreadyDisplayed() {
PermissionRequestManager::PermissionRequestManager(
content::WebContents* web_contents)
: content::WebContentsObserver(web_contents),
view_factory_(base::Bind(&PermissionPrompt::Create)),
view_factory_(base::BindRepeating(&PermissionPrompt::Create)),
view_(nullptr),
tab_is_hidden_(web_contents->GetVisibility() ==
content::Visibility::HIDDEN),
......
......@@ -20,13 +20,13 @@ MockPermissionPromptFactory::MockPermissionPromptFactory(
requests_count_(0),
response_type_(PermissionRequestManager::NONE),
manager_(manager) {
manager->set_view_factory_for_testing(
base::Bind(&MockPermissionPromptFactory::Create, base::Unretained(this)));
manager->set_view_factory_for_testing(base::BindRepeating(
&MockPermissionPromptFactory::Create, base::Unretained(this)));
}
MockPermissionPromptFactory::~MockPermissionPromptFactory() {
manager_->set_view_factory_for_testing(
base::Bind(&MockPermissionPromptFactory::DoNotCreate));
base::BindRepeating(&MockPermissionPromptFactory::DoNotCreate));
for (auto* prompt : prompts_)
prompt->factory_ = nullptr;
prompts_.clear();
......@@ -86,7 +86,7 @@ void MockPermissionPromptFactory::WaitForPermissionBubble() {
base::RunLoop loop;
show_bubble_quit_closure_ = loop.QuitClosure();
loop.Run();
show_bubble_quit_closure_ = base::Closure();
show_bubble_quit_closure_ = base::RepeatingClosure();
}
// static
......
......@@ -81,7 +81,7 @@ class MockPermissionPromptFactory {
std::vector<MockPermissionPrompt*> prompts_;
PermissionRequestManager::AutoResponseType response_type_;
base::Closure show_bubble_quit_closure_;
base::RepeatingClosure show_bubble_quit_closure_;
// The bubble manager that will be associated with this factory.
PermissionRequestManager* manager_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment