| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <stdint.h> | 5 #include <stdint.h> |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "base/memory/ref_counted_memory.h" | 10 #include "base/memory/ref_counted_memory.h" |
| 11 #include "chrome/browser/printing/print_preview_dialog_controller.h" | 11 #include "chrome/browser/printing/print_preview_dialog_controller.h" |
| 12 #include "chrome/browser/printing/print_preview_test.h" | 12 #include "chrome/browser/printing/print_preview_test.h" |
| 13 #include "chrome/browser/printing/print_view_manager.h" | 13 #include "chrome/browser/printing/print_view_manager.h" |
| 14 #include "chrome/browser/ui/browser_commands.h" | 14 #include "chrome/browser/ui/browser_commands.h" |
| 15 #include "chrome/browser/ui/browser_tabstrip.h" | 15 #include "chrome/browser/ui/browser_tabstrip.h" |
| 16 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 16 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| 17 #include "chrome/browser/ui/webui/print_preview/print_preview_ui.h" | 17 #include "chrome/browser/ui/webui/print_preview/print_preview_ui.h" |
| 18 #include "chrome/test/base/browser_with_test_window_test.h" | 18 #include "chrome/test/base/browser_with_test_window_test.h" |
| 19 #include "chrome/test/base/testing_browser_process.h" |
| 19 #include "components/prefs/pref_service.h" | 20 #include "components/prefs/pref_service.h" |
| 20 #include "components/web_modal/web_contents_modal_dialog_manager.h" | 21 #include "components/web_modal/web_contents_modal_dialog_manager.h" |
| 21 #include "content/public/browser/plugin_service.h" | 22 #include "content/public/browser/plugin_service.h" |
| 22 #include "content/public/browser/site_instance.h" | 23 #include "content/public/browser/site_instance.h" |
| 23 #include "content/public/browser/web_contents.h" | 24 #include "content/public/browser/web_contents.h" |
| 24 #include "printing/print_job_constants.h" | 25 #include "printing/print_job_constants.h" |
| 25 | 26 |
| 26 using content::WebContents; | 27 using content::WebContents; |
| 27 using web_modal::WebContentsModalDialogManager; | 28 using web_modal::WebContentsModalDialogManager; |
| 28 | 29 |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 | 64 |
| 64 chrome::NewTab(browser()); | 65 chrome::NewTab(browser()); |
| 65 } | 66 } |
| 66 | 67 |
| 67 // Create/Get a preview tab for initiator. | 68 // Create/Get a preview tab for initiator. |
| 68 TEST_F(PrintPreviewUIUnitTest, PrintPreviewData) { | 69 TEST_F(PrintPreviewUIUnitTest, PrintPreviewData) { |
| 69 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); | 70 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); |
| 70 ASSERT_TRUE(initiator); | 71 ASSERT_TRUE(initiator); |
| 71 EXPECT_FALSE(IsShowingWebContentsModalDialog(initiator)); | 72 EXPECT_FALSE(IsShowingWebContentsModalDialog(initiator)); |
| 72 | 73 |
| 74 #if defined(USE_AURA) |
| 75 TestingBrowserProcess::GetGlobal()->SetPrintPreviewDialogController( |
| 76 new PrintPreviewDialogControllerTest(GetContext())); |
| 77 #endif |
| 73 printing::PrintPreviewDialogController* controller = | 78 printing::PrintPreviewDialogController* controller = |
| 74 printing::PrintPreviewDialogController::GetInstance(); | 79 printing::PrintPreviewDialogController::GetInstance(); |
| 75 ASSERT_TRUE(controller); | 80 ASSERT_TRUE(controller); |
| 76 | 81 |
| 77 printing::PrintViewManager* print_view_manager = | 82 printing::PrintViewManager* print_view_manager = |
| 78 printing::PrintViewManager::FromWebContents(initiator); | 83 printing::PrintViewManager::FromWebContents(initiator); |
| 79 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); | 84 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); |
| 80 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); | 85 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); |
| 81 | 86 |
| 82 EXPECT_NE(initiator, preview_dialog); | 87 EXPECT_NE(initiator, preview_dialog); |
| (...skipping 26 matching lines...) Expand all Loading... |
| 109 preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, | 114 preview_ui->SetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, |
| 110 dummy_data.get()); | 115 dummy_data.get()); |
| 111 | 116 |
| 112 // Clear the preview data. | 117 // Clear the preview data. |
| 113 preview_ui->ClearAllPreviewData(); | 118 preview_ui->ClearAllPreviewData(); |
| 114 | 119 |
| 115 preview_ui->GetPrintPreviewDataForIndex( | 120 preview_ui->GetPrintPreviewDataForIndex( |
| 116 printing::COMPLETE_PREVIEW_DOCUMENT_INDEX, | 121 printing::COMPLETE_PREVIEW_DOCUMENT_INDEX, |
| 117 &data); | 122 &data); |
| 118 EXPECT_EQ(NULL, data.get()); | 123 EXPECT_EQ(NULL, data.get()); |
| 124 |
| 125 initiator->Close(); |
| 119 } | 126 } |
| 120 | 127 |
| 121 // Set and get the individual draft pages. | 128 // Set and get the individual draft pages. |
| 122 TEST_F(PrintPreviewUIUnitTest, PrintPreviewDraftPages) { | 129 TEST_F(PrintPreviewUIUnitTest, PrintPreviewDraftPages) { |
| 123 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); | 130 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); |
| 124 ASSERT_TRUE(initiator); | 131 ASSERT_TRUE(initiator); |
| 125 | 132 |
| 133 #if defined(USE_AURA) |
| 134 TestingBrowserProcess::GetGlobal()->SetPrintPreviewDialogController( |
| 135 new PrintPreviewDialogControllerTest(GetContext())); |
| 136 #endif |
| 126 printing::PrintPreviewDialogController* controller = | 137 printing::PrintPreviewDialogController* controller = |
| 127 printing::PrintPreviewDialogController::GetInstance(); | 138 printing::PrintPreviewDialogController::GetInstance(); |
| 128 ASSERT_TRUE(controller); | 139 ASSERT_TRUE(controller); |
| 129 | 140 |
| 130 printing::PrintViewManager* print_view_manager = | 141 printing::PrintViewManager* print_view_manager = |
| 131 printing::PrintViewManager::FromWebContents(initiator); | 142 printing::PrintViewManager::FromWebContents(initiator); |
| 132 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); | 143 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); |
| 133 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); | 144 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); |
| 134 | 145 |
| 135 EXPECT_NE(initiator, preview_dialog); | 146 EXPECT_NE(initiator, preview_dialog); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 169 dummy_data.get()); | 180 dummy_data.get()); |
| 170 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 1, | 181 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX + 1, |
| 171 &data); | 182 &data); |
| 172 EXPECT_EQ(dummy_data->size(), data->size()); | 183 EXPECT_EQ(dummy_data->size(), data->size()); |
| 173 EXPECT_EQ(dummy_data.get(), data.get()); | 184 EXPECT_EQ(dummy_data.get(), data.get()); |
| 174 | 185 |
| 175 // Clear the preview data. | 186 // Clear the preview data. |
| 176 preview_ui->ClearAllPreviewData(); | 187 preview_ui->ClearAllPreviewData(); |
| 177 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data); | 188 preview_ui->GetPrintPreviewDataForIndex(printing::FIRST_PAGE_INDEX, &data); |
| 178 EXPECT_EQ(NULL, data.get()); | 189 EXPECT_EQ(NULL, data.get()); |
| 190 |
| 191 initiator->Close(); |
| 192 |
| 179 } | 193 } |
| 180 | 194 |
| 181 // Test the browser-side print preview cancellation functionality. | 195 // Test the browser-side print preview cancellation functionality. |
| 182 TEST_F(PrintPreviewUIUnitTest, GetCurrentPrintPreviewStatus) { | 196 TEST_F(PrintPreviewUIUnitTest, GetCurrentPrintPreviewStatus) { |
| 183 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); | 197 WebContents* initiator = browser()->tab_strip_model()->GetActiveWebContents(); |
| 184 ASSERT_TRUE(initiator); | 198 ASSERT_TRUE(initiator); |
| 185 | 199 |
| 200 #if defined(USE_AURA) |
| 201 TestingBrowserProcess::GetGlobal()->SetPrintPreviewDialogController( |
| 202 new PrintPreviewDialogControllerTest(GetContext())); |
| 203 #endif |
| 186 printing::PrintPreviewDialogController* controller = | 204 printing::PrintPreviewDialogController* controller = |
| 187 printing::PrintPreviewDialogController::GetInstance(); | 205 printing::PrintPreviewDialogController::GetInstance(); |
| 188 ASSERT_TRUE(controller); | 206 ASSERT_TRUE(controller); |
| 189 | 207 |
| 190 printing::PrintViewManager* print_view_manager = | 208 printing::PrintViewManager* print_view_manager = |
| 191 printing::PrintViewManager::FromWebContents(initiator); | 209 printing::PrintViewManager::FromWebContents(initiator); |
| 192 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); | 210 print_view_manager->PrintPreviewNow(initiator->GetMainFrame(), false); |
| 193 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); | 211 WebContents* preview_dialog = controller->GetOrCreatePreviewDialog(initiator); |
| 194 | 212 |
| 195 EXPECT_NE(initiator, preview_dialog); | 213 EXPECT_NE(initiator, preview_dialog); |
| (...skipping 30 matching lines...) Expand all Loading... |
| 226 preview_ui->OnPrintPreviewRequest(kSecondRequestId); | 244 preview_ui->OnPrintPreviewRequest(kSecondRequestId); |
| 227 cancel = false; | 245 cancel = false; |
| 228 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId, | 246 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kFirstRequestId, |
| 229 &cancel); | 247 &cancel); |
| 230 EXPECT_TRUE(cancel); | 248 EXPECT_TRUE(cancel); |
| 231 | 249 |
| 232 cancel = true; | 250 cancel = true; |
| 233 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId, | 251 preview_ui->GetCurrentPrintPreviewStatus(preview_ui_addr, kSecondRequestId, |
| 234 &cancel); | 252 &cancel); |
| 235 EXPECT_FALSE(cancel); | 253 EXPECT_FALSE(cancel); |
| 254 |
| 255 initiator->Close(); |
| 236 } | 256 } |
| OLD | NEW |