- rawPrintPanel: printerSelect (lpstat -e, auto-refresh on manifest), printerStatusBadge (idle/printing/stopped), printerTraySelect + printerMediaTypeSelect from lpoptions -l capabilities, portrait/ landscape toggle, btnPrinterProperties (bound NSPrintPanel), Print All + per-page btnPrintPage-N, in-panel printNotification (cancel → info, not error). No cupsOptionsGroup/chkPpdFallback — macOS always uses the PM-captured path. - TargetWorkflowViewModel: refreshPrinters, reloadSelectedCapabilities, openPrinterPreferences (panel-side queue switch updates the select), printAllPages / printPage (sequential, stop-on-first-error), capturedCupsOptions per-queue session cache, wizard.printerName set on spool (#95). - CupsError.noPrinterSelected. - Mock CUPS fixtures: lpstat (2 queues, one idle one disabled), lpoptions (tray/media/EPIJ_CMat listings), lp (appends argv to ICCERY_TEST_LP_ARGV). Milestone3UITests: enumeration, preferences cancel→info, captured options replayed in argv, per-page print, lp failure notice, printerName persistence. - lpoptions parser: skip keyless '=value' tokens instead of truncating. UI tests written but not executed here: the dev machine's console is locked (IOConsoleLocked=true) so XCUIApplication.activate() cannot bring the app to front — same failure on M2 baseline. Suite must be run unlocked / on CI. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
24 lines
680 B
Bash
Executable File
24 lines
680 B
Bash
Executable File
#!/bin/sh
|
|
# Mock lpoptions for Milestone3UITests. `-p <q>` prints printer-info;
|
|
# `-p <q> -l` prints Key/Label listings incl. Epson bypass keys.
|
|
queue=""
|
|
list=0
|
|
for arg in "$@"; do
|
|
case "$arg" in
|
|
-p) shift_flag=1 ;;
|
|
-l) list=1 ;;
|
|
-*) ;;
|
|
*) queue="$arg" ;;
|
|
esac
|
|
done
|
|
if [ "$list" = "1" ]; then
|
|
printf 'PageSize/Media Size: 4x6 5x7 *A4 Letter Legal\n'
|
|
printf 'InputSlot/Media Source: Auto *Main Rear\n'
|
|
printf 'MediaType/Media Type: *Stationery PhotographicGlossy PhotographicMatte\n'
|
|
printf 'EPIJ_CMat/Color Adjust: *0 1 2 3\n'
|
|
printf 'ColorModel/Output Mode: *RGB Gray\n'
|
|
exit 0
|
|
fi
|
|
printf "printer-info='Mock %s' printer-type=42\n" "$queue"
|
|
exit 0
|