| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <vector> | 5 #include <vector> |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/memory/ref_counted_memory.h" | 8 #include "base/memory/ref_counted_memory.h" |
| 9 #include "chrome/browser/printing/print_preview_tab_controller.h" | 9 #include "chrome/browser/printing/print_preview_tab_controller.h" |
| 10 #include "chrome/browser/ui/browser_list.h" | 10 #include "chrome/browser/ui/browser_list.h" |
| 11 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
| 11 #include "chrome/browser/ui/webui/print_preview_ui.h" | 12 #include "chrome/browser/ui/webui/print_preview_ui.h" |
| 12 #include "chrome/common/chrome_switches.h" | 13 #include "chrome/common/chrome_switches.h" |
| 13 #include "chrome/test/base/browser_with_test_window_test.h" | 14 #include "chrome/test/base/browser_with_test_window_test.h" |
| 14 #include "chrome/test/base/testing_profile.h" | 15 #include "chrome/test/base/testing_profile.h" |
| 15 #include "content/browser/tab_contents/tab_contents.h" | 16 #include "content/browser/tab_contents/tab_contents.h" |
| 16 #include "printing/print_job_constants.h" | 17 #include "printing/print_job_constants.h" |
| 17 | 18 |
| 18 namespace { | 19 namespace { |
| 19 | 20 |
| 20 const unsigned char blob1[] = | 21 const unsigned char blob1[] = |
| 21 "12346102356120394751634516591348710478123649165419234519234512349134"; | 22 "12346102356120394751634516591348710478123649165419234519234512349134"; |
| 22 | 23 |
| 23 } // namespace | 24 } // namespace |
| 24 | 25 |
| 25 typedef BrowserWithTestWindowTest PrintPreviewUITest; | 26 typedef BrowserWithTestWindowTest PrintPreviewUITest; |
| 26 | 27 |
| 27 // Create/Get a preview tab for initiator tab. | 28 // Create/Get a preview tab for initiator tab. |
| 28 TEST_F(PrintPreviewUITest, PrintPreviewData) { | 29 TEST_F(PrintPreviewUITest, PrintPreviewData) { |
| 29 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); | 30 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); |
| 30 ASSERT_TRUE(browser()); | 31 ASSERT_TRUE(browser()); |
| 31 BrowserList::SetLastActive(browser()); | 32 BrowserList::SetLastActive(browser()); |
| 32 ASSERT_TRUE(BrowserList::GetLastActive()); | 33 ASSERT_TRUE(BrowserList::GetLastActive()); |
| 33 | 34 |
| 34 browser()->NewTab(); | 35 browser()->NewTab(); |
| 35 TabContents* initiator_tab = browser()->GetSelectedTabContents(); | 36 TabContentsWrapper* initiator_tab = |
| 37 browser()->GetSelectedTabContentsWrapper(); |
| 36 ASSERT_TRUE(initiator_tab); | 38 ASSERT_TRUE(initiator_tab); |
| 37 | 39 |
| 38 scoped_refptr<printing::PrintPreviewTabController> | 40 scoped_refptr<printing::PrintPreviewTabController> |
| 39 controller(new printing::PrintPreviewTabController()); | 41 controller(new printing::PrintPreviewTabController()); |
| 40 ASSERT_TRUE(controller); | 42 ASSERT_TRUE(controller); |
| 41 | 43 |
| 42 TabContents* preview_tab = controller->GetOrCreatePreviewTab(initiator_tab); | 44 TabContentsWrapper* preview_tab = |
| 45 controller->GetOrCreatePreviewTab(initiator_tab); |
| 43 | 46 |
| 44 EXPECT_NE(initiator_tab, preview_tab); | 47 EXPECT_NE(initiator_tab, preview_tab); |
| 45 EXPECT_EQ(2, browser()->tab_count()); | 48 EXPECT_EQ(2, browser()->tab_count()); |
| 46 | 49 |
| 47 PrintPreviewUI* preview_ui = | 50 PrintPreviewUI* preview_ui = |
| 48 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); | 51 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); |
| 49 ASSERT_TRUE(preview_ui != NULL); | 52 ASSERT_TRUE(preview_ui != NULL); |
| 50 | 53 |
| 51 scoped_refptr<RefCountedBytes> data; | 54 scoped_refptr<RefCountedBytes> data; |
| 52 preview_ui->GetPrintPreviewDataForIndex( | 55 preview_ui->GetPrintPreviewDataForIndex( |
| (...skipping 30 matching lines...) Expand all Loading... |
| 83 // Set and get the individual draft pages. | 86 // Set and get the individual draft pages. |
| 84 TEST_F(PrintPreviewUITest, PrintPreviewDraftPages) { | 87 TEST_F(PrintPreviewUITest, PrintPreviewDraftPages) { |
| 85 #if !defined(GOOGLE_CHROME_BUILD) || defined(OS_CHROMEOS) | 88 #if !defined(GOOGLE_CHROME_BUILD) || defined(OS_CHROMEOS) |
| 86 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); | 89 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); |
| 87 #endif | 90 #endif |
| 88 ASSERT_TRUE(browser()); | 91 ASSERT_TRUE(browser()); |
| 89 BrowserList::SetLastActive(browser()); | 92 BrowserList::SetLastActive(browser()); |
| 90 ASSERT_TRUE(BrowserList::GetLastActive()); | 93 ASSERT_TRUE(BrowserList::GetLastActive()); |
| 91 | 94 |
| 92 browser()->NewTab(); | 95 browser()->NewTab(); |
| 93 TabContents* initiator_tab = browser()->GetSelectedTabContents(); | 96 TabContentsWrapper* initiator_tab = |
| 97 browser()->GetSelectedTabContentsWrapper(); |
| 94 ASSERT_TRUE(initiator_tab); | 98 ASSERT_TRUE(initiator_tab); |
| 95 | 99 |
| 96 scoped_refptr<printing::PrintPreviewTabController> | 100 scoped_refptr<printing::PrintPreviewTabController> |
| 97 controller(new printing::PrintPreviewTabController()); | 101 controller(new printing::PrintPreviewTabController()); |
| 98 ASSERT_TRUE(controller); | 102 ASSERT_TRUE(controller); |
| 99 | 103 |
| 100 TabContents* preview_tab = controller->GetOrCreatePreviewTab(initiator_tab); | 104 TabContentsWrapper* preview_tab = |
| 105 controller->GetOrCreatePreviewTab(initiator_tab); |
| 101 | 106 |
| 102 EXPECT_NE(initiator_tab, preview_tab); | 107 EXPECT_NE(initiator_tab, preview_tab); |
| 103 EXPECT_EQ(2, browser()->tab_count()); | 108 EXPECT_EQ(2, browser()->tab_count()); |
| 104 | 109 |
| 105 PrintPreviewUI* preview_ui = | 110 PrintPreviewUI* preview_ui = |
| 106 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); | 111 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); |
| 107 ASSERT_TRUE(preview_ui != NULL); | 112 ASSERT_TRUE(preview_ui != NULL); |
| 108 | 113 |
| 109 scoped_refptr<RefCountedBytes> data; | 114 scoped_refptr<RefCountedBytes> data; |
| 110 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data); | 115 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data); |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 148 // Test the browser-side print preview cancellation functionality. | 153 // Test the browser-side print preview cancellation functionality. |
| 149 TEST_F(PrintPreviewUITest, GetCurrentPrintPreviewStatus) { | 154 TEST_F(PrintPreviewUITest, GetCurrentPrintPreviewStatus) { |
| 150 #if !defined(GOOGLE_CHROME_BUILD) || defined(OS_CHROMEOS) | 155 #if !defined(GOOGLE_CHROME_BUILD) || defined(OS_CHROMEOS) |
| 151 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); | 156 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePrintPreview); |
| 152 #endif | 157 #endif |
| 153 ASSERT_TRUE(browser()); | 158 ASSERT_TRUE(browser()); |
| 154 BrowserList::SetLastActive(browser()); | 159 BrowserList::SetLastActive(browser()); |
| 155 ASSERT_TRUE(BrowserList::GetLastActive()); | 160 ASSERT_TRUE(BrowserList::GetLastActive()); |
| 156 | 161 |
| 157 browser()->NewTab(); | 162 browser()->NewTab(); |
| 158 TabContents* initiator_tab = browser()->GetSelectedTabContents(); | 163 TabContentsWrapper* initiator_tab = |
| 164 browser()->GetSelectedTabContentsWrapper(); |
| 159 ASSERT_TRUE(initiator_tab); | 165 ASSERT_TRUE(initiator_tab); |
| 160 | 166 |
| 161 scoped_refptr<printing::PrintPreviewTabController> | 167 scoped_refptr<printing::PrintPreviewTabController> |
| 162 controller(new printing::PrintPreviewTabController()); | 168 controller(new printing::PrintPreviewTabController()); |
| 163 ASSERT_TRUE(controller); | 169 ASSERT_TRUE(controller); |
| 164 | 170 |
| 165 TabContents* preview_tab = controller->GetOrCreatePreviewTab(initiator_tab); | 171 TabContentsWrapper* preview_tab = |
| 172 controller->GetOrCreatePreviewTab(initiator_tab); |
| 166 | 173 |
| 167 EXPECT_NE(initiator_tab, preview_tab); | 174 EXPECT_NE(initiator_tab, preview_tab); |
| 168 EXPECT_EQ(2, browser()->tab_count()); | 175 EXPECT_EQ(2, browser()->tab_count()); |
| 169 | 176 |
| 170 PrintPreviewUI* preview_ui = | 177 PrintPreviewUI* preview_ui = |
| 171 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); | 178 reinterpret_cast<PrintPreviewUI*>(preview_tab->web_ui()); |
| 172 ASSERT_TRUE(preview_ui != NULL); | 179 ASSERT_TRUE(preview_ui != NULL); |
| 173 | 180 |
| 174 // Test with invalid |preview_ui_addr|. | 181 // Test with invalid |preview_ui_addr|. |
| 175 bool cancel = false; | 182 bool cancel = false; |
| (...skipping 21 matching lines...) Expand all Loading... |
| 197 cancel = false; | 204 cancel = false; |
| 198 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId, | 205 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId, |
| 199 &cancel); | 206 &cancel); |
| 200 EXPECT_TRUE(cancel); | 207 EXPECT_TRUE(cancel); |
| 201 | 208 |
| 202 cancel = true; | 209 cancel = true; |
| 203 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId, | 210 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId, |
| 204 &cancel); | 211 &cancel); |
| 205 EXPECT_FALSE(cancel); | 212 EXPECT_FALSE(cancel); |
| 206 } | 213 } |
| OLD | NEW |