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

Unified Diff: chrome/browser/geolocation/geolocation_permission_context_unittest.cc

Issue 1337903002: permissions: remove PermissionQueueController and introduce PermissionInfoBarManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@callbacks-delegates
Patch Set: Just a rebase Created 5 years, 3 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/geolocation/geolocation_permission_context_unittest.cc
diff --git a/chrome/browser/geolocation/geolocation_permission_context_unittest.cc b/chrome/browser/geolocation/geolocation_permission_context_unittest.cc
index 054fb30ae9eb6f9f8457bbba63e89438dc85b870..9eebf1fe374618c6d5ffb8acc8b92821050eff68 100644
--- a/chrome/browser/geolocation/geolocation_permission_context_unittest.cc
+++ b/chrome/browser/geolocation/geolocation_permission_context_unittest.cc
@@ -22,6 +22,7 @@
#include "chrome/browser/content_settings/tab_specific_content_settings.h"
#include "chrome/browser/geolocation/geolocation_permission_context_factory.h"
#include "chrome/browser/infobars/infobar_service.h"
+#include "chrome/browser/permissions/permission_infobar_manager.h"
#include "chrome/browser/permissions/permission_request_id.h"
#include "chrome/browser/ui/website_settings/mock_permission_bubble_view.h"
#include "chrome/browser/ui/website_settings/permission_bubble_manager.h"
@@ -238,6 +239,7 @@ void GeolocationPermissionContextTests::AddNewTab(const GURL& url) {
extensions::SetViewType(new_tab, extensions::VIEW_TYPE_TAB_CONTENTS);
#endif
InfoBarService::CreateForWebContents(new_tab);
+ PermissionInfoBarManager::CreateForWebContents(new_tab);
if (BubbleEnabled()) {
PermissionBubbleManager::CreateForWebContents(new_tab);
PermissionBubbleManager* permission_bubble_manager =
@@ -273,6 +275,7 @@ void GeolocationPermissionContextTests::SetUp() {
extensions::SetViewType(web_contents(), extensions::VIEW_TYPE_TAB_CONTENTS);
#endif
InfoBarService::CreateForWebContents(web_contents());
+ PermissionInfoBarManager::CreateForWebContents(web_contents());
TabSpecificContentSettings::CreateForWebContents(web_contents());
geolocation_permission_context_ =
GeolocationPermissionContextFactory::GetForProfile(profile());
@@ -695,17 +698,19 @@ TEST_F(GeolocationPermissionContextTests, SameOriginMultipleTabs) {
ASSERT_TRUE(infobar_delegate_a0);
infobar_delegate_a0->Accept();
infobar_service()->RemoveInfoBar(infobar_a0);
- EXPECT_EQ(2U, closed_infobar_tracker_.size());
+ EXPECT_EQ(1U, closed_infobar_tracker_.size());
EXPECT_TRUE(closed_infobar_tracker_.Contains(infobar_a0));
}
CheckPermissionMessageSent(0, true);
- // Because they're the same origin, this will cause tab A1's infobar to
- // disappear. It does not cause the bubble to disappear: crbug.com/443013.
- // TODO(felt): Update this test when the bubble's behavior is changed.
+ // Because they're the same origin, tab_a1's bubble/infobar should disappear.
+ // In the past, infobar used to disappear and bubble did not.
+ // Now both have a consistent behviour (albiet broken) of not removing
+ // the bubble/infobar: see crbug.com/443013.
+ // TODO(felt): Update this test when this behavior is changed.
if (BubbleEnabled())
ASSERT_EQ(1U, GetBubblesQueueSize(manager_a1));
else
- CheckPermissionMessageSentForTab(1, 0, true);
+ EXPECT_EQ(1U, infobar_service_for_tab(1)->infobar_count());
// Either way, tab B should still have a pending permission request.
if (BubbleEnabled())
@@ -754,20 +759,20 @@ TEST_F(GeolocationPermissionContextTests, QueuedOriginMultipleTabs) {
ASSERT_TRUE(infobar_delegate_a1);
infobar_delegate_a1->Accept();
infobar_service_for_tab(0)->RemoveInfoBar(infobar_a1);
- EXPECT_EQ(2U, closed_infobar_tracker_.size());
+ EXPECT_EQ(1U, closed_infobar_tracker_.size());
EXPECT_TRUE(closed_infobar_tracker_.Contains(infobar_a1));
}
CheckPermissionMessageSentForTab(0, 0, true);
- // Because they're the same origin, this will cause tab A0's infobar to
- // disappear. It does not cause the bubble to disappear: crbug.com/443013.
- // TODO(felt): Update this test when the bubble's behavior is changed.
- if (BubbleEnabled()) {
+ // Because they're the same origin, tab_a0's bubble/infobar should disappear.
+ // In the past, infobar used to disappear and bubble did not.
+ // Now both have a consistent behviour (albiet broken) of not removing
+ // the bubble/infobar: see crbug.com/443013.
+ // TODO(felt): Update this test when this behavior is changed.
+ if (BubbleEnabled())
EXPECT_EQ(1U, GetBubblesQueueSize(manager_a0));
- } else {
- EXPECT_EQ(0U, infobar_service()->infobar_count());
- CheckPermissionMessageSent(0, true);
- }
+ else
+ EXPECT_EQ(1U, infobar_service()->infobar_count());
// The second request should now be visible in tab A1.
if (BubbleEnabled())

Powered by Google App Engine
This is Rietveld 408576698