Index: chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc |
diff --git a/chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc b/chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc |
index 0f43c4f528ee8793003b813e3425a9d0b0176248..9f3b465181d94da0c1b1640a77990a507cbe2003 100644 |
--- a/chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc |
+++ b/chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc |
@@ -64,12 +64,14 @@ class PermissionBubbleManagerTest : public ChromeRenderViewHostTestHarness { |
PermissionBubbleManagerTest() |
: ChromeRenderViewHostTestHarness(), |
request1_("test1"), |
- request2_("test2") {} |
+ request2_("test2"), |
+ iframe_request_("iframe", GURL("http://www.youtube.com")) {} |
virtual ~PermissionBubbleManagerTest() {} |
virtual void SetUp() OVERRIDE { |
ChromeRenderViewHostTestHarness::SetUp(); |
SetContents(CreateTestWebContents()); |
+ NavigateAndCommit(GURL("http://www.google.com")); |
manager_.reset(new PermissionBubbleManager(web_contents())); |
} |
@@ -91,6 +93,11 @@ class PermissionBubbleManagerTest : public ChromeRenderViewHostTestHarness { |
manager_->Closing(); |
} |
+ void WaitForFrameLoad() { |
+ manager_->DocumentLoadedInFrame(0, NULL); |
+ base::MessageLoop::current()->RunUntilIdle(); |
+ } |
+ |
void WaitForCoalescing() { |
manager_->DocumentOnLoadCompletedInMainFrame(); |
base::MessageLoop::current()->RunUntilIdle(); |
@@ -104,6 +111,7 @@ class PermissionBubbleManagerTest : public ChromeRenderViewHostTestHarness { |
protected: |
MockPermissionBubbleRequest request1_; |
MockPermissionBubbleRequest request2_; |
+ MockPermissionBubbleRequest iframe_request_; |
MockView view_; |
scoped_ptr<PermissionBubbleManager> manager_; |
}; |
@@ -321,7 +329,6 @@ TEST_F(PermissionBubbleManagerTest, DuplicateQueuedRequest) { |
} |
TEST_F(PermissionBubbleManagerTest, ForgetRequestsOnPageNavigation) { |
- NavigateAndCommit(GURL("http://www.google.com/")); |
manager_->SetView(&view_); |
manager_->AddRequest(&request1_); |
WaitForCoalescing(); |
@@ -391,3 +398,19 @@ TEST_F(PermissionBubbleManagerTest, TestCancelPendingRequest) { |
EXPECT_TRUE(request2_.finished()); |
} |
+TEST_F(PermissionBubbleManagerTest, MainFrameNoRequestIFrameRequest) { |
+ manager_->SetView(&view_); |
+ manager_->AddRequest(&iframe_request_); |
+ WaitForCoalescing(); |
+ WaitForFrameLoad(); |
+ |
+ EXPECT_TRUE(view_.shown_); |
+} |
+ |
+TEST_F(PermissionBubbleManagerTest, MainFrameAndIFrameRequests) { |
+ manager_->SetView(&view_); |
+ manager_->AddRequest(&request1_); |
+ manager_->AddRequest(&iframe_request_); |
+ WaitForFrameLoad(); |
+ WaitForCoalescing(); |
Greg Billock
2014/05/21 17:09:19
Maybe try a request with a url like www.google.com
leng
2014/05/22 00:08:47
I assumed you meant the url to be the iframe url..
|
+} |