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

Unified Diff: components/printing/test/print_web_view_helper_browsertest.cc

Issue 2426503002: Make printing work better with OOPIF. (Closed)
Patch Set: Fix build, nits Created 4 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: components/printing/test/print_web_view_helper_browsertest.cc
diff --git a/components/printing/test/print_web_view_helper_browsertest.cc b/components/printing/test/print_web_view_helper_browsertest.cc
index 74a68f3f86229214d159cb9864e7ce053250a26c..60943274ce1e2182b6f8a643455292c256fd6788 100644
--- a/components/printing/test/print_web_view_helper_browsertest.cc
+++ b/components/printing/test/print_web_view_helper_browsertest.cc
@@ -18,6 +18,7 @@
#include "components/printing/test/mock_printer.h"
#include "components/printing/test/print_mock_render_thread.h"
#include "components/printing/test/print_test_content_renderer_client.h"
+#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_view.h"
#include "content/public/test/render_view_test.h"
#include "ipc/ipc_listener.h"
@@ -223,7 +224,7 @@ class PrintWebViewHelperTestBase : public content::RenderViewTest {
#if defined(ENABLE_BASIC_PRINTING)
void OnPrintPages() {
- PrintWebViewHelper::Get(view_)->OnPrintPages();
+ GetPrintWebViewHelper()->OnPrintPages();
ProcessPendingMessages();
}
#endif // defined(ENABLE_BASIC_PRINTING)
@@ -238,7 +239,7 @@ class PrintWebViewHelperTestBase : public content::RenderViewTest {
}
void OnPrintPreview(const base::DictionaryValue& dict) {
- PrintWebViewHelper* print_web_view_helper = PrintWebViewHelper::Get(view_);
+ PrintWebViewHelper* print_web_view_helper = GetPrintWebViewHelper();
print_web_view_helper->OnInitiatePrintPreview(false);
base::RunLoop run_loop;
DidPreviewPageListener filter(&run_loop);
@@ -251,11 +252,16 @@ class PrintWebViewHelperTestBase : public content::RenderViewTest {
#if defined(ENABLE_BASIC_PRINTING)
void OnPrintForPrintPreview(const base::DictionaryValue& dict) {
- PrintWebViewHelper::Get(view_)->OnPrintForPrintPreview(dict);
+ GetPrintWebViewHelper()->OnPrintForPrintPreview(dict);
ProcessPendingMessages();
}
#endif // defined(ENABLE_BASIC_PRINTING)
+ PrintWebViewHelper* GetPrintWebViewHelper() {
+ return PrintWebViewHelper::Get(
+ content::RenderFrame::FromWebFrame(GetMainFrame()));
nasko 2016/11/02 04:50:37 This means that the test will not exercise out-of-
Lei Zhang 2016/11/08 11:13:22 Correct. We'll need to write more tests at some po
nasko 2016/11/08 22:18:35 Is this something I can help with? I don't know mu
Lei Zhang 2016/11/11 21:06:48 PrintWithIframe below might be the closest, but it
Łukasz Anforowicz 2016/11/11 21:29:02 Correct - linux_site_isolation trybot will run a b
+ }
+
// Naked pointer as ownership is with content::RenderViewTest::render_thread_.
PrintMockRenderThread* print_render_thread_;
@@ -301,7 +307,7 @@ TEST_F(MAYBE_PrintWebViewHelperTest, BlockScriptInitiatedPrinting) {
VerifyPagesPrinted(false);
// Unblock script initiated printing and verify printing works.
- PrintWebViewHelper::Get(view_)->scripting_throttler_.Reset();
+ GetPrintWebViewHelper()->scripting_throttler_.Reset();
print_render_thread_->printer()->ResetPrinter();
PrintWithJavaScript();
VerifyPageCount(1);
@@ -388,12 +394,11 @@ TEST_F(MAYBE_PrintWebViewHelperTest, PrintWithIframe) {
// Find the frame and set it as the focused one. This should mean that that
// the printout should only contain the contents of that frame.
- WebFrame* sub1_frame =
- view_->GetWebView()->findFrameByName(WebString::fromUTF8("sub1"));
+ auto* web_view = view_->GetWebView();
+ WebFrame* sub1_frame = web_view->findFrameByName(WebString::fromUTF8("sub1"));
ASSERT_TRUE(sub1_frame);
- view_->GetWebView()->setFocusedFrame(sub1_frame);
- ASSERT_NE(view_->GetWebView()->focusedFrame(),
- view_->GetWebView()->mainFrame());
+ web_view->setFocusedFrame(sub1_frame);
+ ASSERT_NE(web_view->focusedFrame(), web_view->mainFrame());
// Initiate printing.
OnPrintPages();
@@ -622,12 +627,12 @@ class MAYBE_PrintWebViewHelperPreviewTest : public PrintWebViewHelperTestBase {
TEST_F(MAYBE_PrintWebViewHelperPreviewTest, BlockScriptInitiatedPrinting) {
LoadHTML(kHelloWorldHTML);
- PrintWebViewHelper* print_web_view_helper = PrintWebViewHelper::Get(view_);
- print_web_view_helper->SetScriptedPrintBlocked(true);
+ PrintWebViewHelper* print_web_view_helper = GetPrintWebViewHelper();
+ print_web_view_helper->SetPrintingEnabled(false);
PrintWithJavaScript();
VerifyPreviewRequest(false);
- print_web_view_helper->SetScriptedPrintBlocked(false);
+ print_web_view_helper->SetPrintingEnabled(true);
PrintWithJavaScript();
VerifyPreviewRequest(true);
}

Powered by Google App Engine
This is Rietveld 408576698