diff options
Diffstat (limited to 'toolkit/components/printing/tests/browser_print_settings_fallback.js')
-rw-r--r-- | toolkit/components/printing/tests/browser_print_settings_fallback.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/toolkit/components/printing/tests/browser_print_settings_fallback.js b/toolkit/components/printing/tests/browser_print_settings_fallback.js new file mode 100644 index 0000000000..6f30c87d8c --- /dev/null +++ b/toolkit/components/printing/tests/browser_print_settings_fallback.js @@ -0,0 +1,39 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +let badPrinterName = "Bad"; +let otherPrinterName = "Fallback"; + +async function setupPrinters(helper) { + let badPrinter = helper.addMockPrinter({ + name: badPrinterName, + }); + + let badPrinterInfo = await badPrinter.printerInfo; + badPrinterInfo.defaultSettings.printerName = ""; + + helper.addMockPrinter(otherPrinterName); + + await SpecialPowers.pushPrefEnv({ + set: [["print_printer", badPrinterName]], + }); +} + +add_task(async function testBadPrinterSettings() { + await PrintHelper.withTestPage(async helper => { + await setupPrinters(helper); + await helper.startPrint(); + + let destinationPicker = helper.get("printer-picker"); + // Fallback can be any other printer, the fallback or save to pdf printer. + isnot( + destinationPicker.value, + badPrinterName, + "A fallback printer is selected" + ); + + await helper.closeDialog(); + }); +}); |