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

Unified Diff: chrome/browser/resources/print_preview/native_layer.js

Issue 335583004: Added a test that currently is able to print to pdf. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed style issues, handled the other cases for the checkboxes, got rid of chrome.send for margins Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/print_preview/native_layer.js
diff --git a/chrome/browser/resources/print_preview/native_layer.js b/chrome/browser/resources/print_preview/native_layer.js
index efdd55b36073695ca5a34c475a299e408e7ea0a9..d69ec668b0b9cddb3b3a0dd2142cf5b1a8b352c8 100644
--- a/chrome/browser/resources/print_preview/native_layer.js
+++ b/chrome/browser/resources/print_preview/native_layer.js
@@ -46,6 +46,8 @@ cr.define('print_preview', function() {
global['onPrivetCapabilitiesSet'] =
this.onPrivetCapabilitiesSet_.bind(this);
global['onPrivetPrintFailed'] = this.onPrivetPrintFailed_.bind(this);
+ global['onEnableManipulateSettingsForTest'] =
+ this.onEnableManipulateSettingsForTest_.bind(this);
};
/**
@@ -77,7 +79,9 @@ cr.define('print_preview', function() {
PRIVET_PRINTER_CHANGED: 'print_preview.NativeLayer.PRIVET_PRINTER_CHANGED',
PRIVET_CAPABILITIES_SET:
'print_preview.NativeLayer.PRIVET_CAPABILITIES_SET',
- PRIVET_PRINT_FAILED: 'print_preview.NativeLayer.PRIVET_PRINT_FAILED'
+ PRIVET_PRINT_FAILED: 'print_preview.NativeLayer.PRIVET_PRINT_FAILED',
+ MANIPULATE_SETTINGS_FOR_TEST:
+ 'print_preview.NativeLayer.MANIPULATE_SETTINGS_FOR_TEST'
};
/**
@@ -373,6 +377,10 @@ cr.define('print_preview', function() {
chrome.send('forceOpenNewTab', [url]);
},
+ doneManipulatingSettings: function() {
+ chrome.send('UILoadedForTest');
+ },
+
/**
* @param {!Object} initialSettings Object containing all initial settings.
*/
@@ -672,6 +680,49 @@ cr.define('print_preview', function() {
new Event(NativeLayer.EventType.PRIVET_PRINT_FAILED);
privetPrintFailedEvent.httpError = http_error;
this.dispatchEvent(privetPrintFailedEvent);
+ },
+
+ /**
+ * Function that allows for onManipulateSettings to be called
+ * from the native layer, specifically during testing.
+ */
+ onEnableManipulateSettingsForTest_: function() {
+ global['onManipulateSettingsForTest'] =
+ this.onManipulateSettingsForTest_.bind(this);
+ },
+
+ /**
+ * Function call from browsertest to start clicking certain buttons.
+ * @param {string} messageName The setting that is to be manipulated,
+ * such as the layout settings, or page numbers
+ * @param {string, boolean, undefined} Is the value that we want to
+ * set the particular setting to. For layout settings, page numbers,
+ * and margins, its a string. For 'headers and footers' and
+ * 'background colors and images,' its a boolean. For Save as PDF,
+ * its undefined as it isn't needed.
+ */
+ onManipulateSettingsForTest_: function(messageName, parameter) {
+ var manipulateSettingsEvent =
+ new Event(NativeLayer.EventType.MANIPULATE_SETTINGS_FOR_TEST);
+ manipulateSettingsEvent.messageName = messageName;
+ if (messageName == 'SAVE_AS_PDF') {
+ }
+ else if (messageName == 'LAYOUT_SETTINGS') {
+ manipulateSettingsEvent.isPortrait = parameter;
+ }
+ else if (messageName == 'PAGE_NUMBERS') {
+ manipulateSettingsEvent.pageNumbers = parameter;
+ }
+ else if (messageName == 'HEADERS_AND_FOOTERS') {
+ manipulateSettingsEvent.headersAndFooters = parameter;
+ }
+ else if (messageName == 'BACKGROUND_COLORS_AND_IMAGES') {
+ manipulateSettingsEvent.backgroundColorsAndImages = parameter;
+ }
+ else if (messageName == 'MARGINS') {
+ manipulateSettingsEvent.margins = parameter;
+ }
+ this.dispatchEvent(manipulateSettingsEvent);
}
};

Powered by Google App Engine
This is Rietveld 408576698