Сам нашел ответ ...
Когда вы компилируете CUPS из источников, появляется подкаталог cups .Он также содержит Makefile , специфичный для этого подкаталога.Этот Makefile содержит цель сборки с именем "unittests" , которая NOT построена по умолчанию!
Но если вы запустите make unittests
он не только запускает свои модульные тесты, но и создает несколько утилит командной строки, которые потенциально могут быть весьма полезны и вне модульных тестов!
Для решения моей проблемы,оказывается, что утилита CLI testipp
- чистое золото.Смотрите сами:
sudo ./testipp /var/spool/cups/c00089
operation-attributes-tag:
attributes-charset (charset): utf-8
attributes-natural-language (naturalLanguage): en-us
job-attributes-tag:
printer-uri (uri): ipp://localhost:631/printers/hp
job-originating-user-name (nameWithoutLanguage): kurtpfeifle
job-name (nameWithoutLanguage): hosts
copies (integer): 1
finishings (enum): none
job-cancel-after (integer): 10800
job-hold-until (keyword): no-hold
job-priority (integer): 50
job-sheets (1setOf nameWithoutLanguage): none,none
number-up (integer): 1
job-uuid (uri): urn:uuid:ca854775-f721-34a5-57e0-b38b8fb0f4c8
job-originating-host-name (nameWithoutLanguage): localhost
time-at-creation (integer): 1472022731
time-at-processing (integer): 1472022731
time-at-completed (integer): 1472022732
job-id (integer): 89
job-state (enum): completed
job-state-reasons (keyword): processing-to-stop-point
job-media-sheets-completed (integer): 0
job-printer-uri (uri): ipp://host13.local:631/printers/hp
job-k-octets (integer): 1
document-format (mimeMediaType): text/plain
job-printer-state-message (textWithoutLanguage): Printing page 1, 4% complete.
job-printer-state-reasons (keyword): none
К сожалению, запуск make install
не приведет к установке этого инструмента в систему, и, следовательно, он никогда не будет выставлен ни одному администратору CUPS!Кроме того, дистрибутивы Linux могут легко пропустить это.testipp
работает под радаром для большинства фанатов CUPS.
Есть еще несколько полезных утилит, построенных из make unittests
:
Этиявляются: testadmin, testarray, testcache, testclient, testconflicts, testcreds, testcups, testdest, testfile, testgetdests, testhttp, testi18n, testlang, testoptions, testppd, testpwg, testraster, testsnmp
.
К сожалению, ни один дистрибутив Linux в настоящее время не собирает и не поставляет эти полезные инструменты. Так что, если вы знаете упаковщик дистрибутивов, укажите ему на это открытие здесь и попросите ее упаковать хороший пакет для всех конечных пользователей cups-test-utils.rpm
или cups-test-utils.deb
или cups-test-utils.tgz
, или каковы бы ни были суффиксы имени пакета для его $ distro!`