Commit 37722f2f authored by Joel Klinghed's avatar Joel Klinghed Committed by Commit Bot

Include unittest for basic printing in chrome/test

Existing print_job_unittest doesn't need print_preview and add
a trivial unittest for PrintViewManagerBasic to exercise the code.

Bug: 993255
Change-Id: I2897c4cf9e46fbfc893a5868a544c5757efd6295
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1757022Reviewed-by: default avatarLei Zhang <thestig@chromium.org>
Commit-Queue: Joel Klinghed <the_jk@opera.com>
Cr-Commit-Position: refs/heads/master@{#688613}
parent 2b91ba73
...@@ -66,6 +66,10 @@ class PrintViewManagerBase : public content::NotificationObserver, ...@@ -66,6 +66,10 @@ class PrintViewManagerBase : public content::NotificationObserver,
base::string16 RenderSourceName(); base::string16 RenderSourceName();
content::RenderFrameHost* GetPrintingRFHForTesting() const {
return printing_rfh_;
}
protected: protected:
explicit PrintViewManagerBase(content::WebContents* web_contents); explicit PrintViewManagerBase(content::WebContents* web_contents);
......
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/printing/print_view_manager_basic.h"
#include "chrome/browser/printing/printing_init.h"
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
namespace printing {
class PrintViewManagerBasicTest : public ChromeRenderViewHostTestHarness {
protected:
void SetUp() override {
ChromeRenderViewHostTestHarness::SetUp();
InitializePrinting(web_contents());
content::RenderFrameHostTester::For(main_rfh())
->InitializeRenderFrameIfNeeded();
}
};
TEST_F(PrintViewManagerBasicTest, PrintSubFrameAndDestroy) {
auto* sub_frame =
content::RenderFrameHostTester::For(main_rfh())->AppendChild("child");
ASSERT_TRUE(sub_frame);
auto* print_view_manager =
PrintViewManagerBasic::FromWebContents(web_contents());
ASSERT_TRUE(print_view_manager);
EXPECT_FALSE(print_view_manager->GetPrintingRFHForTesting());
print_view_manager->PrintNow(sub_frame);
EXPECT_TRUE(print_view_manager->GetPrintingRFHForTesting());
content::RenderFrameHostTester::For(sub_frame)->Detach();
EXPECT_FALSE(print_view_manager->GetPrintingRFHForTesting());
}
} // namespace printing
...@@ -4632,9 +4632,18 @@ test("unit_tests") { ...@@ -4632,9 +4632,18 @@ test("unit_tests") {
] ]
} }
if (enable_print_preview) { if (enable_basic_printing) {
sources += [ sources += [
"../browser/printing/print_job_unittest.cc", "../browser/printing/print_job_unittest.cc",
]
deps += [
"//printing",
"//printing:test_support",
]
if (enable_print_preview) {
sources += [
"../browser/printing/print_preview_dialog_controller_unittest.cc", "../browser/printing/print_preview_dialog_controller_unittest.cc",
"../browser/printing/print_preview_test.cc", "../browser/printing/print_preview_test.cc",
"../browser/printing/print_preview_test.h", "../browser/printing/print_preview_test.h",
...@@ -4653,11 +4662,7 @@ test("unit_tests") { ...@@ -4653,11 +4662,7 @@ test("unit_tests") {
"../browser/ui/webui/print_preview/print_preview_utils_unittest.cc", "../browser/ui/webui/print_preview/print_preview_utils_unittest.cc",
] ]
deps += [ deps += [ "//ipc" ]
"//ipc",
"//printing",
"//printing:test_support",
]
if (!is_chromeos) { if (!is_chromeos) {
sources += [ sources += [
...@@ -4681,6 +4686,9 @@ test("unit_tests") { ...@@ -4681,6 +4686,9 @@ test("unit_tests") {
"../browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc", "../browser/ui/webui/settings/chromeos/cups_printers_handler_unittest.cc",
] ]
} }
} else {
sources += [ "../browser/printing/print_view_manager_basic_unittest.cc" ]
}
} }
if (enable_captive_portal_detection) { if (enable_captive_portal_detection) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment