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

Side by Side Diff: chrome/test/data/webui/print_preview.js

Issue 313723002: Convert local printer capabilites to CDD format to unify with cloud printers and PDF printer. This … (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix clang reported errors. 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/service/cloud_print/print_system_win.cc ('k') | printing/backend/cups_helper.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 /** 5 /**
6 * Test fixture for print preview WebUI testing. 6 * Test fixture for print preview WebUI testing.
7 * @constructor 7 * @constructor
8 * @extends {testing.Test} 8 * @extends {testing.Test}
9 */ 9 */
10 function PrintPreviewWebUITest() { 10 function PrintPreviewWebUITest() {
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 assertNotEquals(null, section); 217 assertNotEquals(null, section);
218 expectEquals( 218 expectEquals(
219 visible, section.classList.contains('visible'), 'section=' + section.id); 219 visible, section.classList.contains('visible'), 'section=' + section.id);
220 } 220 }
221 221
222 function checkElementDisplayed(el, isDisplayed) { 222 function checkElementDisplayed(el, isDisplayed) {
223 assertNotEquals(null, el); 223 assertNotEquals(null, el);
224 expectEquals(isDisplayed, !el.hidden); 224 expectEquals(isDisplayed, !el.hidden);
225 } 225 }
226 226
227 function getCddTemplate(printerId) {
228 return {
229 "printerId": printerId,
230 "capabilities": {
231 "version": "1.0",
232 "printer": {
233 "supported_content_type": [{"content_type": "application/pdf"}],
234 "collate": {},
235 "color": {
236 "option": [
237 {"is_default": true, "type": "STANDARD_COLOR"},
238 {"type": "STANDARD_MONOCHROME"}
239 ]
240 },
241 "copies": {},
242 "duplex": {
243 "option": [
244 {"is_default": true, "type": "NO_DUPLEX"},
245 {"type": "LONG_EDGE"},
246 {"type": "SHORT_EDGE"}
247 ]
248 },
249 "page_orientation": {
250 "option": [
251 {"is_default": true, "type": "PORTRAIT"},
252 {"type": "LANDSCAPE"},
253 {"type": "AUTO"}
254 ]
255 }
256 }
257 }
258 };
259 }
260
227 // Test that disabled settings hide the disabled sections. 261 // Test that disabled settings hide the disabled sections.
228 TEST_F('PrintPreviewWebUITest', 'TestSectionsDisabled', function() { 262 TEST_F('PrintPreviewWebUITest', 'TestSectionsDisabled', function() {
229 checkSectionVisible($('layout-settings'), false); 263 checkSectionVisible($('layout-settings'), false);
230 checkSectionVisible($('color-settings'), false); 264 checkSectionVisible($('color-settings'), false);
231 checkSectionVisible($('copies-settings'), false); 265 checkSectionVisible($('copies-settings'), false);
232 266
233 var initialSettingsSetEvent = 267 var initialSettingsSetEvent =
234 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 268 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
235 initialSettingsSetEvent.initialSettings = this.initialSettings_; 269 initialSettingsSetEvent.initialSettings = this.initialSettings_;
236 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 270 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
237 271
238 var localDestsSetEvent = 272 var localDestsSetEvent =
239 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 273 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
240 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 274 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
241 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 275 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
242 276
243 var capsSetEvent = 277 var capsSetEvent =
244 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 278 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
245 capsSetEvent.settingsInfo = { 279 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
246 'printerId': 'FooDevice', 280 capsSetEvent.settingsInfo.capabilities.printer.color = {
247 'disableColorOption': true, 281 "option": [
248 'setColorAsDefault': true, 282 {"is_default": true, "type": "STANDARD_COLOR"}
249 'disableCopiesOption': true, 283 ]
250 'disableLandscapeOption': false,
251 'printerDefaultDuplexValue': 0
252 }; 284 };
285 delete capsSetEvent.settingsInfo.capabilities.printer.copies;
253 this.nativeLayer_.dispatchEvent(capsSetEvent); 286 this.nativeLayer_.dispatchEvent(capsSetEvent);
254 287
255 checkSectionVisible($('layout-settings'), true); 288 checkSectionVisible($('layout-settings'), true);
256 checkSectionVisible($('color-settings'), false); 289 checkSectionVisible($('color-settings'), false);
257 checkSectionVisible($('copies-settings'), false); 290 checkSectionVisible($('copies-settings'), false);
258 }); 291 });
259 292
260 // When the source is 'PDF' and 'Save as PDF' option is selected, we hide the 293 // When the source is 'PDF' and 'Save as PDF' option is selected, we hide the
261 // fit to page option. 294 // fit to page option.
262 TEST_F('PrintPreviewWebUITest', 295 TEST_F('PrintPreviewWebUITest',
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 initialSettingsSetEvent.initialSettings = this.initialSettings_; 347 initialSettingsSetEvent.initialSettings = this.initialSettings_;
315 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 348 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
316 349
317 var localDestsSetEvent = 350 var localDestsSetEvent =
318 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 351 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
319 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 352 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
320 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 353 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
321 354
322 var capsSetEvent = 355 var capsSetEvent =
323 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 356 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
324 capsSetEvent.settingsInfo = { 357 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
325 'printerId': 'FooDevice',
326 'disableColorOption': false,
327 'setColorAsDefault': true,
328 'disableCopiesOption': true,
329 'disableLandscapeOption': true,
330 'printerDefaultDuplexValue': 0
331 };
332 this.nativeLayer_.dispatchEvent(capsSetEvent); 358 this.nativeLayer_.dispatchEvent(capsSetEvent);
333 359
334 checkElementDisplayed( 360 checkElementDisplayed(
335 $('other-options-settings').querySelector('.fit-to-page-container'), 361 $('other-options-settings').querySelector('.fit-to-page-container'),
336 false); 362 false);
337 }); 363 });
338 364
339 // When the source is "PDF", depending on the selected destination printer, we 365 // When the source is "PDF", depending on the selected destination printer, we
340 // show/hide the fit to page option. 366 // show/hide the fit to page option.
341 TEST_F('PrintPreviewWebUITest', 'SourceIsPDFShowFitToPageOption', function() { 367 TEST_F('PrintPreviewWebUITest', 'SourceIsPDFShowFitToPageOption', function() {
342 this.initialSettings_.isDocumentModifiable_ = false; 368 this.initialSettings_.isDocumentModifiable_ = false;
343 369
344 var initialSettingsSetEvent = 370 var initialSettingsSetEvent =
345 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 371 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
346 initialSettingsSetEvent.initialSettings = this.initialSettings_; 372 initialSettingsSetEvent.initialSettings = this.initialSettings_;
347 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 373 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
348 374
349 var localDestsSetEvent = 375 var localDestsSetEvent =
350 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 376 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
351 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 377 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
352 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 378 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
353 379
354 var capsSetEvent = 380 var capsSetEvent =
355 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 381 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
356 capsSetEvent.settingsInfo = { 382 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
357 'printerId': 'FooDevice',
358 'disableColorOption': false,
359 'setColorAsDefault': true,
360 'disableCopiesOption': true,
361 'disableLandscapeOption': true,
362 'printerDefaultDuplexValue': 0
363 };
364 this.nativeLayer_.dispatchEvent(capsSetEvent); 383 this.nativeLayer_.dispatchEvent(capsSetEvent);
365 384
366 checkElementDisplayed( 385 checkElementDisplayed(
367 $('other-options-settings').querySelector('.fit-to-page-container'), 386 $('other-options-settings').querySelector('.fit-to-page-container'),
368 true); 387 true);
369 expectTrue( 388 expectTrue(
370 $('other-options-settings').querySelector('.fit-to-page-checkbox'). 389 $('other-options-settings').querySelector('.fit-to-page-checkbox').
371 checked); 390 checked);
372 }); 391 });
373 392
374 // When the print scaling is disabled for the source "PDF", we show the fit 393 // When the print scaling is disabled for the source "PDF", we show the fit
375 // to page option but the state is unchecked by default. 394 // to page option but the state is unchecked by default.
376 TEST_F('PrintPreviewWebUITest', 'PrintScalingDisabledForPlugin', function() { 395 TEST_F('PrintPreviewWebUITest', 'PrintScalingDisabledForPlugin', function() {
377 this.initialSettings_.isDocumentModifiable_ = false; 396 this.initialSettings_.isDocumentModifiable_ = false;
378 397
379 var initialSettingsSetEvent = 398 var initialSettingsSetEvent =
380 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 399 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
381 initialSettingsSetEvent.initialSettings = this.initialSettings_; 400 initialSettingsSetEvent.initialSettings = this.initialSettings_;
382 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 401 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
383 402
384 var localDestsSetEvent = 403 var localDestsSetEvent =
385 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 404 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
386 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 405 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
387 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 406 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
388 407
389 var capsSetEvent = 408 var capsSetEvent =
390 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 409 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
391 capsSetEvent.settingsInfo = { 410 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
392 'printerId': 'FooDevice',
393 'disableColorOption': false,
394 'setColorAsDefault': true,
395 'disableCopiesOption': true,
396 'disableLandscapeOption': true,
397 'printerDefaultDuplexValue': 0
398 };
399 this.nativeLayer_.dispatchEvent(capsSetEvent); 411 this.nativeLayer_.dispatchEvent(capsSetEvent);
400 412
401 // Indicate that the PDF does not support scaling by default. 413 // Indicate that the PDF does not support scaling by default.
402 cr.dispatchSimpleEvent( 414 cr.dispatchSimpleEvent(
403 this.nativeLayer_, print_preview.NativeLayer.EventType.DISABLE_SCALING); 415 this.nativeLayer_, print_preview.NativeLayer.EventType.DISABLE_SCALING);
404 416
405 checkElementDisplayed( 417 checkElementDisplayed(
406 $('other-options-settings').querySelector('.fit-to-page-container'), 418 $('other-options-settings').querySelector('.fit-to-page-container'),
407 true); 419 true);
408 expectFalse( 420 expectFalse(
409 $('other-options-settings').querySelector('.fit-to-page-checkbox'). 421 $('other-options-settings').querySelector('.fit-to-page-checkbox').
410 checked); 422 checked);
411 }); 423 });
412 424
413 // Make sure that custom margins controls are properly set up. 425 // Make sure that custom margins controls are properly set up.
414 TEST_F('PrintPreviewWebUITest', 'CustomMarginsControlsCheck', function() { 426 TEST_F('PrintPreviewWebUITest', 'CustomMarginsControlsCheck', function() {
415 var initialSettingsSetEvent = 427 var initialSettingsSetEvent =
416 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 428 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
417 initialSettingsSetEvent.initialSettings = this.initialSettings_; 429 initialSettingsSetEvent.initialSettings = this.initialSettings_;
418 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 430 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
419 431
420 var localDestsSetEvent = 432 var localDestsSetEvent =
421 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 433 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
422 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 434 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
423 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 435 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
424 436
425 var capsSetEvent = 437 var capsSetEvent =
426 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 438 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
427 capsSetEvent.settingsInfo = { 439 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
428 'printerId': 'FooDevice',
429 'disableColorOption': false,
430 'setColorAsDefault': true,
431 'disableCopiesOption': true,
432 'disableLandscapeOption': true,
433 'printerDefaultDuplexValue': 0
434 };
435 this.nativeLayer_.dispatchEvent(capsSetEvent); 440 this.nativeLayer_.dispatchEvent(capsSetEvent);
436 441
437 printPreview.printTicketStore_.marginsType.updateValue( 442 printPreview.printTicketStore_.marginsType.updateValue(
438 print_preview.ticket_items.MarginsType.Value.CUSTOM); 443 print_preview.ticket_items.MarginsType.Value.CUSTOM);
439 444
440 ['left', 'top', 'right', 'bottom'].forEach(function(margin) { 445 ['left', 'top', 'right', 'bottom'].forEach(function(margin) {
441 var control = $('preview-area').querySelector('.margin-control-' + margin); 446 var control = $('preview-area').querySelector('.margin-control-' + margin);
442 assertNotEquals(null, control); 447 assertNotEquals(null, control);
443 var input = control.querySelector('.margin-control-textbox'); 448 var input = control.querySelector('.margin-control-textbox');
444 assertTrue(input.hasAttribute('aria-label')); 449 assertTrue(input.hasAttribute('aria-label'));
(...skipping 10 matching lines...) Expand all
455 initialSettingsSetEvent.initialSettings = this.initialSettings_; 460 initialSettingsSetEvent.initialSettings = this.initialSettings_;
456 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 461 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
457 462
458 var localDestsSetEvent = 463 var localDestsSetEvent =
459 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 464 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
460 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 465 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
461 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 466 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
462 467
463 var capsSetEvent = 468 var capsSetEvent =
464 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 469 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
465 capsSetEvent.settingsInfo = { 470 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
466 'printerId': 'FooDevice',
467 'disableColorOption': false,
468 'setColorAsDefault': true,
469 'disableCopiesOption': true,
470 'disableLandscapeOption': true,
471 'printerDefaultDuplexValue': 0
472 };
473 this.nativeLayer_.dispatchEvent(capsSetEvent); 471 this.nativeLayer_.dispatchEvent(capsSetEvent);
474 472
475 checkElementDisplayed( 473 checkElementDisplayed(
476 $('other-options-settings').querySelector('.header-footer-container'), 474 $('other-options-settings').querySelector('.header-footer-container'),
477 true); 475 true);
478 476
479 printPreview.printTicketStore_.marginsType.updateValue( 477 printPreview.printTicketStore_.marginsType.updateValue(
480 print_preview.ticket_items.MarginsType.Value.CUSTOM); 478 print_preview.ticket_items.MarginsType.Value.CUSTOM);
481 printPreview.printTicketStore_.customMargins.updateValue( 479 printPreview.printTicketStore_.customMargins.updateValue(
482 new print_preview.Margins(0, 0, 0, 0)); 480 new print_preview.Margins(0, 0, 0, 0));
(...skipping 12 matching lines...) Expand all
495 initialSettingsSetEvent.initialSettings = this.initialSettings_; 493 initialSettingsSetEvent.initialSettings = this.initialSettings_;
496 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 494 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
497 495
498 var localDestsSetEvent = 496 var localDestsSetEvent =
499 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 497 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
500 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 498 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
501 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 499 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
502 500
503 var capsSetEvent = 501 var capsSetEvent =
504 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 502 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
505 capsSetEvent.settingsInfo = { 503 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
506 'printerId': 'FooDevice',
507 'disableColorOption': false,
508 'setColorAsDefault': true,
509 'disableCopiesOption': true,
510 'disableLandscapeOption': true,
511 'printerDefaultDuplexValue': 0
512 };
513 this.nativeLayer_.dispatchEvent(capsSetEvent); 504 this.nativeLayer_.dispatchEvent(capsSetEvent);
514 505
515 checkElementDisplayed( 506 checkElementDisplayed(
516 $('other-options-settings').querySelector('.header-footer-container'), 507 $('other-options-settings').querySelector('.header-footer-container'),
517 true); 508 true);
518 509
519 printPreview.printTicketStore_.marginsType.updateValue( 510 printPreview.printTicketStore_.marginsType.updateValue(
520 print_preview.ticket_items.MarginsType.Value.CUSTOM); 511 print_preview.ticket_items.MarginsType.Value.CUSTOM);
521 printPreview.printTicketStore_.customMargins.updateValue( 512 printPreview.printTicketStore_.customMargins.updateValue(
522 new print_preview.Margins(36, 36, 36, 36)); 513 new print_preview.Margins(36, 36, 36, 36));
(...skipping 12 matching lines...) Expand all
535 initialSettingsSetEvent.initialSettings = this.initialSettings_; 526 initialSettingsSetEvent.initialSettings = this.initialSettings_;
536 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 527 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
537 528
538 var localDestsSetEvent = 529 var localDestsSetEvent =
539 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 530 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
540 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 531 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
541 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 532 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
542 533
543 var capsSetEvent = 534 var capsSetEvent =
544 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 535 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
545 capsSetEvent.settingsInfo = { 536 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
546 'printerId': 'FooDevice',
547 'disableColorOption': false,
548 'setColorAsDefault': true,
549 'disableCopiesOption': true,
550 'disableLandscapeOption': true,
551 'printerDefaultDuplexValue': 0
552 };
553 this.nativeLayer_.dispatchEvent(capsSetEvent); 537 this.nativeLayer_.dispatchEvent(capsSetEvent);
554 538
555 checkElementDisplayed( 539 checkElementDisplayed(
556 $('other-options-settings').querySelector('.header-footer-container'), 540 $('other-options-settings').querySelector('.header-footer-container'),
557 true); 541 true);
558 542
559 printPreview.printTicketStore_.marginsType.updateValue( 543 printPreview.printTicketStore_.marginsType.updateValue(
560 print_preview.ticket_items.MarginsType.Value.CUSTOM); 544 print_preview.ticket_items.MarginsType.Value.CUSTOM);
561 printPreview.printTicketStore_.customMargins.updateValue( 545 printPreview.printTicketStore_.customMargins.updateValue(
562 new print_preview.Margins(0, 36, 0, 36)); 546 new print_preview.Margins(0, 36, 0, 36));
(...skipping 13 matching lines...) Expand all
576 initialSettingsSetEvent.initialSettings = this.initialSettings_; 560 initialSettingsSetEvent.initialSettings = this.initialSettings_;
577 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 561 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
578 562
579 var localDestsSetEvent = 563 var localDestsSetEvent =
580 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 564 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
581 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 565 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
582 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 566 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
583 567
584 var capsSetEvent = 568 var capsSetEvent =
585 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 569 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
586 capsSetEvent.settingsInfo = { 570 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
587 'printerId': 'FooDevice',
588 'disableColorOption': false,
589 'setColorAsDefault': true,
590 'disableCopiesOption': true,
591 'disableLandscapeOption': true,
592 'printerDefaultDuplexValue': 0
593 };
594 this.nativeLayer_.dispatchEvent(capsSetEvent); 571 this.nativeLayer_.dispatchEvent(capsSetEvent);
595 572
596 checkElementDisplayed( 573 checkElementDisplayed(
597 $('other-options-settings').querySelector('.header-footer-container'), 574 $('other-options-settings').querySelector('.header-footer-container'),
598 true); 575 true);
599 576
600 printPreview.printTicketStore_.marginsType.updateValue( 577 printPreview.printTicketStore_.marginsType.updateValue(
601 print_preview.ticket_items.MarginsType.Value.CUSTOM); 578 print_preview.ticket_items.MarginsType.Value.CUSTOM);
602 printPreview.printTicketStore_.customMargins.updateValue( 579 printPreview.printTicketStore_.customMargins.updateValue(
603 new print_preview.Margins(0, 36, 36, 36)); 580 new print_preview.Margins(0, 36, 36, 36));
(...skipping 10 matching lines...) Expand all
614 initialSettingsSetEvent.initialSettings = this.initialSettings_; 591 initialSettingsSetEvent.initialSettings = this.initialSettings_;
615 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 592 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
616 593
617 var localDestsSetEvent = 594 var localDestsSetEvent =
618 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 595 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
619 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 596 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
620 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 597 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
621 598
622 var capsSetEvent = 599 var capsSetEvent =
623 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 600 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
624 capsSetEvent.settingsInfo = { 601 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
625 'printerId': 'FooDevice',
626 'disableColorOption': false,
627 'setColorAsDefault': true,
628 'disableCopiesOption': false,
629 'disableLandscapeOption': true,
630 'printerDefaultDuplexValue': 0
631 };
632 this.nativeLayer_.dispatchEvent(capsSetEvent); 602 this.nativeLayer_.dispatchEvent(capsSetEvent);
633 603
634 checkSectionVisible($('color-settings'), true); 604 checkSectionVisible($('color-settings'), true);
635 605
636 var colorOption = $('color-settings').querySelector('.color-option'); 606 var colorOption = $('color-settings').querySelector('.color-option');
637 var bwOption = $('color-settings').querySelector('.bw-option'); 607 var bwOption = $('color-settings').querySelector('.bw-option');
638 expectTrue(colorOption.checked); 608 expectTrue(colorOption.checked);
639 expectFalse(bwOption.checked); 609 expectFalse(bwOption.checked);
640 }); 610 });
641 611
642 //Test that the color settings are set according to the printer capabilities. 612 //Test that the color settings are set according to the printer capabilities.
643 TEST_F('PrintPreviewWebUITest', 'TestColorSettingsFalse', function() { 613 TEST_F('PrintPreviewWebUITest', 'TestColorSettingsFalse', function() {
644 var initialSettingsSetEvent = 614 var initialSettingsSetEvent =
645 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 615 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
646 initialSettingsSetEvent.initialSettings = this.initialSettings_; 616 initialSettingsSetEvent.initialSettings = this.initialSettings_;
647 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 617 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
648 618
649 var localDestsSetEvent = 619 var localDestsSetEvent =
650 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 620 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
651 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 621 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
652 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 622 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
653 623
654 var capsSetEvent = 624 var capsSetEvent =
655 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 625 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
656 capsSetEvent.settingsInfo = { 626 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
657 'printerId': 'FooDevice', 627 capsSetEvent.settingsInfo.capabilities.printer.color = {
658 'disableColorOption': true, 628 "option": [
659 'setColorAsDefault': false, 629 {"is_default": true, "type": "STANDARD_MONOCHROME"}
660 'disableCopiesOption': false, 630 ]
661 'disableLandscapeOption': true,
662 'printerDefaultDuplexValue': 0
663 }; 631 };
664 this.nativeLayer_.dispatchEvent(capsSetEvent); 632 this.nativeLayer_.dispatchEvent(capsSetEvent);
665 633
666 checkSectionVisible($('color-settings'), false); 634 checkSectionVisible($('color-settings'), false);
667 635
668 var colorOption = $('color-settings').querySelector('.color-option'); 636 var colorOption = $('color-settings').querySelector('.color-option');
669 var bwOption = $('color-settings').querySelector('.bw-option'); 637 var bwOption = $('color-settings').querySelector('.bw-option');
670 expectFalse(colorOption.checked); 638 expectFalse(colorOption.checked);
671 expectTrue(bwOption.checked); 639 expectTrue(bwOption.checked);
672 }); 640 });
(...skipping 10 matching lines...) Expand all
683 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 651 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
684 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 652 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
685 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 653 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
686 654
687 var otherOptionsDiv = $('other-options-settings'); 655 var otherOptionsDiv = $('other-options-settings');
688 var duplexDiv = otherOptionsDiv.querySelector('.duplex-container'); 656 var duplexDiv = otherOptionsDiv.querySelector('.duplex-container');
689 var duplexCheckbox = otherOptionsDiv.querySelector('.duplex-checkbox'); 657 var duplexCheckbox = otherOptionsDiv.querySelector('.duplex-checkbox');
690 658
691 var capsSetEvent = 659 var capsSetEvent =
692 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 660 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
693 capsSetEvent.settingsInfo = { 661 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
694 'printerId': 'FooDevice',
695 'disableColorOption': false,
696 'setColorAsDefault': true,
697 'disableCopiesOption': false,
698 'disableLandscapeOption': true,
699 'printerDefaultDuplexValue': 0,
700 'setDuplexAsDefault': false
701 };
702 this.nativeLayer_.dispatchEvent(capsSetEvent); 662 this.nativeLayer_.dispatchEvent(capsSetEvent);
703 663
704 checkSectionVisible(otherOptionsDiv, true); 664 checkSectionVisible(otherOptionsDiv, true);
705 expectFalse(duplexDiv.hidden); 665 expectFalse(duplexDiv.hidden);
706 expectFalse(duplexCheckbox.checked); 666 expectFalse(duplexCheckbox.checked);
707 }); 667 });
708 668
709 //Test to verify that duplex settings are set according to the printer 669 //Test to verify that duplex settings are set according to the printer
710 //capabilities. 670 //capabilities.
711 TEST_F('PrintPreviewWebUITest', 'TestDuplexSettingsFalse', function() { 671 TEST_F('PrintPreviewWebUITest', 'TestDuplexSettingsFalse', function() {
712 var initialSettingsSetEvent = 672 var initialSettingsSetEvent =
713 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 673 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
714 initialSettingsSetEvent.initialSettings = this.initialSettings_; 674 initialSettingsSetEvent.initialSettings = this.initialSettings_;
715 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 675 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
716 676
717 var localDestsSetEvent = 677 var localDestsSetEvent =
718 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 678 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
719 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 679 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
720 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 680 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
721 681
722 var otherOptionsDiv = $('other-options-settings'); 682 var otherOptionsDiv = $('other-options-settings');
723 var duplexDiv = otherOptionsDiv.querySelector('.duplex-container'); 683 var duplexDiv = otherOptionsDiv.querySelector('.duplex-container');
724 684
725 var capsSetEvent = 685 var capsSetEvent =
726 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 686 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
727 capsSetEvent.settingsInfo = { 687 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
728 'printerId': 'FooDevice', 688 delete capsSetEvent.settingsInfo.capabilities.printer.duplex;
729 'disableColorOption': false,
730 'setColorAsDefault': true,
731 'disableCopiesOption': false,
732 'disableLandscapeOption': true,
733 'printerDefaultDuplexValue': -1,
734 'setDuplexAsDefault': false
735 };
736 this.nativeLayer_.dispatchEvent(capsSetEvent); 689 this.nativeLayer_.dispatchEvent(capsSetEvent);
737 690
738 checkSectionVisible(otherOptionsDiv, true); 691 checkSectionVisible(otherOptionsDiv, true);
739 expectTrue(duplexDiv.hidden); 692 expectTrue(duplexDiv.hidden);
740 }); 693 });
741 694
742 // Test that changing the selected printer updates the preview. 695 // Test that changing the selected printer updates the preview.
743 TEST_F('PrintPreviewWebUITest', 'TestPrinterChangeUpdatesPreview', function() { 696 TEST_F('PrintPreviewWebUITest', 'TestPrinterChangeUpdatesPreview', function() {
744 697
745 var initialSettingsSetEvent = 698 var initialSettingsSetEvent =
746 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET); 699 new Event(print_preview.NativeLayer.EventType.INITIAL_SETTINGS_SET);
747 initialSettingsSetEvent.initialSettings = this.initialSettings_; 700 initialSettingsSetEvent.initialSettings = this.initialSettings_;
748 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent); 701 this.nativeLayer_.dispatchEvent(initialSettingsSetEvent);
749 702
750 var localDestsSetEvent = 703 var localDestsSetEvent =
751 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET); 704 new Event(print_preview.NativeLayer.EventType.LOCAL_DESTINATIONS_SET);
752 localDestsSetEvent.destinationInfos = this.localDestinationInfos_; 705 localDestsSetEvent.destinationInfos = this.localDestinationInfos_;
753 this.nativeLayer_.dispatchEvent(localDestsSetEvent); 706 this.nativeLayer_.dispatchEvent(localDestsSetEvent);
754 707
755 var capsSetEvent = 708 var capsSetEvent =
756 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 709 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
757 capsSetEvent.settingsInfo = { 710 capsSetEvent.settingsInfo = getCddTemplate("FooDevice");
758 'printerId': 'FooDevice',
759 'disableColorOption': false,
760 'setColorAsDefault': true,
761 'disableCopiesOption': true,
762 'disableLandscapeOption': true,
763 'printerDefaultDuplexValue': 0
764 };
765 this.nativeLayer_.dispatchEvent(capsSetEvent); 711 this.nativeLayer_.dispatchEvent(capsSetEvent);
766 712
767 var previewGenerator = mock(print_preview.PreviewGenerator); 713 var previewGenerator = mock(print_preview.PreviewGenerator);
768 printPreview.previewArea_.previewGenerator_ = previewGenerator.proxy(); 714 printPreview.previewArea_.previewGenerator_ = previewGenerator.proxy();
769 previewGenerator.expects(exactly(6)).requestPreview(); 715 previewGenerator.expects(exactly(6)).requestPreview();
770 716
771 var barDestination; 717 var barDestination;
772 var destinations = printPreview.destinationStore_.destinations(); 718 var destinations = printPreview.destinationStore_.destinations();
773 for (var destination, i = 0; destination = destinations[i]; i++) { 719 for (var destination, i = 0; destination = destinations[i]; i++) {
774 if (destination.id == 'BarDevice') { 720 if (destination.id == 'BarDevice') {
775 barDestination = destination; 721 barDestination = destination;
776 break; 722 break;
777 } 723 }
778 } 724 }
779 725
780 printPreview.destinationStore_.selectDestination(barDestination); 726 printPreview.destinationStore_.selectDestination(barDestination);
781 727
782 var capsSetEvent = 728 var capsSetEvent =
783 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET); 729 new Event(print_preview.NativeLayer.EventType.CAPABILITIES_SET);
784 capsSetEvent.settingsInfo = { 730 capsSetEvent.settingsInfo = getCddTemplate("BarDevice");
785 'printerId': 'BarDevice', 731 capsSetEvent.settingsInfo.capabilities.printer.color = {
786 'disableColorOption': true, 732 "option": [
787 'setColorAsDefault': false, 733 {"is_default": true, "type": "STANDARD_MONOCHROME"}
788 'disableCopiesOption': true, 734 ]
789 'disableLandscapeOption': true,
790 'printerDefaultDuplexValue': 0
791 }; 735 };
792 this.nativeLayer_.dispatchEvent(capsSetEvent); 736 this.nativeLayer_.dispatchEvent(capsSetEvent);
793 }); 737 });
794 738
795 // Test that error message is displayed when plugin doesn't exist. 739 // Test that error message is displayed when plugin doesn't exist.
796 TEST_F('PrintPreviewWebUITest', 'TestNoPDFPluginErrorMessage', function() { 740 TEST_F('PrintPreviewWebUITest', 'TestNoPDFPluginErrorMessage', function() {
797 var previewAreaEl = $('preview-area'); 741 var previewAreaEl = $('preview-area');
798 742
799 var loadingMessageEl = 743 var loadingMessageEl =
800 previewAreaEl.getElementsByClassName('preview-area-loading-message')[0]; 744 previewAreaEl.getElementsByClassName('preview-area-loading-message')[0];
801 expectEquals(true, loadingMessageEl.hidden); 745 expectEquals(true, loadingMessageEl.hidden);
802 746
803 var previewFailedMessageEl = previewAreaEl.getElementsByClassName( 747 var previewFailedMessageEl = previewAreaEl.getElementsByClassName(
804 'preview-area-preview-failed-message')[0]; 748 'preview-area-preview-failed-message')[0];
805 expectEquals(true, previewFailedMessageEl.hidden); 749 expectEquals(true, previewFailedMessageEl.hidden);
806 750
807 var printFailedMessageEl = 751 var printFailedMessageEl =
808 previewAreaEl.getElementsByClassName('preview-area-print-failed')[0]; 752 previewAreaEl.getElementsByClassName('preview-area-print-failed')[0];
809 expectEquals(true, printFailedMessageEl.hidden); 753 expectEquals(true, printFailedMessageEl.hidden);
810 754
811 var customMessageEl = 755 var customMessageEl =
812 previewAreaEl.getElementsByClassName('preview-area-custom-message')[0]; 756 previewAreaEl.getElementsByClassName('preview-area-custom-message')[0];
813 expectEquals(false, customMessageEl.hidden); 757 expectEquals(false, customMessageEl.hidden);
814 }); 758 });
OLDNEW
« no previous file with comments | « chrome/service/cloud_print/print_system_win.cc ('k') | printing/backend/cups_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698