OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/files/file_path.h" | 6 #include "base/files/file_path.h" |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "base/test/histogram_tester.h" | 8 #include "base/test/histogram_tester.h" |
9 #include "base/time/time.h" | 9 #include "base/time/time.h" |
10 #include "content/browser/frame_host/cross_site_transferring_request.h" | 10 #include "content/browser/frame_host/cross_site_transferring_request.h" |
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
556 FrameHostMsg_PluginCrashed( | 556 FrameHostMsg_PluginCrashed( |
557 ntp_rfh->GetRoutingID(), base::FilePath(), 0))); | 557 ntp_rfh->GetRoutingID(), base::FilePath(), 0))); |
558 EXPECT_FALSE(observer.plugin_crashed()); | 558 EXPECT_FALSE(observer.plugin_crashed()); |
559 } | 559 } |
560 #endif | 560 #endif |
561 | 561 |
562 // We cannot filter out synchronous IPC messages, because the renderer would | 562 // We cannot filter out synchronous IPC messages, because the renderer would |
563 // be left waiting for a reply. We pick RunBeforeUnloadConfirm as an example | 563 // be left waiting for a reply. We pick RunBeforeUnloadConfirm as an example |
564 // that can run easily within a unit test, and that needs to receive a reply | 564 // that can run easily within a unit test, and that needs to receive a reply |
565 // without showing an actual dialog. | 565 // without showing an actual dialog. |
566 MockRenderProcessHost* ntp_process_host = | 566 MockRenderProcessHost* ntp_process_host = ntp_rfh->GetProcess(); |
567 static_cast<MockRenderProcessHost*>(ntp_rfh->GetProcess()); | |
568 ntp_process_host->sink().ClearMessages(); | 567 ntp_process_host->sink().ClearMessages(); |
569 const base::string16 msg = base::ASCIIToUTF16("Message"); | 568 const base::string16 msg = base::ASCIIToUTF16("Message"); |
570 bool result = false; | 569 bool result = false; |
571 base::string16 unused; | 570 base::string16 unused; |
572 FrameHostMsg_RunBeforeUnloadConfirm before_unload_msg( | 571 FrameHostMsg_RunBeforeUnloadConfirm before_unload_msg( |
573 ntp_rfh->GetRoutingID(), kChromeURL, msg, false, &result, &unused); | 572 ntp_rfh->GetRoutingID(), kChromeURL, msg, false, &result, &unused); |
574 // Enable pumping for check in BrowserMessageFilter::CheckCanDispatchOnUI. | 573 // Enable pumping for check in BrowserMessageFilter::CheckCanDispatchOnUI. |
575 before_unload_msg.EnableMessagePumping(); | 574 before_unload_msg.EnableMessagePumping(); |
576 EXPECT_TRUE(ntp_rfh->OnMessageReceived(before_unload_msg)); | 575 EXPECT_TRUE(ntp_rfh->OnMessageReceived(before_unload_msg)); |
577 EXPECT_TRUE(ntp_process_host->sink().GetUniqueMessageMatching(IPC_REPLY_ID)); | 576 EXPECT_TRUE(ntp_process_host->sink().GetUniqueMessageMatching(IPC_REPLY_ID)); |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
629 } | 628 } |
630 } | 629 } |
631 | 630 |
632 TEST_F(RenderFrameHostManagerTest, WhiteListSwapCompositorFrame) { | 631 TEST_F(RenderFrameHostManagerTest, WhiteListSwapCompositorFrame) { |
633 TestRenderFrameHost* swapped_out_rfh = CreateSwappedOutRenderFrameHost(); | 632 TestRenderFrameHost* swapped_out_rfh = CreateSwappedOutRenderFrameHost(); |
634 TestRenderWidgetHostView* swapped_out_rwhv = | 633 TestRenderWidgetHostView* swapped_out_rwhv = |
635 static_cast<TestRenderWidgetHostView*>( | 634 static_cast<TestRenderWidgetHostView*>( |
636 swapped_out_rfh->GetRenderViewHost()->GetView()); | 635 swapped_out_rfh->GetRenderViewHost()->GetView()); |
637 EXPECT_FALSE(swapped_out_rwhv->did_swap_compositor_frame()); | 636 EXPECT_FALSE(swapped_out_rwhv->did_swap_compositor_frame()); |
638 | 637 |
639 MockRenderProcessHost* process_host = | 638 MockRenderProcessHost* process_host = swapped_out_rfh->GetProcess(); |
640 static_cast<MockRenderProcessHost*>(swapped_out_rfh->GetProcess()); | |
641 process_host->sink().ClearMessages(); | 639 process_host->sink().ClearMessages(); |
642 | 640 |
643 cc::CompositorFrame frame; | 641 cc::CompositorFrame frame; |
644 ViewHostMsg_SwapCompositorFrame msg( | 642 ViewHostMsg_SwapCompositorFrame msg( |
645 rvh()->GetRoutingID(), 0, frame, std::vector<IPC::Message>()); | 643 rvh()->GetRoutingID(), 0, frame, std::vector<IPC::Message>()); |
646 | 644 |
647 EXPECT_TRUE(swapped_out_rfh->render_view_host()->OnMessageReceived(msg)); | 645 EXPECT_TRUE(swapped_out_rfh->render_view_host()->OnMessageReceived(msg)); |
648 EXPECT_TRUE(swapped_out_rwhv->did_swap_compositor_frame()); | 646 EXPECT_TRUE(swapped_out_rwhv->did_swap_compositor_frame()); |
649 } | 647 } |
650 | 648 |
(...skipping 1402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2053 EXPECT_FALSE(contents2->GetMainFrame()->IsRenderFrameLive()); | 2051 EXPECT_FALSE(contents2->GetMainFrame()->IsRenderFrameLive()); |
2054 contents2->NavigateAndCommit(kUrl3); | 2052 contents2->NavigateAndCommit(kUrl3); |
2055 EXPECT_TRUE(contents2->GetMainFrame()->IsRenderFrameLive()); | 2053 EXPECT_TRUE(contents2->GetMainFrame()->IsRenderFrameLive()); |
2056 EXPECT_NE(nullptr, | 2054 EXPECT_NE(nullptr, |
2057 iframe->GetRenderFrameProxyHost(contents1->GetSiteInstance())); | 2055 iframe->GetRenderFrameProxyHost(contents1->GetSiteInstance())); |
2058 EXPECT_EQ(nullptr, | 2056 EXPECT_EQ(nullptr, |
2059 iframe->GetRenderFrameProxyHost(contents2->GetSiteInstance())); | 2057 iframe->GetRenderFrameProxyHost(contents2->GetSiteInstance())); |
2060 } | 2058 } |
2061 | 2059 |
2062 } // namespace content | 2060 } // namespace content |
OLD | NEW |