| 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());
|
| }
|
|
|
|
|