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

Unified Diff: chrome/browser/permissions/permission_context_base_unittest.cc

Issue 1337903002: permissions: remove PermissionQueueController and introduce PermissionInfoBarManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@callbacks-delegates
Patch Set: Fix compile failures Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/permissions/permission_context_base_unittest.cc
diff --git a/chrome/browser/permissions/permission_context_base_unittest.cc b/chrome/browser/permissions/permission_context_base_unittest.cc
index 3e672099546186d4a3ad21d8c9283c85d7a81367..c67765a24fcceb954caf82c2cd07f733f65c3cfe 100644
--- a/chrome/browser/permissions/permission_context_base_unittest.cc
+++ b/chrome/browser/permissions/permission_context_base_unittest.cc
@@ -8,7 +8,8 @@
#include "base/command_line.h"
#include "chrome/browser/content_settings/host_content_settings_map_factory.h"
#include "chrome/browser/infobars/infobar_service.h"
-#include "chrome/browser/permissions/permission_queue_controller.h"
+#include "chrome/browser/permissions/permission_infobar_manager.h"
+#include "chrome/browser/permissions/permission_infobar_request.h"
#include "chrome/browser/permissions/permission_request_id.h"
#include "chrome/browser/ui/website_settings/permission_bubble_manager.h"
#include "chrome/common/chrome_switches.h"
@@ -34,10 +35,6 @@ class TestPermissionContext : public PermissionContextBase {
~TestPermissionContext() override {}
- PermissionQueueController* GetInfoBarController() {
- return GetQueueController();
- }
-
bool permission_granted() {
return permission_granted_;
}
@@ -76,23 +73,31 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
protected:
PermissionContextBaseTests() {}
- // Accept or dismiss the permission bubble or infobar.
- void RespondToPermission(TestPermissionContext* context,
- const PermissionRequestID& id,
- const GURL& url,
- bool accept) {
- if (!PermissionBubbleManager::Enabled()) {
- context->GetInfoBarController()->OnPermissionSet(
- id, url, url, accept, accept);
+ void ShowUI() {
+ if (PermissionBubbleManager::Enabled())
return;
- }
+ PermissionInfoBarManager* manager =
+ PermissionInfoBarManager::FromWebContents(web_contents());
+ manager->ShowNextQueuedRequest();
+ }
- PermissionBubbleManager* manager =
- PermissionBubbleManager::FromWebContents(web_contents());
- if (accept)
- manager->Accept();
- else
- manager->Closing();
+ // Accept or dismiss the permission bubble or infobar.
+ void RespondToPermission(bool accept) {
+ if (PermissionBubbleManager::Enabled()) {
+ PermissionBubbleManager* manager =
+ PermissionBubbleManager::FromWebContents(web_contents());
+ if (accept)
+ manager->Accept();
+ else
+ manager->Closing();
+ } else {
+ PermissionInfoBarManager* manager =
+ PermissionInfoBarManager::FromWebContents(web_contents());
+ if (accept)
+ manager->current_request_->AcceptForTests();
+ else
+ manager->current_request_->ClosingForTests();
+ }
}
void TestAskAndGrant_TestContent() {
@@ -104,14 +109,15 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(),
- -1);
+ 0);
permission_context.RequestPermission(
web_contents(),
id, url, true,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
+ ShowUI();
- RespondToPermission(&permission_context, id, url, true);
+ RespondToPermission(true);
EXPECT_TRUE(permission_context.permission_set());
EXPECT_TRUE(permission_context.permission_granted());
EXPECT_TRUE(permission_context.tab_context_updated());
@@ -134,14 +140,15 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(),
- -1);
+ 0);
permission_context.RequestPermission(
web_contents(),
id, url, true,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
+ ShowUI();
- RespondToPermission(&permission_context, id, url, false);
+ RespondToPermission(false);
EXPECT_TRUE(permission_context.permission_set());
EXPECT_FALSE(permission_context.permission_granted());
EXPECT_TRUE(permission_context.tab_context_updated());
@@ -164,12 +171,13 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(),
- -1);
+ 0);
permission_context.RequestPermission(
web_contents(),
id, url, true,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
+ ShowUI();
EXPECT_TRUE(permission_context.permission_set());
EXPECT_FALSE(permission_context.permission_granted());
@@ -193,14 +201,15 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
const PermissionRequestID id(
web_contents()->GetRenderProcessHost()->GetID(),
web_contents()->GetMainFrame()->GetRoutingID(),
- -1);
+ 0);
permission_context.RequestPermission(
web_contents(),
id, url, true,
base::Bind(&TestPermissionContext::TrackPermissionDecision,
base::Unretained(&permission_context)));
+ ShowUI();
- RespondToPermission(&permission_context, id, url, true);
+ RespondToPermission(true);
EXPECT_TRUE(permission_context.permission_set());
EXPECT_TRUE(permission_context.permission_granted());
EXPECT_TRUE(permission_context.tab_context_updated());
@@ -232,6 +241,7 @@ class PermissionContextBaseTests : public ChromeRenderViewHostTestHarness {
void SetUp() override {
ChromeRenderViewHostTestHarness::SetUp();
InfoBarService::CreateForWebContents(web_contents());
+ PermissionInfoBarManager::CreateForWebContents(web_contents());
PermissionBubbleManager::CreateForWebContents(web_contents());
}
« no previous file with comments | « chrome/browser/permissions/permission_context_base.cc ('k') | chrome/browser/permissions/permission_infobar_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698