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

Unified Diff: chrome/test/data/webui/print_preview/print_preview.js

Issue 2910503003: Print Preview: Migrate JS tests to use Mocha, part 2. (Closed)
Patch Set: Address comments. Created 3 years, 7 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
« no previous file with comments | « no previous file | chrome/test/data/webui/print_preview/print_preview_tests.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/webui/print_preview/print_preview.js
diff --git a/chrome/test/data/webui/print_preview/print_preview.js b/chrome/test/data/webui/print_preview/print_preview.js
index 3986fbabccbae5c856f6e3819c5e1ceaac3983e7..fbc893c79c1c5f034ebc1e9df5c210ded2586f6c 100644
--- a/chrome/test/data/webui/print_preview/print_preview.js
+++ b/chrome/test/data/webui/print_preview/print_preview.js
@@ -296,378 +296,6 @@ function isPrintAsImageEnabled() {
}
-TEST_F('PrintPreviewWebUITest', 'TestSystemDialogLinkIsHiddenInAppKioskMode',
- function() {
- if (!cr.isChromeOS)
- this.initialSettings_.isInAppKioskMode_ = true;
-
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- if (cr.isChromeOS)
- assertEquals(null, $('system-dialog-link'));
- else
- checkElementDisplayed($('system-dialog-link'), false);
- testDone();
- });
-});
-
-// Test that disabled settings hide the disabled sections.
-TEST_F('PrintPreviewWebUITest', 'TestSectionsDisabled', function() {
- this.createPrintPreview();
- checkSectionVisible($('layout-settings'), false);
- checkSectionVisible($('color-settings'), false);
- checkSectionVisible($('copies-settings'), false);
-
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- var device = getCddTemplate("FooDevice");
- device.capabilities.printer.color = {
- "option": [
- {"is_default": true, "type": "STANDARD_COLOR"}
- ]
- };
- delete device.capabilities.printer.copies;
- this.setCapabilities(device);
-
- checkSectionVisible($('layout-settings'), true);
- checkSectionVisible($('color-settings'), false);
- checkSectionVisible($('copies-settings'), false);
-
- this.waitForAnimationToEnd('other-options-collapsible');
- }.bind(this));
-});
-
-// When the source is 'PDF' and 'Save as PDF' option is selected, we hide the
-// fit to page option.
-TEST_F('PrintPreviewWebUITest', 'PrintToPDFSelectedCapabilities', function() {
- // Add PDF printer.
- this.initialSettings_.isDocumentModifiable_ = false;
- this.initialSettings_.systemDefaultDestinationId_ = 'Save as PDF';
- this.setInitialSettings();
-
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- var device = {
- printerId: 'Save as PDF',
- capabilities: {
- version: '1.0',
- printer: {
- page_orientation: {
- option: [
- {type: 'AUTO', is_default: true},
- {type: 'PORTRAIT'},
- {type: 'LANDSCAPE'}
- ]
- },
- color: {
- option: [
- {type: 'STANDARD_COLOR', is_default: true}
- ]
- },
- media_size: {
- option: [
- { name: 'NA_LETTER',
- width_microns: 0,
- height_microns: 0,
- is_default: true
- }
- ]
- }
- }
- }
- };
- this.setCapabilities(device);
-
- var otherOptions = $('other-options-settings');
- // If rasterization is an option, other options should be visible. If
- // not, there should be no available other options.
- checkSectionVisible(otherOptions, isPrintAsImageEnabled());
- if (isPrintAsImageEnabled()) {
- checkElementDisplayed(
- otherOptions.querySelector('#fit-to-page-container'), false);
- checkElementDisplayed(
- otherOptions.querySelector('#rasterize-container'), true);
- }
- checkSectionVisible($('media-size-settings'), false);
- checkSectionVisible($('scaling-settings'), false);
-
- testDone();
- }.bind(this));
-});
-
-// When the source is 'HTML', we always hide the fit to page option and show
-// media size option.
-TEST_F('PrintPreviewWebUITest', 'SourceIsHTMLCapabilities', function() {
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- var otherOptions = $('other-options-settings');
- var fitToPage = otherOptions.querySelector('#fit-to-page-container');
- var rasterize;
- if (isPrintAsImageEnabled())
- rasterize = otherOptions.querySelector('#rasterize-container');
- var mediaSize = $('media-size-settings');
- var scalingSettings = $('scaling-settings');
-
- // Check that options are collapsed (section is visible, because duplex
- // is available).
- checkSectionVisible(otherOptions, true);
- checkElementDisplayed(fitToPage, false);
- if (isPrintAsImageEnabled())
- checkElementDisplayed(rasterize, false);
- checkSectionVisible(mediaSize, false);
- checkSectionVisible(scalingSettings, false);
-
- this.expandMoreSettings();
-
- checkElementDisplayed(fitToPage, false);
- if (isPrintAsImageEnabled())
- checkElementDisplayed(rasterize, false);
- checkSectionVisible(mediaSize, true);
- checkSectionVisible(scalingSettings, true);
-
- this.waitForAnimationToEnd('more-settings');
- }.bind(this));
-});
-
-// When the source is "PDF", depending on the selected destination printer, we
-// show/hide the fit to page option and hide media size selection.
-TEST_F('PrintPreviewWebUITest', 'SourceIsPDFCapabilities', function() {
- this.initialSettings_.isDocumentModifiable_ = false;
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- var otherOptions = $('other-options-settings');
- var scalingSettings = $('scaling-settings');
- var fitToPageContainer =
- otherOptions.querySelector('#fit-to-page-container');
- var rasterizeContainer;
- if (isPrintAsImageEnabled()) {
- rasterizeContainer =
- otherOptions.querySelector('#rasterize-container');
- }
-
- checkSectionVisible(otherOptions, true);
- checkElementDisplayed(fitToPageContainer, true);
- if (isPrintAsImageEnabled())
- checkElementDisplayed(rasterizeContainer, false);
- expectTrue(
- fitToPageContainer.querySelector('.checkbox').checked);
- this.expandMoreSettings();
- if (isPrintAsImageEnabled()) {
- checkElementDisplayed(rasterizeContainer, true);
- expectFalse(
- rasterizeContainer.querySelector('.checkbox').checked);
- }
- checkSectionVisible($('media-size-settings'), true);
- checkSectionVisible(scalingSettings, true);
-
- this.waitForAnimationToEnd('other-options-collapsible');
- }.bind(this));
-});
-
-// When the source is "PDF", depending on the selected destination printer, we
-// show/hide the fit to page option and hide media size selection.
-TEST_F('PrintPreviewWebUITest', 'ScalingUnchecksFitToPage', function() {
- this.initialSettings_.isDocumentModifiable_ = false;
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- var otherOptions = $('other-options-settings');
- var scalingSettings = $('scaling-settings');
-
- checkSectionVisible(otherOptions, true);
- var fitToPageContainer =
- otherOptions.querySelector('#fit-to-page-container');
- checkElementDisplayed(fitToPageContainer, true);
- expectTrue(
- fitToPageContainer.querySelector('.checkbox').checked);
- this.expandMoreSettings();
- checkSectionVisible($('media-size-settings'), true);
- checkSectionVisible(scalingSettings, true);
-
- // Change scaling input
- var scalingInput = scalingSettings.querySelector('.user-value');
- expectEquals('100', scalingInput.value);
- scalingInput.stepUp(5);
- expectEquals('105', scalingInput.value);
-
- // Trigger the event
- var enterEvent = document.createEvent('Event');
- enterEvent.initEvent('keydown');
- enterEvent.keyCode = 'Enter';
- scalingInput.dispatchEvent(enterEvent);
- expectFalse(
- fitToPageContainer.querySelector('.checkbox').checked);
-
- this.waitForAnimationToEnd('other-options-collapsible');
- }.bind(this));
-});
-
-// When the number of copies print preset is set for source 'PDF', we update
-// the copies value if capability is supported by printer.
-TEST_F('PrintPreviewWebUITest', 'CheckNumCopiesPrintPreset', function() {
- this.initialSettings_.isDocumentModifiable_ = false;
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- // Indicate that the number of copies print preset is set for source
- // PDF.
- var printPresetOptions = {
- disableScaling: true,
- copies: 2
- };
- var printPresetOptionsEvent = new Event(
- print_preview.NativeLayer.EventType.PRINT_PRESET_OPTIONS);
- printPresetOptionsEvent.optionsFromDocument = printPresetOptions;
- this.nativeLayer_.getEventTarget().
- dispatchEvent(printPresetOptionsEvent);
-
- checkSectionVisible($('copies-settings'), true);
- expectEquals(
- printPresetOptions.copies,
- parseInt($('copies-settings').querySelector('.user-value').value));
-
- this.waitForAnimationToEnd('other-options-collapsible');
- }.bind(this));
-});
-
-// When the duplex print preset is set for source 'PDF', we update the
-// duplex setting if capability is supported by printer.
-TEST_F('PrintPreviewWebUITest', 'CheckDuplexPrintPreset', function() {
- this.initialSettings_.isDocumentModifiable_ = false;
- this.setInitialSettings();
-
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- // Indicate that the duplex print preset is set to "long edge" for
- // source PDF.
- var printPresetOptions = {
- duplex: 1
- };
- var printPresetOptionsEvent = new Event(
- print_preview.NativeLayer.EventType.PRINT_PRESET_OPTIONS);
- printPresetOptionsEvent.optionsFromDocument = printPresetOptions;
- this.nativeLayer_.getEventTarget().
- dispatchEvent(printPresetOptionsEvent);
-
- var otherOptions = $('other-options-settings');
- checkSectionVisible(otherOptions, true);
- var duplexContainer = otherOptions.querySelector('#duplex-container');
- checkElementDisplayed(duplexContainer, true);
- expectTrue(duplexContainer.querySelector('.checkbox').checked);
-
- this.waitForAnimationToEnd('other-options-collapsible');
- }.bind(this));
-});
-
-// Make sure that custom margins controls are properly set up.
-TEST_F('PrintPreviewWebUITest', 'CustomMarginsControlsCheck', function() {
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- this.printPreview_.printTicketStore_.marginsType.updateValue(
- print_preview.ticket_items.MarginsTypeValue.CUSTOM);
-
- ['left', 'top', 'right', 'bottom'].forEach(function(margin) {
- var control =
- $('preview-area').querySelector('.margin-control-' + margin);
- assertNotEquals(null, control);
- var input = control.querySelector('.margin-control-textbox');
- assertTrue(input.hasAttribute('aria-label'));
- assertNotEquals('undefined', input.getAttribute('aria-label'));
- });
- this.waitForAnimationToEnd('more-settings');
- }.bind(this));
-});
-
-// Page layout has zero margins. Hide header and footer option.
-TEST_F('PrintPreviewWebUITest', 'PageLayoutHasNoMarginsHideHeaderFooter',
- function() {
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- var otherOptions = $('other-options-settings');
- var headerFooter =
- otherOptions.querySelector('#header-footer-container');
-
- // Check that options are collapsed (section is visible, because duplex
- // is available).
- checkSectionVisible(otherOptions, true);
- checkElementDisplayed(headerFooter, false);
-
- this.expandMoreSettings();
-
- checkElementDisplayed(headerFooter, true);
-
- this.printPreview_.printTicketStore_.marginsType.updateValue(
- print_preview.ticket_items.MarginsTypeValue.CUSTOM);
- this.printPreview_.printTicketStore_.customMargins.updateValue(
- new print_preview.Margins(0, 0, 0, 0));
-
- checkElementDisplayed(headerFooter, false);
-
- this.waitForAnimationToEnd('more-settings');
- }.bind(this));
-});
-
-// Page layout has half-inch margins. Show header and footer option.
-TEST_F('PrintPreviewWebUITest', 'PageLayoutHasMarginsShowHeaderFooter',
- function() {
- this.setInitialSettings();
- this.nativeLayer_.whenCalled('getInitialSettings').then(
- function() {
- this.setLocalDestinations();
- this.setCapabilities(getCddTemplate("FooDevice"));
-
- var otherOptions = $('other-options-settings');
- var headerFooter =
- otherOptions.querySelector('#header-footer-container');
-
- // Check that options are collapsed (section is visible, because duplex
- // is available).
- checkSectionVisible(otherOptions, true);
- checkElementDisplayed(headerFooter, false);
-
- this.expandMoreSettings();
-
- checkElementDisplayed(headerFooter, true);
-
- this.printPreview_.printTicketStore_.marginsType.updateValue(
- print_preview.ticket_items.MarginsTypeValue.CUSTOM);
- this.printPreview_.printTicketStore_.customMargins.updateValue(
- new print_preview.Margins(36, 36, 36, 36));
-
- checkElementDisplayed(headerFooter, true);
-
- this.waitForAnimationToEnd('more-settings');
- }.bind(this));
-});
-
// Page layout has zero top and bottom margins. Hide header and footer option.
TEST_F('PrintPreviewWebUITest',
'ZeroTopAndBottomMarginsHideHeaderFooter',
« no previous file with comments | « no previous file | chrome/test/data/webui/print_preview/print_preview_tests.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698