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

Side by Side Diff: chrome/renderer/print_web_view_helper_browsertest.cc

Issue 7621087: Print Preview: Go from event driven print preview back to print preview with sync messages. The s... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: merge, undo print preview id change Created 9 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "chrome/common/chrome_switches.h" 5 #include "chrome/common/chrome_switches.h"
6 #include "chrome/common/print_messages.h" 6 #include "chrome/common/print_messages.h"
7 #include "chrome/renderer/print_web_view_helper.h" 7 #include "chrome/renderer/print_web_view_helper.h"
8 #include "chrome/test/base/render_view_test.h" 8 #include "chrome/test/base/render_view_test.h"
9 #include "printing/print_job_constants.h" 9 #include "printing/print_job_constants.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 23 matching lines...) Expand all
34 "<body><p id=\"pdf-viewer\">Hello World!</p></body>"; 34 "<body><p id=\"pdf-viewer\">Hello World!</p></body>";
35 35
36 void CreatePrintSettingsDictionary(DictionaryValue* dict) { 36 void CreatePrintSettingsDictionary(DictionaryValue* dict) {
37 dict->SetBoolean(printing::kSettingLandscape, false); 37 dict->SetBoolean(printing::kSettingLandscape, false);
38 dict->SetBoolean(printing::kSettingCollate, false); 38 dict->SetBoolean(printing::kSettingCollate, false);
39 dict->SetBoolean(printing::kSettingColor, false); 39 dict->SetBoolean(printing::kSettingColor, false);
40 dict->SetBoolean(printing::kSettingPrintToPDF, true); 40 dict->SetBoolean(printing::kSettingPrintToPDF, true);
41 dict->SetInteger(printing::kSettingDuplexMode, printing::SIMPLEX); 41 dict->SetInteger(printing::kSettingDuplexMode, printing::SIMPLEX);
42 dict->SetInteger(printing::kSettingCopies, 1); 42 dict->SetInteger(printing::kSettingCopies, 1);
43 dict->SetString(printing::kSettingDeviceName, "dummy"); 43 dict->SetString(printing::kSettingDeviceName, "dummy");
44 dict->SetString(printing::kPreviewUIAddr, "0xb33fbeef");
44 dict->SetInteger(printing::kPreviewRequestID, 12345); 45 dict->SetInteger(printing::kPreviewRequestID, 12345);
45 dict->SetBoolean(printing::kIsFirstRequest, true); 46 dict->SetBoolean(printing::kIsFirstRequest, true);
46 dict->SetBoolean(printing::kSettingHeaderFooterEnabled, false); 47 dict->SetBoolean(printing::kSettingHeaderFooterEnabled, false);
47 } 48 }
48 49
49 } // namespace 50 } // namespace
50 51
51 class PrintWebViewHelperTestBase : public RenderViewTest { 52 class PrintWebViewHelperTestBase : public RenderViewTest {
52 public: 53 public:
53 PrintWebViewHelperTestBase() {} 54 PrintWebViewHelperTestBase() {}
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 // that channel all works. 340 // that channel all works.
340 TEST_F(PrintWebViewHelperPreviewTest, OnPrintPreview) { 341 TEST_F(PrintWebViewHelperPreviewTest, OnPrintPreview) {
341 LoadHTML(kHelloWorldHTML); 342 LoadHTML(kHelloWorldHTML);
342 343
343 PrintWebViewHelper::Get(view_)->OnInitiatePrintPreview(); 344 PrintWebViewHelper::Get(view_)->OnInitiatePrintPreview();
344 // Fill in some dummy values. 345 // Fill in some dummy values.
345 DictionaryValue dict; 346 DictionaryValue dict;
346 CreatePrintSettingsDictionary(&dict); 347 CreatePrintSettingsDictionary(&dict);
347 PrintWebViewHelper::Get(view_)->OnPrintPreview(dict); 348 PrintWebViewHelper::Get(view_)->OnPrintPreview(dict);
348 349
349 // Need to finish simulating print preview.
350 // Generate the page and finalize it.
351 PrintWebViewHelper::Get(view_)->OnContinuePreview(
352 printing::INVALID_PAGE_INDEX);
353 PrintWebViewHelper::Get(view_)->OnContinuePreview(
354 printing::INVALID_PAGE_INDEX);
355
356 EXPECT_EQ(0, render_thread_.print_preview_pages_remaining()); 350 EXPECT_EQ(0, render_thread_.print_preview_pages_remaining());
357 VerifyPrintPreviewFailed(false); 351 VerifyPrintPreviewFailed(false);
358 VerifyPrintPreviewGenerated(true); 352 VerifyPrintPreviewGenerated(true);
359 VerifyPagesPrinted(false); 353 VerifyPagesPrinted(false);
360 } 354 }
361 355
362 // Tests that print preview fails and receiving error messages through 356 // Tests that print preview fails and receiving error messages through
363 // that channel all works. 357 // that channel all works.
364 TEST_F(PrintWebViewHelperPreviewTest, OnPrintPreviewFail) { 358 TEST_F(PrintWebViewHelperPreviewTest, OnPrintPreviewFail) {
365 LoadHTML(kHelloWorldHTML); 359 LoadHTML(kHelloWorldHTML);
(...skipping 29 matching lines...) Expand all
395 LoadHTML(kPrintPreviewHTML); 389 LoadHTML(kPrintPreviewHTML);
396 390
397 // An empty dictionary should fail. 391 // An empty dictionary should fail.
398 DictionaryValue empty_dict; 392 DictionaryValue empty_dict;
399 PrintWebViewHelper::Get(view_)->OnPrintForPrintPreview(empty_dict); 393 PrintWebViewHelper::Get(view_)->OnPrintForPrintPreview(empty_dict);
400 394
401 VerifyPrintFailed(true); 395 VerifyPrintFailed(true);
402 VerifyPagesPrinted(false); 396 VerifyPagesPrinted(false);
403 } 397 }
404 #endif // !defined(OS_CHROMEOS) 398 #endif // !defined(OS_CHROMEOS)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698