| Index: chrome/browser/ui/webui/print_preview_ui_unittest.cc
|
| ===================================================================
|
| --- chrome/browser/ui/webui/print_preview_ui_unittest.cc (revision 117298)
|
| +++ chrome/browser/ui/webui/print_preview_ui_unittest.cc (working copy)
|
| @@ -1,212 +0,0 @@
|
| -// Copyright (c) 2012 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 <vector>
|
| -
|
| -#include "base/memory/ref_counted_memory.h"
|
| -#include "chrome/browser/printing/print_preview_tab_controller.h"
|
| -#include "chrome/browser/printing/print_preview_unit_test_base.h"
|
| -#include "chrome/browser/printing/print_view_manager.h"
|
| -#include "chrome/browser/ui/browser_list.h"
|
| -#include "chrome/browser/ui/constrained_window_tab_helper.h"
|
| -#include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
|
| -#include "chrome/browser/ui/webui/print_preview_ui.h"
|
| -#include "content/public/browser/web_contents.h"
|
| -#include "printing/print_job_constants.h"
|
| -
|
| -namespace {
|
| -
|
| -const unsigned char blob1[] =
|
| - "12346102356120394751634516591348710478123649165419234519234512349134";
|
| -
|
| -size_t GetConstrainedWindowCount(TabContentsWrapper* tab) {
|
| - return tab->constrained_window_tab_helper()->constrained_window_count();
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -class PrintPreviewUIUnitTest : public PrintPreviewUnitTestBase {
|
| - public:
|
| - PrintPreviewUIUnitTest() {}
|
| - virtual ~PrintPreviewUIUnitTest() {}
|
| -
|
| - protected:
|
| - virtual void SetUp() OVERRIDE {
|
| - PrintPreviewUnitTestBase::SetUp();
|
| -
|
| - browser()->NewTab();
|
| - }
|
| -};
|
| -
|
| -// Create/Get a preview tab for initiator tab.
|
| -TEST_F(PrintPreviewUIUnitTest, PrintPreviewData) {
|
| - TabContentsWrapper* initiator_tab =
|
| - browser()->GetSelectedTabContentsWrapper();
|
| - ASSERT_TRUE(initiator_tab);
|
| - EXPECT_EQ(0U, GetConstrainedWindowCount(initiator_tab));
|
| -
|
| - printing::PrintPreviewTabController* controller =
|
| - printing::PrintPreviewTabController::GetInstance();
|
| - ASSERT_TRUE(controller);
|
| -
|
| - initiator_tab->print_view_manager()->PrintPreviewNow();
|
| - TabContentsWrapper* preview_tab =
|
| - controller->GetOrCreatePreviewTab(initiator_tab);
|
| -
|
| - EXPECT_NE(initiator_tab, preview_tab);
|
| - EXPECT_EQ(1, browser()->tab_count());
|
| - EXPECT_EQ(1U, GetConstrainedWindowCount(initiator_tab));
|
| -
|
| - PrintPreviewUI* preview_ui = reinterpret_cast<PrintPreviewUI*>(
|
| - preview_tab->web_contents()->GetWebUI());
|
| - ASSERT_TRUE(preview_ui != NULL);
|
| -
|
| - scoped_refptr<RefCountedBytes> data;
|
| - preview_ui->GetPrintPreviewDataForIndex(
|
| - printing::COMPLETE_PREVIEW_DOCUMENT_INDEX,
|
| - &data);
|
| - EXPECT_EQ(NULL, data.get());
|
| -
|
| - std::vector<unsigned char> preview_data(blob1, blob1 + sizeof(blob1));
|
| - scoped_refptr<RefCountedBytes> dummy_data(new RefCountedBytes(preview_data));
|
| -
|
| - preview_ui->SetPrintPreviewDataForIndex(
|
| - printing::COMPLETE_PREVIEW_DOCUMENT_INDEX,
|
| - dummy_data.get());
|
| - preview_ui->GetPrintPreviewDataForIndex(
|
| - printing::COMPLETE_PREVIEW_DOCUMENT_INDEX,
|
| - &data);
|
| - EXPECT_EQ(dummy_data->size(), data->size());
|
| - EXPECT_EQ(dummy_data.get(), data.get());
|
| -
|
| - // This should not cause any memory leaks.
|
| - dummy_data = new RefCountedBytes();
|
| - preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX,
|
| - dummy_data);
|
| -
|
| - // Clear the preview data.
|
| - preview_ui->ClearAllPreviewData();
|
| -
|
| - preview_ui->GetPrintPreviewDataForIndex(
|
| - printing::COMPLETE_PREVIEW_DOCUMENT_INDEX,
|
| - &data);
|
| - EXPECT_EQ(NULL, data.get());
|
| -}
|
| -
|
| -// Set and get the individual draft pages.
|
| -TEST_F(PrintPreviewUIUnitTest, PrintPreviewDraftPages) {
|
| - TabContentsWrapper* initiator_tab =
|
| - browser()->GetSelectedTabContentsWrapper();
|
| - ASSERT_TRUE(initiator_tab);
|
| -
|
| - printing::PrintPreviewTabController* controller =
|
| - printing::PrintPreviewTabController::GetInstance();
|
| - ASSERT_TRUE(controller);
|
| -
|
| - initiator_tab->print_view_manager()->PrintPreviewNow();
|
| - TabContentsWrapper* preview_tab =
|
| - controller->GetOrCreatePreviewTab(initiator_tab);
|
| -
|
| - EXPECT_NE(initiator_tab, preview_tab);
|
| - EXPECT_EQ(1, browser()->tab_count());
|
| - EXPECT_EQ(1U, GetConstrainedWindowCount(initiator_tab));
|
| -
|
| - PrintPreviewUI* preview_ui = reinterpret_cast<PrintPreviewUI*>(
|
| - preview_tab->web_contents()->GetWebUI());
|
| - ASSERT_TRUE(preview_ui != NULL);
|
| -
|
| - scoped_refptr<RefCountedBytes> data;
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data);
|
| - EXPECT_EQ(NULL, data.get());
|
| -
|
| - std::vector<unsigned char> preview_data(blob1, blob1 + sizeof(blob1));
|
| - scoped_refptr<RefCountedBytes> dummy_data(new RefCountedBytes(preview_data));
|
| -
|
| - preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX,
|
| - dummy_data.get());
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data);
|
| - EXPECT_EQ(dummy_data->size(), data->size());
|
| - EXPECT_EQ(dummy_data.get(), data.get());
|
| -
|
| - // Set and get the third page data.
|
| - preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 2,
|
| - dummy_data.get());
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 2,
|
| - &data);
|
| - EXPECT_EQ(dummy_data->size(), data->size());
|
| - EXPECT_EQ(dummy_data.get(), data.get());
|
| -
|
| - // Get the second page data.
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 1,
|
| - &data);
|
| - EXPECT_EQ(NULL, data.get());
|
| -
|
| - preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 1,
|
| - dummy_data.get());
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 1,
|
| - &data);
|
| - EXPECT_EQ(dummy_data->size(), data->size());
|
| - EXPECT_EQ(dummy_data.get(), data.get());
|
| -
|
| - // Clear the preview data.
|
| - preview_ui->ClearAllPreviewData();
|
| - preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data);
|
| - EXPECT_EQ(NULL, data.get());
|
| -}
|
| -
|
| -// Test the browser-side print preview cancellation functionality.
|
| -TEST_F(PrintPreviewUIUnitTest, GetCurrentPrintPreviewStatus) {
|
| - TabContentsWrapper* initiator_tab =
|
| - browser()->GetSelectedTabContentsWrapper();
|
| - ASSERT_TRUE(initiator_tab);
|
| -
|
| - printing::PrintPreviewTabController* controller =
|
| - printing::PrintPreviewTabController::GetInstance();
|
| - ASSERT_TRUE(controller);
|
| -
|
| - initiator_tab->print_view_manager()->PrintPreviewNow();
|
| - TabContentsWrapper* preview_tab =
|
| - controller->GetOrCreatePreviewTab(initiator_tab);
|
| -
|
| - EXPECT_NE(initiator_tab, preview_tab);
|
| - EXPECT_EQ(1, browser()->tab_count());
|
| - EXPECT_EQ(1U, GetConstrainedWindowCount(initiator_tab));
|
| -
|
| - PrintPreviewUI* preview_ui = reinterpret_cast<PrintPreviewUI*>(
|
| - preview_tab->web_contents()->GetWebUI());
|
| - ASSERT_TRUE(preview_ui != NULL);
|
| -
|
| - // Test with invalid |preview_ui_addr|.
|
| - bool cancel = false;
|
| - preview_ui->GetCurrentPrintPreviewStatus("invalid", 0, &cancel);
|
| - EXPECT_TRUE(cancel);
|
| -
|
| - const int kFirstRequestId = 1000;
|
| - const int kSecondRequestId = 1001;
|
| - const std::string preview_ui_addr = preview_ui->GetPrintPreviewUIAddress();
|
| -
|
| - // Test with kFirstRequestId.
|
| - preview_ui->OnPrintPreviewRequest(kFirstRequestId);
|
| - cancel = true;
|
| - preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId,
|
| - &cancel);
|
| - EXPECT_FALSE(cancel);
|
| -
|
| - cancel = false;
|
| - preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId,
|
| - &cancel);
|
| - EXPECT_TRUE(cancel);
|
| -
|
| - // Test with kSecondRequestId.
|
| - preview_ui->OnPrintPreviewRequest(kSecondRequestId);
|
| - cancel = false;
|
| - preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId,
|
| - &cancel);
|
| - EXPECT_TRUE(cancel);
|
| -
|
| - cancel = true;
|
| - preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId,
|
| - &cancel);
|
| - EXPECT_FALSE(cancel);
|
| -}
|
|
|