]> git.ipfire.org Git - thirdparty/cups.git/blob - test/ipp-1.1.test
Merge changes from CUPS 1.6svn-r10112.
[thirdparty/cups.git] / test / ipp-1.1.test
1 #
2 # "$Id$"
3 #
4 # IPP/1.1 test suite.
5 #
6 # Copyright 2007-2011 by Apple Inc.
7 # Copyright 2001-2006 by Easy Software Products. All rights reserved.
8 #
9 # These coded instructions, statements, and computer programs are the
10 # property of Apple Inc. and are protected by Federal copyright
11 # law. Distribution and use rights are outlined in the file "LICENSE.txt"
12 # which should have been included with this file. If this file is
13 # file is missing or damaged, see the license at "http://www.cups.org/".
14 #
15 # Usage:
16 #
17 # ./ipptool -f filename [-d document-uri=SOMEURI] -t printer-uri ipp-1.1.test
18 #
19
20 # Regular expressions for URI schemes:
21 #
22 # HTTP_URI_SCHEME - Matches strings beginning with http:// or https://
23 # IPP_URI_SCHEME - Matches strings beginning with ipp:// or ipps://
24
25 DEFINE HTTP_URI_SCHEME "/^https?://.+$$/"
26 DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/"
27
28 # Test that a request-id value of 0 is not accepted.
29 #
30 # Required by: RFC 2911 section 3.1.1
31 {
32 NAME "RFC 2911 section 3.1.1: Bad request-id value 0"
33 REQUEST-ID 0
34 OPERATION Get-Printer-Attributes
35 GROUP operation-attributes-tag
36 ATTR charset attributes-charset utf-8
37 ATTR naturalLanguage attributes-natural-language en
38 ATTR uri printer-uri $uri
39
40 STATUS client-error-bad-request
41 EXPECT !printer-uri-supported
42 }
43
44
45 # Test that the first two attributes must be attributes-charset and
46 # attributes-natural-language.
47 #
48 # Required by: RFC 2911 section 3.1.4
49 {
50 NAME "RFC 2911 section 3.1.4: No Operation Attributes"
51 REQUEST-ID random
52 OPERATION Get-Printer-Attributes
53 GROUP operation-attributes-tag
54
55 STATUS client-error-bad-request
56 EXPECT !printer-uri-supported
57 }
58 {
59 NAME "RFC 2911 section 3.1.4: attributes-charset"
60 OPERATION Get-Printer-Attributes
61 GROUP operation-attributes-tag
62 ATTR charset attributes-charset utf-8
63 ATTR uri printer-uri $uri
64
65 STATUS client-error-bad-request
66 EXPECT !printer-uri-supported
67 }
68 {
69 NAME "RFC 2911 section 3.1.4: attributes-natural-language"
70 OPERATION Get-Printer-Attributes
71 GROUP operation-attributes-tag
72 ATTR naturalLanguage attributes-natural-language en
73 ATTR uri printer-uri $uri
74
75 STATUS client-error-bad-request
76 EXPECT !printer-uri-supported
77 }
78 {
79 NAME "RFC 2911 section 3.1.4: attributes-natural-language + attributes-charset"
80 OPERATION Get-Printer-Attributes
81 GROUP operation-attributes-tag
82 ATTR naturalLanguage attributes-natural-language en
83 ATTR charset attributes-charset utf-8
84 ATTR uri printer-uri $uri
85
86 STATUS client-error-bad-request
87 EXPECT !printer-uri-supported
88 }
89 {
90 NAME "RFC 2911 section 3.1.4: attributes-charset + attributes-natural-language"
91 OPERATION Get-Printer-Attributes
92 GROUP operation-attributes-tag
93 ATTR charset attributes-charset utf-8
94 ATTR naturalLanguage attributes-natural-language en
95 ATTR uri printer-uri $uri
96
97 STATUS successful-ok
98 EXPECT printer-uri-supported OF-TYPE uri WITH-VALUE "$IPP_URI_SCHEME"
99 }
100
101
102 # Test that bad IPP versions are not supported.
103 #
104 # Required by: RFC 2911 section 3.1.8
105 {
106 # The name of the test...
107 NAME "RFC 2911 section 3.1.8: Unsupported IPP version 0.0"
108 VERSION 0.0
109 OPERATION Get-Printer-Attributes
110 GROUP operation-attributes-tag
111 ATTR charset attributes-charset utf-8
112 ATTR naturalLanguage attributes-natural-language en
113 ATTR uri printer-uri $uri
114
115 STATUS server-error-version-not-supported
116 EXPECT !printer-uri-supported
117 }
118
119
120 # Test that printer operations require the printer-uri operation attribute.
121 #
122 # Required by: RFC 2911 section 3.2
123 {
124 NAME "RFC 2911 section 3.2: No printer-uri operation attribute"
125 OPERATION Get-Printer-Attributes
126 GROUP operation-attributes-tag
127 ATTR charset attributes-charset utf-8
128 ATTR naturalLanguage attributes-natural-language en
129
130 STATUS client-error-bad-request
131 EXPECT !printer-uri-supported
132 }
133
134
135 # Test Print-Job operation
136 #
137 # Required by: RFC 2911 section 3.2.1
138 {
139 NAME "RFC 2911 section 3.2.1: Print-Job Operation"
140 OPERATION Print-Job
141 GROUP operation-attributes-tag
142 ATTR charset attributes-charset utf-8
143 ATTR naturalLanguage attributes-natural-language en
144 ATTR uri printer-uri $uri
145 ATTR name requesting-user-name $user
146 ATTR name job-name $filename
147 ATTR boolean ipp-attribute-fidelity false
148 ATTR name document-name $filename
149 ATTR keyword compression none
150 ATTR mimeMediaType document-format $filetype
151 FILE $filename
152
153 STATUS successful-ok
154 STATUS client-error-document-format-not-supported
155 STATUS server-error-job-canceled
156 STATUS server-error-busy REPEAT-MATCH
157
158 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
159 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
160 WITH-VALUE >0
161 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
162 WITH-VALUE 3,4,5,6,7,8,9
163 EXPECT job-state WITH-VALUE 7,8,9 DEFINE-MATCH PRINT_JOB_COMPLETED
164 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
165 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
166 EXPECT ?number-of-intervening-jobs OF-TYPE integer
167 IN-GROUP job-attributes-tag WITH-VALUE >-1
168 }
169
170 # Test Validate-Job operation
171 #
172 # Required by: RFC 2911 section 3.2.3
173 {
174 NAME "RFC 2911 section 3.2.3: Validate-Job Operation"
175 OPERATION Validate-Job
176 GROUP operation-attributes-tag
177 ATTR charset attributes-charset utf-8
178 ATTR naturalLanguage attributes-natural-language en
179 ATTR uri printer-uri $uri
180 ATTR name requesting-user-name $user
181 ATTR name job-name $filename
182 ATTR boolean ipp-attribute-fidelity false
183 ATTR name document-name $filename
184 ATTR keyword compression none
185 ATTR mimeMediaType document-format $filetype
186
187 STATUS successful-ok
188 }
189
190
191 # Test Get-Printer-Attributes operation
192 #
193 # Required by: RFC 2911 section 3.2.5
194 {
195 NAME "RFC 2911 section 3.2.5: Get-Printer-Attributes Operation (default)"
196 OPERATION Get-Printer-Attributes
197 GROUP operation-attributes-tag
198 ATTR charset attributes-charset utf-8
199 ATTR naturalLanguage attributes-natural-language en
200 ATTR uri printer-uri $uri
201 ATTR name requesting-user-name $user
202 ATTR mimeMediaType document-format $filetype
203
204 STATUS successful-ok
205
206 # Display some useful information to identify the test
207 DISPLAY color-supported
208 DISPLAY compression-supported
209 DISPLAY document-format-supported
210 DISPLAY finishings-supported
211 DISPLAY ipp-versions-supported
212 DISPLAY job-sheets-supported
213 DISPLAY media-supported
214 DISPLAY number-up-supported
215 DISPLAY operations-supported
216 DISPLAY pages-per-minute
217 DISPLAY pages-per-minute-color
218 DISPLAY print-quality-supported
219 DISPLAY printer-uri-supported
220 DISPLAY reference-uri-schemes-supported
221 DISPLAY sizes-supported
222 DISPLAY uri-authentication-supported
223 DISPLAY uri-security-supported
224
225 # Operations
226 EXPECT operations-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 0x0002 # Print-Job
227 EXPECT operations-supported WITH-VALUE 0x0003 DEFINE-MATCH OPTIONAL_PRINT_URI # Print-URI
228 EXPECT operations-supported WITH-VALUE 0x0004 # Validate-Job
229 EXPECT operations-supported WITH-VALUE 0x0005 DEFINE-MATCH OPTIONAL_CREATE_JOB # Create-Job
230 EXPECT operations-supported WITH-VALUE 0x0006 DEFINE-MATCH OPTIONAL_SEND_DOCUMENT # Send-Document
231 EXPECT operations-supported WITH-VALUE 0x0007 DEFINE-MATCH OPTIONAL_SEND_URI # Send-URI
232 EXPECT operations-supported WITH-VALUE 0x0008 # Cancel-Job
233 EXPECT operations-supported WITH-VALUE 0x0009 # Get-Job-Attributes
234 EXPECT operations-supported WITH-VALUE 0x000a # Get-Jobs
235 EXPECT operations-supported WITH-VALUE 0x000b # Get-Printer-Attributes
236 EXPECT operations-supported WITH-VALUE 0x000c DEFINE-MATCH OPTIONAL_HOLD_JOB # Hold-Job
237 EXPECT operations-supported WITH-VALUE 0x000d DEFINE-MATCH OPTIONAL_RELEASE_JOB # Release-Job
238 EXPECT operations-supported WITH-VALUE 0x000e DEFINE-MATCH OPTIONAL_RESTART_JOB # Restart-Job
239 EXPECT operations-supported WITH-VALUE 0x0010 DEFINE-MATCH OPTIONAL_PAUSE_PRINTER # Pause-Printer
240 EXPECT operations-supported WITH-VALUE 0x0011 DEFINE-MATCH OPTIONAL_RESUME_PRINTER # Resume-Printer
241 EXPECT operations-supported WITH-VALUE 0x0012 DEFINE-MATCH OPTIONAL_PURGE_JOBS # Purge-Jobs
242
243 # Job template attributes
244 EXPECT ?copies-default OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
245 EXPECT ?copies-supported OF-TYPE rangeOfInteger IN-GROUP printer-attributes-tag
246 EXPECT ?finishings-default OF-TYPE enum IN-GROUP printer-attributes-tag
247 EXPECT ?finishings-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3
248 EXPECT ?job-hold-until-default OF-TYPE keyword|name IN-GROUP printer-attributes-tag COUNT 1
249 EXPECT ?job-hold-until-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-VALUE no-hold
250 EXPECT job-hold-until-default IF-DEFINED OPTIONAL_HOLD_JOB
251 EXPECT job-hold-until-supported IF-DEFINED OPTIONAL_HOLD_JOB
252 EXPECT ?job-priority-default OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0,<101
253 EXPECT ?job-priority-supported OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0,<101
254 EXPECT ?job-sheets-default OF-TYPE keyword|name IN-GROUP printer-attributes-tag
255 EXPECT ?job-sheets-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag WITH-VALUE none
256 EXPECT ?media-default OF-TYPE no-value|keyword|name IN-GROUP printer-attributes-tag COUNT 1
257 EXPECT ?media-ready OF-TYPE keyword|name IN-GROUP printer-attributes-tag
258 EXPECT ?media-supported OF-TYPE keyword|name IN-GROUP printer-attributes-tag
259 EXPECT ?multiple-document-handling-default OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "/^(single-document|separate-documents-uncollated-copies|separate-documents-collated-copies|single-document-new-sheet)$$/"
260 EXPECT ?multiple-document-handling-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "/^(single-document|separate-documents-uncollated-copies|separate-documents-collated-copies|single-document-new-sheet)$$/"
261 EXPECT ?number-up-default OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
262 EXPECT ?number-up-supported OF-TYPE integer|rangeOfInteger IN-GROUP printer-attributes-tag WITH-VALUE >0
263 EXPECT ?number-up-supported WITH-VALUE 1
264 EXPECT ?orientation-requested-default OF-TYPE no-value|enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5,6
265 EXPECT ?orientation-requested-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3,4,5,6
266 EXPECT ?pages-ranges-supported OF-TYPE boolean IN-GROUP printer-attributes-tag
267 EXPECT ?print-quality-default OF-TYPE enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5
268 EXPECT ?print-quality-supported OF-TYPE enum IN-GROUP printer-attributes-tag WITH-VALUE 3,4,5
269 EXPECT ?printer-resolution-default OF-TYPE resolution IN-GROUP printer-attributes-tag COUNT 1
270 EXPECT ?printer-resolution-supported OF-TYPE resolution IN-GROUP printer-attributes-tag
271 EXPECT ?sides-default OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
272 EXPECT ?sides-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
273
274 # Job template attributes for specific tests...
275 EXPECT copies-supported WITH-VALUE >1 DEFINE-MATCH OPTIONAL_COPIES
276 EXPECT document-format-supported WITH-VALUE "application/pdf" DEFINE-MATCH OPTIONAL_PDF
277 EXPECT document-format-supported WITH-VALUE "application/postscript" DEFINE-MATCH OPTIONAL_POSTSCRIPT
278 EXPECT document-format-supported WITH-VALUE "image/jpeg" DEFINE-MATCH OPTIONAL_JPEG
279 EXPECT job-sheets-supported WITH-VALUE "standard" DEFINE-MATCH OPTIONAL_STANDARD_SHEET
280 EXPECT media-supported WITH-VALUE "a4" DEFINE-VALUE OPTIONAL_A4_MEDIA
281 EXPECT media-supported WITH-VALUE "iso-a4" DEFINE-VALUE OPTIONAL_A4_MEDIA
282 EXPECT media-supported WITH-VALUE "iso_a4_210x297mm" DEFINE-VALUE OPTIONAL_A4_MEDIA
283 EXPECT media-supported WITH-VALUE "letter" DEFINE-VALUE OPTIONAL_LETTER_MEDIA
284 EXPECT media-supported WITH-VALUE "na-letter" DEFINE-VALUE OPTIONAL_LETTER_MEDIA
285 EXPECT media-supported WITH-VALUE "na_letter_8.5x11in" DEFINE-VALUE OPTIONAL_LETTER_MEDIA
286 EXPECT media-supported WITH-VALUE "index-4x6" DEFINE-VALUE OPTIONAL_4X6_MEDIA
287 EXPECT media-supported WITH-VALUE "na_index-4x6_4x6in" DEFINE-VALUE OPTIONAL_4X6_MEDIA
288 EXPECT number-up-supported WITH-VALUE 2 DEFINE-MATCH OPTIONAL_2UP
289 EXPECT print-quality WITH-VALUE 3 DEFINE-MATCH OPTIONAL_DRAFT_QUALITY
290 EXPECT print-quality WITH-VALUE 4 DEFINE-MATCH OPTIONAL_NORMAL_QUALITY
291 EXPECT print-quality WITH-VALUE 5 DEFINE-MATCH OPTIONAL_BEST_QUALITY
292 EXPECT sides-supported WITH-VALUE "two-sided-long-edge" DEFINE-MATCH OPTIONAL_DUPLEX
293
294 # Printer description attributes
295 EXPECT ?color-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
296 EXPECT ?job-impressions-supported OF-TYPE rangeOfInteger IN-GROUP printer-attributes-tag COUNT 1
297 EXPECT ?job-k-octets-supported OF-TYPE rangeOfInteger IN-GROUP printer-attributes-tag COUNT 1
298 EXPECT ?job-media-sheets-supported OF-TYPE rangeOfInteger IN-GROUP printer-attributes-tag COUNT 1
299 EXPECT ?multiple-document-jobs-supported OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
300 EXPECT ?multiple-operation-time-out OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
301 EXPECT ?pages-per-minute OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1
302 EXPECT ?pages-per-minute-color OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1
303 EXPECT ?printer-driver-installer OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1
304 EXPECT ?printer-info OF-TYPE text IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{0,127}$$/"
305 EXPECT ?printer-location OF-TYPE text IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{0,127}$$/"
306 EXPECT ?printer-make-and-model OF-TYPE text IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{0,127}$$/"
307 EXPECT ?printer-message-from-operator OF-TYPE text IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{0,127}$$/"
308 EXPECT ?printer-more-info OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "$HTTP_URI_SCHEME"
309 EXPECT ?printer-more-info-manufacturer OF-TYPE uri IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "$HTTP_URI_SCHEME"
310 EXPECT ?printer-state-message OF-TYPE text IN-GROUP printer-attributes-tag
311 EXPECT ?reference-uri-schemes-supported OF-TYPE uriScheme IN-GROUP printer-attributes-tag
312 EXPECT reference-uri-schemes-supported WITH-VALUE "ftp" IF-DEFINED OPTIONAL_PRINT_URI
313 EXPECT reference-uri-schemes-supported WITH-VALUE "ftp" IF-DEFINED OPTIONAL_SEND_URI IF-NOT-DEFINED OPTIONAL_PRINT_URI
314 EXPECT charset-configured OF-TYPE charset IN-GROUP printer-attributes-tag COUNT 1
315 EXPECT charset-supported OF-TYPE charset IN-GROUP printer-attributes-tag WITH-VALUE utf-8
316 EXPECT compression-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE none
317 EXPECT document-format-default OF-TYPE mimeMediaType IN-GROUP printer-attributes-tag COUNT 1
318 EXPECT document-format-supported OF-TYPE mimeMediaType IN-GROUP printer-attributes-tag
319 EXPECT generated-natural-language-supported OF-TYPE naturalLanguage IN-GROUP printer-attributes-tag
320 EXPECT ipp-versions-supported OF-TYPE keyword IN-GROUP printer-attributes-tag WITH-VALUE 1.1
321 EXPECT natural-language-configured OF-TYPE naturalLanguage IN-GROUP printer-attributes-tag COUNT 1
322 EXPECT pdl-override-supported OF-TYPE keyword IN-GROUP printer-attributes-tag COUNT 1
323 EXPECT printer-is-accepting-jobs OF-TYPE boolean IN-GROUP printer-attributes-tag COUNT 1
324 EXPECT printer-name OF-TYPE name IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE "/^.{1,127}$$/"
325 EXPECT printer-state OF-TYPE enum IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE 3,4,5
326 EXPECT printer-state-reasons OF-TYPE keyword IN-GROUP printer-attributes-tag
327 EXPECT printer-up-time OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1 WITH-VALUE >0
328 EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag SAME-COUNT-AS uri-security-supported WITH-VALUE "$IPP_URI_SCHEME"
329 EXPECT queued-job-count OF-TYPE integer IN-GROUP printer-attributes-tag COUNT 1
330 EXPECT uri-authentication-supported OF-TYPE keyword IN-GROUP printer-attributes-tag
331 EXPECT uri-security-supported OF-TYPE keyword IN-GROUP printer-attributes-tag SAME-COUNT-AS uri-authentication-supported
332 }
333
334
335 # Test Get-Printer-Attributes operation with requested-attributes
336 #
337 # Required by: RFC 2911 section 3.2.5
338 {
339 NAME "RFC 2911 section 3.2.5: Get-Printer-Attributes Operation (requested-attributes)"
340 OPERATION Get-Printer-Attributes
341 GROUP operation-attributes-tag
342 ATTR charset attributes-charset utf-8
343 ATTR naturalLanguage attributes-natural-language en
344 ATTR uri printer-uri $uri
345 ATTR name requesting-user-name $user
346 ATTR mimeMediaType document-format $filetype
347 ATTR keyword requested-attributes printer-uri-supported
348
349 STATUS successful-ok
350
351 EXPECT printer-uri-supported OF-TYPE uri IN-GROUP printer-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
352 EXPECT !printer-name
353 }
354
355
356 # Test Get-Jobs operation
357 #
358 # Required by: RFC 2911 section 3.2.6
359 {
360 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (default)"
361 OPERATION Get-Jobs
362 GROUP operation-attributes-tag
363 ATTR charset attributes-charset utf-8
364 ATTR naturalLanguage attributes-natural-language en
365 ATTR uri printer-uri $uri
366 ATTR name requesting-user-name $user
367
368 STATUS successful-ok
369 EXPECT ?job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
370 EXPECT ?job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
371 EXPECT !job-printer-uri
372 EXPECT !job-more-info
373 EXPECT !job-name
374 EXPECT !job-originating-user-name
375 EXPECT !job-state
376 EXPECT !job-state-reasons
377 EXPECT !job-state-message
378 EXPECT !job-detailed-status-messages
379 EXPECT !number-of-documents
380 EXPECT !output-device-assigned
381 EXPECT !time-at-creation
382 EXPECT !time-at-processing
383 EXPECT !time-at-completed
384 EXPECT !job-printer-up-time
385 EXPECT !date-time-at-creation
386 EXPECT !date-time-at-processing
387 EXPECT !date-time-at-completed
388 EXPECT !number-of-intervening-jobs
389 EXPECT !job-message-from-operator
390 EXPECT !job-k-octets
391 EXPECT !job-impressions
392 EXPECT !job-media-sheets
393 EXPECT !job-k-octets-processed
394 EXPECT !job-impressions-completed
395 EXPECT !job-media-sheets-completed
396
397 EXPECT !copies
398 EXPECT !finishings
399 EXPECT !job-hold-until
400 EXPECT !job-priority
401 EXPECT !job-sheets
402 EXPECT !media
403 EXPECT !multiple-document-handling
404 EXPECT !number-up
405 EXPECT !orientation-requested
406 EXPECT !pages-ranges
407 EXPECT !print-quality
408 EXPECT !printer-resolution
409 EXPECT !sides
410 }
411
412
413 # Test Get-Jobs operation
414 #
415 # Required by: RFC 2911 section 3.2.6
416 {
417 SKIP-IF-DEFINED PRINT_JOB_COMPLETED
418
419 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (requested-attributes)"
420 OPERATION Get-Jobs
421 GROUP operation-attributes-tag
422 ATTR charset attributes-charset utf-8
423 ATTR naturalLanguage attributes-natural-language en
424 ATTR uri printer-uri $uri
425 ATTR name requesting-user-name $user
426 ATTR keyword requested-attributes all
427
428 STATUS successful-ok
429 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
430 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
431 EXPECT job-printer-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
432 EXPECT ?job-more-info OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$HTTP_URI_SCHEME"
433 EXPECT job-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
434 EXPECT job-originating-user-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
435 EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >2,<10
436 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
437 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
438 EXPECT ?job-detailed-status-messages OF-TYPE text IN-GROUP job-attributes-tag
439 EXPECT ?number-of-documents OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
440 EXPECT ?output-device-assigned OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
441 EXPECT time-at-creation OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
442 EXPECT time-at-processing OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
443 EXPECT time-at-completed OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
444 EXPECT job-printer-up-time OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1
445 EXPECT ?date-time-at-creation OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
446 EXPECT ?date-time-at-processing OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
447 EXPECT ?date-time-at-completed OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
448 EXPECT ?number-of-intervening-jobs OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
449 EXPECT ?job-message-from-operator OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
450 EXPECT ?job-k-octets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
451 EXPECT ?job-impressions OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
452 EXPECT ?job-media-sheets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
453 EXPECT ?job-k-octets-processed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
454 EXPECT ?job-impressions-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
455 EXPECT ?job-media-sheets-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
456
457 EXPECT ?copies OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
458 EXPECT ?finishings OF-TYPE enum IN-GROUP job-attributes-tag
459 EXPECT ?job-hold-until OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
460 EXPECT ?job-priority OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0,<101
461 EXPECT ?job-sheets OF-TYPE keyword|name IN-GROUP job-attributes-tag
462 EXPECT ?media OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
463 EXPECT ?multiple-document-handling OF-TYPE keyword IN-GROUP job-attributes-tag WITH-VALUE "/^(single-document|separate-documents-uncollated-copies|separate-documents-collated-copies|single-document-new-sheet)$$/"
464 EXPECT ?number-up OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
465 EXPECT ?orientation-requested OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5,6
466 EXPECT ?pages-ranges OF-TYPE rangeOfInteger IN-GROUP job-attributes-tag
467 EXPECT ?print-quality OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5
468 EXPECT ?printer-resolution OF-TYPE resolution IN-GROUP job-attributes-tag COUNT 1
469 EXPECT ?sides OF-TYPE keyword IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
470 }
471
472
473 # Test Get-Jobs operation
474 #
475 # Required by: RFC 2911 section 3.2.6
476 {
477 SKIP-IF-DEFINED PRINT_JOB_COMPLETED
478
479 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (my-jobs)"
480 OPERATION Get-Jobs
481 GROUP operation-attributes-tag
482 ATTR charset attributes-charset utf-8
483 ATTR naturalLanguage attributes-natural-language en
484 ATTR uri printer-uri $uri
485 ATTR name requesting-user-name $user
486 ATTR boolean my-jobs true
487
488 STATUS successful-ok
489 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
490 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
491 EXPECT !job-printer-uri
492 EXPECT !job-more-info
493 EXPECT !job-name
494 EXPECT !job-originating-user-name
495 EXPECT !job-state
496 EXPECT !job-state-reasons
497 EXPECT !job-state-message
498 EXPECT !job-detailed-status-messages
499 EXPECT !number-of-documents
500 EXPECT !output-device-assigned
501 EXPECT !time-at-creation
502 EXPECT !time-at-processing
503 EXPECT !time-at-completed
504 EXPECT !job-printer-up-time
505 EXPECT !date-time-at-creation
506 EXPECT !date-time-at-processing
507 EXPECT !date-time-at-completed
508 EXPECT !number-of-intervening-jobs
509 EXPECT !job-message-from-operator
510 EXPECT !job-k-octets
511 EXPECT !job-impressions
512 EXPECT !job-media-sheets
513 EXPECT !job-k-octets-processed
514 EXPECT !job-impressions-completed
515 EXPECT !job-media-sheets-completed
516
517 EXPECT !copies
518 EXPECT !finishings
519 EXPECT !job-hold-until
520 EXPECT !job-priority
521 EXPECT !job-sheets
522 EXPECT !media
523 EXPECT !multiple-document-handling
524 EXPECT !number-up
525 EXPECT !orientation-requested
526 EXPECT !pages-ranges
527 EXPECT !print-quality
528 EXPECT !printer-resolution
529 EXPECT !sides
530 }
531
532
533 # Test Get-Jobs operation
534 #
535 # Required by: RFC 2911 section 3.2.6
536 {
537 SKIP-IF-DEFINED PRINT_JOB_COMPLETED
538
539 # Skip this test when doing authenticated printing since we'll always
540 # use the authenticated username over the requesting-user-name value.
541 SKIP-IF-DEFINED uriuser
542
543 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (my-jobs different user)"
544 OPERATION Get-Jobs
545 GROUP operation-attributes-tag
546 ATTR charset attributes-charset utf-8
547 ATTR naturalLanguage attributes-natural-language en
548 ATTR uri printer-uri $uri
549 ATTR name requesting-user-name not-$user
550 ATTR boolean my-jobs true
551
552 STATUS successful-ok
553 EXPECT !job-id
554 EXPECT !job-uri
555 EXPECT !job-printer-uri
556 EXPECT !job-more-info
557 EXPECT !job-name
558 EXPECT !job-originating-user-name
559 EXPECT !job-state
560 EXPECT !job-state-reasons
561 EXPECT !job-state-message
562 EXPECT !job-detailed-status-messages
563 EXPECT !number-of-documents
564 EXPECT !output-device-assigned
565 EXPECT !time-at-creation
566 EXPECT !time-at-processing
567 EXPECT !time-at-completed
568 EXPECT !job-printer-up-time
569 EXPECT !date-time-at-creation
570 EXPECT !date-time-at-processing
571 EXPECT !date-time-at-completed
572 EXPECT !number-of-intervening-jobs
573 EXPECT !job-message-from-operator
574 EXPECT !job-k-octets
575 EXPECT !job-impressions
576 EXPECT !job-media-sheets
577 EXPECT !job-k-octets-processed
578 EXPECT !job-impressions-completed
579 EXPECT !job-media-sheets-completed
580
581 EXPECT !copies
582 EXPECT !finishings
583 EXPECT !job-hold-until
584 EXPECT !job-priority
585 EXPECT !job-sheets
586 EXPECT !media
587 EXPECT !multiple-document-handling
588 EXPECT !number-up
589 EXPECT !orientation-requested
590 EXPECT !pages-ranges
591 EXPECT !print-quality
592 EXPECT !printer-resolution
593 EXPECT !sides
594 }
595
596
597 # Test Get-Jobs operation
598 #
599 # Required by: RFC 2911 section 3.2.6
600 {
601 SKIP-IF-DEFINED PRINT_JOB_COMPLETED
602
603 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (which-jobs=not-completed)"
604 OPERATION Get-Jobs
605 GROUP operation-attributes-tag
606 ATTR charset attributes-charset utf-8
607 ATTR naturalLanguage attributes-natural-language en
608 ATTR uri printer-uri $uri
609 ATTR name requesting-user-name $user
610 ATTR keyword which-jobs not-completed
611
612 STATUS successful-ok
613 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
614 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
615 EXPECT !job-printer-uri
616 EXPECT !job-more-info
617 EXPECT !job-name
618 EXPECT !job-originating-user-name
619 EXPECT !job-state
620 EXPECT !job-state-reasons
621 EXPECT !job-state-message
622 EXPECT !job-detailed-status-messages
623 EXPECT !number-of-documents
624 EXPECT !output-device-assigned
625 EXPECT !time-at-creation
626 EXPECT !time-at-processing
627 EXPECT !time-at-completed
628 EXPECT !job-printer-up-time
629 EXPECT !date-time-at-creation
630 EXPECT !date-time-at-processing
631 EXPECT !date-time-at-completed
632 EXPECT !number-of-intervening-jobs
633 EXPECT !job-message-from-operator
634 EXPECT !job-k-octets
635 EXPECT !job-impressions
636 EXPECT !job-media-sheets
637 EXPECT !job-k-octets-processed
638 EXPECT !job-impressions-completed
639 EXPECT !job-media-sheets-completed
640
641 EXPECT !copies
642 EXPECT !finishings
643 EXPECT !job-hold-until
644 EXPECT !job-priority
645 EXPECT !job-sheets
646 EXPECT !media
647 EXPECT !multiple-document-handling
648 EXPECT !number-up
649 EXPECT !orientation-requested
650 EXPECT !pages-ranges
651 EXPECT !print-quality
652 EXPECT !printer-resolution
653 EXPECT !sides
654 }
655
656
657 # Wait for job to complete...
658 {
659 SKIP-IF-NOT-DEFINED job-id
660
661 NAME "Get-Job-Attributes Until Job Complete"
662 OPERATION Get-Job-Attributes
663 GROUP operation-attributes-tag
664 ATTR charset attributes-charset utf-8
665 ATTR naturalLanguage attributes-natural-language en
666 ATTR uri printer-uri $uri
667 ATTR integer job-id $job-id
668 ATTR name requesting-user-name $user
669
670 STATUS successful-ok
671 EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >6,<10 REPEAT-NO-MATCH
672 }
673
674
675 # Test Get-Jobs operation
676 #
677 # Required by: RFC 2911 section 3.2.6
678 {
679 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (which-jobs=completed)"
680 OPERATION Get-Jobs
681 GROUP operation-attributes-tag
682 ATTR charset attributes-charset utf-8
683 ATTR naturalLanguage attributes-natural-language en
684 ATTR uri printer-uri $uri
685 ATTR name requesting-user-name $user
686 ATTR keyword which-jobs completed
687
688 STATUS successful-ok
689 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
690 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
691 EXPECT !job-printer-uri
692 EXPECT !job-more-info
693 EXPECT !job-name
694 EXPECT !job-originating-user-name
695 EXPECT !job-state
696 EXPECT !job-state-reasons
697 EXPECT !job-state-message
698 EXPECT !job-detailed-status-messages
699 EXPECT !number-of-documents
700 EXPECT !output-device-assigned
701 EXPECT !time-at-creation
702 EXPECT !time-at-processing
703 EXPECT !time-at-completed
704 EXPECT !job-printer-up-time
705 EXPECT !date-time-at-creation
706 EXPECT !date-time-at-processing
707 EXPECT !date-time-at-completed
708 EXPECT !number-of-intervening-jobs
709 EXPECT !job-message-from-operator
710 EXPECT !job-k-octets
711 EXPECT !job-impressions
712 EXPECT !job-media-sheets
713 EXPECT !job-k-octets-processed
714 EXPECT !job-impressions-completed
715 EXPECT !job-media-sheets-completed
716
717 EXPECT !copies
718 EXPECT !finishings
719 EXPECT !job-hold-until
720 EXPECT !job-priority
721 EXPECT !job-sheets
722 EXPECT !media
723 EXPECT !multiple-document-handling
724 EXPECT !number-up
725 EXPECT !orientation-requested
726 EXPECT !pages-ranges
727 EXPECT !print-quality
728 EXPECT !printer-resolution
729 EXPECT !sides
730 }
731
732
733 # Test Get-Jobs operation
734 #
735 # Required by: RFC 2911 section 3.2.6
736 {
737 SKIP-IF-DEFINED PRINT_JOB_COMPLETED
738
739 NAME "RFC 2911 section 3.2.6: Get-Jobs Operation (which-jobs, requested-attributes)"
740 OPERATION Get-Jobs
741 GROUP operation-attributes-tag
742 ATTR charset attributes-charset utf-8
743 ATTR naturalLanguage attributes-natural-language en
744 ATTR uri printer-uri $uri
745 ATTR name requesting-user-name $user
746 ATTR keyword requested-attributes all
747 ATTR keyword which-jobs completed
748
749 STATUS successful-ok
750 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
751 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
752 EXPECT job-printer-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
753 EXPECT ?job-more-info OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$HTTP_URI_SCHEME"
754 EXPECT job-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
755 EXPECT job-originating-user-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
756 EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >2,<10
757 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
758 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
759 EXPECT ?job-detailed-status-messages OF-TYPE text IN-GROUP job-attributes-tag
760 EXPECT ?number-of-documents OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
761 EXPECT ?output-device-assigned OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
762 EXPECT time-at-creation OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
763 EXPECT time-at-processing OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
764 EXPECT time-at-completed OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
765 EXPECT job-printer-up-time OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1
766 EXPECT ?date-time-at-creation OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
767 EXPECT ?date-time-at-processing OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
768 EXPECT ?date-time-at-completed OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
769 EXPECT ?number-of-intervening-jobs OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
770 EXPECT ?job-message-from-operator OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
771 EXPECT ?job-k-octets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
772 EXPECT ?job-impressions OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
773 EXPECT ?job-media-sheets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
774 EXPECT ?job-k-octets-processed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
775 EXPECT ?job-impressions-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
776 EXPECT ?job-media-sheets-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
777
778 EXPECT ?copies OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
779 EXPECT ?finishings OF-TYPE enum IN-GROUP job-attributes-tag
780 EXPECT ?job-hold-until OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
781 EXPECT ?job-priority OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0,<101
782 EXPECT ?job-sheets OF-TYPE keyword|name IN-GROUP job-attributes-tag
783 EXPECT ?media OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
784 EXPECT ?multiple-document-handling OF-TYPE keyword IN-GROUP job-attributes-tag WITH-VALUE "/^(single-document|separate-documents-uncollated-copies|separate-documents-collated-copies|single-document-new-sheet)$$/"
785 EXPECT ?number-up OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
786 EXPECT ?orientation-requested OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5,6
787 EXPECT ?pages-ranges OF-TYPE rangeOfInteger IN-GROUP job-attributes-tag
788 EXPECT ?print-quality OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5
789 EXPECT ?printer-resolution OF-TYPE resolution IN-GROUP job-attributes-tag COUNT 1
790 EXPECT ?sides OF-TYPE keyword IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
791 }
792
793
794 # Test Cancel-Job operation
795 #
796 # Required by: RFC 2911 section 3.3.3
797 {
798 NAME "RFC 2911 section 3.3.3: Cancel-Job Operation (completed job)"
799 OPERATION Cancel-Job
800 GROUP operation-attributes-tag
801 ATTR charset attributes-charset utf-8
802 ATTR naturalLanguage attributes-natural-language en
803 ATTR uri printer-uri $uri
804 ATTR integer job-id $job-id
805 ATTR name requesting-user-name $user
806
807 STATUS client-error-not-possible
808 }
809
810
811 # Test Print-Job operation
812 #
813 # Required by: RFC 2911 section 3.2.1
814 {
815 NAME "RFC 2911 section 3.2.1: Print-Job Operation"
816 OPERATION Print-Job
817 GROUP operation-attributes-tag
818 ATTR charset attributes-charset utf-8
819 ATTR naturalLanguage attributes-natural-language en
820 ATTR uri printer-uri $uri
821 ATTR name requesting-user-name $user
822 ATTR name job-name $filename
823 ATTR boolean ipp-attribute-fidelity false
824 ATTR name document-name $filename
825 ATTR keyword compression none
826 ATTR mimeMediaType document-format $filetype
827 FILE $filename
828
829 STATUS successful-ok
830 STATUS client-error-document-format-not-supported
831 STATUS server-error-job-canceled
832 STATUS server-error-busy REPEAT-MATCH
833
834 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
835 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
836 WITH-VALUE >0
837 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
838 WITH-VALUE 3,4,5,6,7,8,9
839 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
840 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
841 EXPECT ?number-of-intervening-jobs OF-TYPE integer
842 IN-GROUP job-attributes-tag WITH-VALUE >-1
843 }
844
845
846 # Test Cancel-Job operation
847 #
848 # Required by: RFC 2911 section 3.3.3
849 {
850 NAME "RFC 2911 section 3.3.3: Cancel-Job Operation (pending/processing job)"
851 OPERATION Cancel-Job
852 GROUP operation-attributes-tag
853 ATTR charset attributes-charset utf-8
854 ATTR naturalLanguage attributes-natural-language en
855 ATTR uri printer-uri $uri
856 ATTR integer job-id $job-id
857 ATTR name requesting-user-name $user
858
859 STATUS successful-ok
860 STATUS client-error-not-possible
861 }
862
863
864 # Test Get-Job-Attributes operation
865 #
866 # Required by: RFC 2911 section 3.3.4
867 {
868 NAME "RFC 2911 section 3.3.4: Get-Job-Attributes Operation"
869 OPERATION Get-Job-Attributes
870 GROUP operation-attributes-tag
871 ATTR charset attributes-charset utf-8
872 ATTR naturalLanguage attributes-natural-language en
873 ATTR uri printer-uri $uri
874 ATTR integer job-id $job-id
875 ATTR name requesting-user-name $user
876
877 STATUS successful-ok
878 EXPECT job-id OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
879 EXPECT job-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
880 EXPECT job-printer-uri OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$IPP_URI_SCHEME"
881 EXPECT ?job-more-info OF-TYPE uri IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "$HTTP_URI_SCHEME"
882 EXPECT job-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
883 EXPECT job-originating-user-name OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
884 EXPECT job-state OF-TYPE unknown|enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >2,<10
885 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
886 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
887 EXPECT ?job-detailed-status-messages OF-TYPE text IN-GROUP job-attributes-tag
888 EXPECT ?number-of-documents OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
889 EXPECT ?output-device-assigned OF-TYPE name IN-GROUP job-attributes-tag COUNT 1
890 EXPECT time-at-creation OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
891 EXPECT time-at-processing OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
892 EXPECT time-at-completed OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >-1
893 EXPECT job-printer-up-time OF-TYPE no-value|integer IN-GROUP job-attributes-tag COUNT 1
894 EXPECT ?date-time-at-creation OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
895 EXPECT ?date-time-at-processing OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
896 EXPECT ?date-time-at-completed OF-TYPE no-value|dateTime IN-GROUP job-attributes-tag COUNT 1
897 EXPECT ?number-of-intervening-jobs OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
898 EXPECT ?job-message-from-operator OF-TYPE text IN-GROUP job-attributes-tag COUNT 1
899 EXPECT ?job-k-octets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
900 EXPECT ?job-impressions OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
901 EXPECT ?job-media-sheets OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
902 EXPECT ?job-k-octets-processed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
903 EXPECT ?job-impressions-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
904 EXPECT ?job-media-sheets-completed OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1
905
906 EXPECT ?copies OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
907 EXPECT ?finishings OF-TYPE enum IN-GROUP job-attributes-tag
908 EXPECT ?job-hold-until OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
909 EXPECT ?job-priority OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0,<101
910 EXPECT ?job-sheets OF-TYPE keyword|name IN-GROUP job-attributes-tag
911 EXPECT ?media OF-TYPE keyword|name IN-GROUP job-attributes-tag COUNT 1
912 EXPECT ?multiple-document-handling OF-TYPE keyword IN-GROUP job-attributes-tag WITH-VALUE "/^(single-document|separate-documents-uncollated-copies|separate-documents-collated-copies|single-document-new-sheet)$$/"
913 EXPECT ?number-up OF-TYPE integer IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE >0
914 EXPECT ?orientation-requested OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5,6
915 EXPECT ?pages-ranges OF-TYPE rangeOfInteger IN-GROUP job-attributes-tag
916 EXPECT ?print-quality OF-TYPE enum IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE 3,4,5
917 EXPECT ?printer-resolution OF-TYPE resolution IN-GROUP job-attributes-tag COUNT 1
918 EXPECT ?sides OF-TYPE keyword IN-GROUP job-attributes-tag COUNT 1 WITH-VALUE "/^(one-sided|two-sided-long-edge|two-sided-short-edge)$$/"
919 }
920
921
922 # Test Print-URI operation
923 #
924 # Defined by: RFC 2911 section 3.2.2
925 {
926 SKIP-IF-NOT-DEFINED OPTIONAL_PRINT_URI
927 SKIP-IF-NOT-DEFINED document-uri
928
929 NAME "RFC 2911 section 3.2.2: Print-URI Operation"
930 OPERATION Print-URI
931 GROUP operation-attributes-tag
932 ATTR charset attributes-charset utf-8
933 ATTR naturalLanguage attributes-natural-language en
934 ATTR uri printer-uri $uri
935 ATTR name requesting-user-name $user
936 ATTR name job-name $filename
937 ATTR boolean ipp-attribute-fidelity false
938 ATTR name document-name $filename
939 ATTR keyword compression none
940 ATTR uri document-uri $document-uri
941
942 STATUS successful-ok
943 STATUS server-error-job-canceled
944 STATUS server-error-busy REPEAT-MATCH
945
946 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
947 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
948 WITH-VALUE >0
949 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
950 WITH-VALUE 3,4,5,6,7,8,9
951 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
952 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
953 EXPECT ?number-of-intervening-jobs OF-TYPE integer
954 IN-GROUP job-attributes-tag WITH-VALUE >-1
955 }
956
957
958 # Test Print-URI operation with bad document-uri
959 #
960 # Defined by: RFC 2911 section 3.2.2
961 {
962 SKIP-IF-NOT-DEFINED OPTIONAL_PRINT_URI
963 SKIP-IF-NOT-DEFINED document-uri
964
965 NAME "Print-URI with bad URI: Print-URI Operation"
966 OPERATION Print-URI
967 GROUP operation-attributes-tag
968 ATTR charset attributes-charset utf-8
969 ATTR naturalLanguage attributes-natural-language en
970 ATTR uri printer-uri $uri
971 ATTR name requesting-user-name $user
972 ATTR name job-name $filename
973 ATTR boolean ipp-attribute-fidelity false
974 ATTR name document-name $filename
975 ATTR keyword compression none
976 ATTR uri document-uri "bogus://bogus"
977
978 STATUS client-error-uri-scheme-not-supported
979
980 EXPECT !job-uri
981 EXPECT !job-id
982 EXPECT !job-state
983 EXPECT !job-state-reasons
984 EXPECT !job-state-message
985 }
986
987
988 # Test Create-Job and Send-Document operations
989 #
990 # Defined by: RFC 2911 section 3.2.4 and 3.3.1
991 {
992 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
993 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_DOCUMENT
994
995 NAME "RFC 2911 section 3.2.4: Create-Job Operation"
996 OPERATION Create-Job
997 GROUP operation-attributes-tag
998 ATTR charset attributes-charset utf-8
999 ATTR naturalLanguage attributes-natural-language en
1000 ATTR uri printer-uri $uri
1001 ATTR name requesting-user-name $user
1002 ATTR name job-name $filename
1003 ATTR boolean ipp-attribute-fidelity false
1004
1005 STATUS successful-ok
1006
1007 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1008 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1009 WITH-VALUE >0
1010 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1011 WITH-VALUE 3,4,5,6,7,8,9
1012 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1013 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1014 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1015 IN-GROUP job-attributes-tag WITH-VALUE >-1
1016 }
1017
1018 {
1019 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1020 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_DOCUMENT
1021 SKIP-PREVIOUS-ERROR yes
1022
1023 NAME "RFC 2911 section 3.3.1: Send-Document Operation"
1024 OPERATION Send-Document
1025 GROUP operation-attributes-tag
1026 ATTR charset attributes-charset utf-8
1027 ATTR naturalLanguage attributes-natural-language en
1028 ATTR uri printer-uri $uri
1029 ATTR integer job-id $job-id
1030 ATTR name requesting-user-name $user
1031 ATTR boolean last-document true
1032 ATTR name document-name $filename
1033 ATTR keyword compression none
1034 ATTR mimeMediaType document-format $filetype
1035 FILE $filename
1036
1037 STATUS successful-ok
1038 STATUS client-error-document-format-not-supported
1039 STATUS server-error-job-canceled
1040 }
1041
1042 # Test Create-Job and Send-Document operations (no last-document)
1043 #
1044 # Defined by: RFC 2911 section 3.2.4 and 3.3.1
1045 {
1046 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1047 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_DOCUMENT
1048
1049 NAME "Send-Document missing last-document: Create-Job Operation"
1050 OPERATION Create-Job
1051 GROUP operation-attributes-tag
1052 ATTR charset attributes-charset utf-8
1053 ATTR naturalLanguage attributes-natural-language en
1054 ATTR uri printer-uri $uri
1055 ATTR name requesting-user-name $user
1056 ATTR name job-name $filename
1057 ATTR boolean ipp-attribute-fidelity false
1058
1059 STATUS successful-ok
1060
1061 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1062 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1063 WITH-VALUE >0
1064 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1065 WITH-VALUE 3,4,5,6,7,8,9
1066 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1067 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1068 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1069 IN-GROUP job-attributes-tag WITH-VALUE >-1
1070 }
1071
1072 {
1073 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1074 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_DOCUMENT
1075 SKIP-PREVIOUS-ERROR yes
1076
1077 NAME "Send-Document missing last-document: Send-Document Operation"
1078 OPERATION Send-Document
1079 GROUP operation-attributes-tag
1080 ATTR charset attributes-charset utf-8
1081 ATTR naturalLanguage attributes-natural-language en
1082 ATTR uri printer-uri $uri
1083 ATTR integer job-id $job-id
1084 ATTR name requesting-user-name $user
1085 ATTR name document-name $filename
1086 ATTR keyword compression none
1087 ATTR mimeMediaType document-format $filetype
1088 FILE $filename
1089
1090 STATUS client-error-bad-request
1091 }
1092
1093 {
1094 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1095 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_DOCUMENT
1096 SKIP-PREVIOUS-ERROR yes
1097
1098 NAME "RFC 2911 section 3.3.3: Cancel-Job Operation"
1099 OPERATION Cancel-Job
1100 GROUP operation-attributes-tag
1101 ATTR charset attributes-charset utf-8
1102 ATTR naturalLanguage attributes-natural-language en
1103 ATTR uri printer-uri $uri
1104 ATTR integer job-id $job-id
1105 ATTR name requesting-user-name $user
1106
1107 STATUS successful-ok
1108 STATUS server-error-job-canceled
1109 }
1110
1111 # Test Create-Job and Send-URI operations
1112 #
1113 # Defined by: RFC 2911 section 3.2.4 and 3.3.2
1114 {
1115 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1116 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_URI
1117 SKIP-IF-NOT-DEFINED document-uri
1118
1119 NAME "RFC 2911 section 3.2.4: Create-Job Operation"
1120 OPERATION Create-Job
1121 GROUP operation-attributes-tag
1122 ATTR charset attributes-charset utf-8
1123 ATTR naturalLanguage attributes-natural-language en
1124 ATTR uri printer-uri $uri
1125 ATTR name requesting-user-name $user
1126 ATTR name job-name $filename
1127 ATTR boolean ipp-attribute-fidelity false
1128
1129 STATUS successful-ok
1130
1131 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1132 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1133 WITH-VALUE >0
1134 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1135 WITH-VALUE 3,4,5,6,7,8,9
1136 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1137 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1138 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1139 IN-GROUP job-attributes-tag WITH-VALUE >-1
1140 }
1141
1142 {
1143 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1144 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_URI
1145 SKIP-IF-NOT-DEFINED document-uri
1146 SKIP-PREVIOUS-ERROR yes
1147
1148 NAME "RFC 2911 section 3.3.2: Send-URI Operation"
1149 OPERATION Send-URI
1150 GROUP operation-attributes-tag
1151 ATTR charset attributes-charset utf-8
1152 ATTR naturalLanguage attributes-natural-language en
1153 ATTR uri printer-uri $uri
1154 ATTR integer job-id $job-id
1155 ATTR name requesting-user-name $user
1156 ATTR boolean last-document true
1157 ATTR name document-name $filename
1158 ATTR keyword compression none
1159 ATTR uri document-uri $document-uri
1160
1161 STATUS successful-ok
1162 STATUS server-error-job-canceled
1163 }
1164
1165
1166 # Test Create-Job and Send-URI operations (bad URI)
1167 #
1168 # Defined by: RFC 2911 section 3.2.4 and 3.3.2
1169 {
1170 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1171 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_URI
1172
1173 NAME "Send-URI with bad URI: Create-Job Operation"
1174 OPERATION Create-Job
1175 GROUP operation-attributes-tag
1176 ATTR charset attributes-charset utf-8
1177 ATTR naturalLanguage attributes-natural-language en
1178 ATTR uri printer-uri $uri
1179 ATTR name requesting-user-name $user
1180 ATTR name job-name $filename
1181 ATTR boolean ipp-attribute-fidelity false
1182
1183 STATUS successful-ok
1184
1185 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1186 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1187 WITH-VALUE >0
1188 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1189 WITH-VALUE 3,4,5,6,7,8,9
1190 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1191 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1192 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1193 IN-GROUP job-attributes-tag WITH-VALUE >-1
1194 }
1195
1196 {
1197 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1198 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_URI
1199 SKIP-IF-NOT-DEFINED document-uri
1200 SKIP-PREVIOUS-ERROR yes
1201
1202 NAME "Send-URI with bad URI: Send-URI Operation (bad URI)"
1203 OPERATION Send-URI
1204 GROUP operation-attributes-tag
1205 ATTR charset attributes-charset utf-8
1206 ATTR naturalLanguage attributes-natural-language en
1207 ATTR uri printer-uri $uri
1208 ATTR integer job-id $job-id
1209 ATTR name requesting-user-name $user
1210 ATTR boolean last-document true
1211 ATTR name document-name $filename
1212 ATTR keyword compression none
1213 ATTR mimeMediaType document-format $filetype
1214 ATTR uri document-uri "bogus://bogus"
1215
1216 STATUS client-error-uri-scheme-not-supported
1217 }
1218
1219 {
1220 SKIP-IF-NOT-DEFINED OPTIONAL_CREATE_JOB
1221 SKIP-IF-NOT-DEFINED OPTIONAL_SEND_URI
1222 SKIP-PREVIOUS-ERROR yes
1223
1224 NAME "Send-URI with bad URI: Cancel-Job Operation"
1225 OPERATION Cancel-Job
1226 GROUP operation-attributes-tag
1227 ATTR charset attributes-charset utf-8
1228 ATTR naturalLanguage attributes-natural-language en
1229 ATTR uri printer-uri $uri
1230 ATTR integer job-id $job-id
1231 ATTR name requesting-user-name $user
1232
1233 STATUS successful-ok
1234 STATUS server-error-job-canceled
1235 }
1236
1237
1238 # Test multiple copy output
1239 {
1240 SKIP-IF-NOT-DEFINED OPTIONAL_COPIES
1241
1242 NAME "Print-Job with copies"
1243 OPERATION Print-Job
1244 GROUP operation-attributes-tag
1245 ATTR charset attributes-charset utf-8
1246 ATTR naturalLanguage attributes-natural-language en
1247 ATTR uri printer-uri $uri
1248 ATTR name requesting-user-name $user
1249 ATTR name job-name $filename
1250 ATTR boolean ipp-attribute-fidelity false
1251 ATTR name document-name $filename
1252 ATTR keyword compression none
1253 ATTR mimeMediaType document-format $filetype
1254 GROUP job-attributes-tag
1255 ATTR integer copies 2
1256 FILE $filename
1257
1258 STATUS successful-ok
1259 STATUS client-error-document-format-not-supported
1260 STATUS server-error-job-canceled
1261 STATUS server-error-busy REPEAT-MATCH
1262
1263 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1264 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1265 WITH-VALUE >0
1266 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1267 WITH-VALUE 3,4,5,6,7,8,9
1268 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1269 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1270 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1271 IN-GROUP job-attributes-tag WITH-VALUE >-1
1272 }
1273
1274
1275 # Test PDF output
1276 {
1277 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1278 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1279
1280 NAME "Print-Job with A4 PDF"
1281 OPERATION Print-Job
1282 GROUP operation-attributes-tag
1283 ATTR charset attributes-charset utf-8
1284 ATTR naturalLanguage attributes-natural-language en
1285 ATTR uri printer-uri $uri
1286 ATTR name requesting-user-name $user
1287 ATTR name job-name "A4 Test Document"
1288 ATTR boolean ipp-attribute-fidelity false
1289 ATTR name document-name document-a4.pdf
1290 ATTR keyword compression none
1291 ATTR mimeMediaType document-format application/pdf
1292 GROUP job-attributes-tag
1293 ATTR keyword media $OPTIONAL_A4_MEDIA
1294 FILE document-a4.pdf
1295
1296 STATUS successful-ok
1297 STATUS server-error-job-canceled
1298 STATUS server-error-busy REPEAT-MATCH
1299
1300 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1301 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1302 WITH-VALUE >0
1303 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1304 WITH-VALUE 3,4,5,6,7,8,9
1305 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1306 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1307 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1308 IN-GROUP job-attributes-tag WITH-VALUE >-1
1309 }
1310
1311 {
1312 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1313 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1314 SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
1315
1316 NAME "Print-Job with A4 PDF, Duplex"
1317 OPERATION Print-Job
1318 GROUP operation-attributes-tag
1319 ATTR charset attributes-charset utf-8
1320 ATTR naturalLanguage attributes-natural-language en
1321 ATTR uri printer-uri $uri
1322 ATTR name requesting-user-name $user
1323 ATTR name job-name "A4 Test Document, Duplex"
1324 ATTR boolean ipp-attribute-fidelity false
1325 ATTR name document-name document-a4.pdf
1326 ATTR keyword compression none
1327 ATTR mimeMediaType document-format application/pdf
1328 GROUP job-attributes-tag
1329 ATTR keyword media $OPTIONAL_A4_MEDIA
1330 ATTR keyword sides two-sided-long-edge
1331 FILE document-a4.pdf
1332
1333 STATUS successful-ok
1334 STATUS server-error-job-canceled
1335 STATUS server-error-busy REPEAT-MATCH
1336
1337 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1338 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1339 WITH-VALUE >0
1340 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1341 WITH-VALUE 3,4,5,6,7,8,9
1342 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1343 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1344 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1345 IN-GROUP job-attributes-tag WITH-VALUE >-1
1346 }
1347
1348 {
1349 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1350 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1351
1352 NAME "Print-Job with US Letter PDF"
1353 OPERATION Print-Job
1354 GROUP operation-attributes-tag
1355 ATTR charset attributes-charset utf-8
1356 ATTR naturalLanguage attributes-natural-language en
1357 ATTR uri printer-uri $uri
1358 ATTR name requesting-user-name $user
1359 ATTR name job-name "US Letter Test Document"
1360 ATTR boolean ipp-attribute-fidelity false
1361 ATTR name document-name document-letter.pdf
1362 ATTR keyword compression none
1363 ATTR mimeMediaType document-format application/pdf
1364 GROUP job-attributes-tag
1365 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1366 FILE document-letter.pdf
1367
1368 STATUS successful-ok
1369 STATUS server-error-job-canceled
1370 STATUS server-error-busy REPEAT-MATCH
1371
1372 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1373 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1374 WITH-VALUE >0
1375 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1376 WITH-VALUE 3,4,5,6,7,8,9
1377 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1378 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1379 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1380 IN-GROUP job-attributes-tag WITH-VALUE >-1
1381 }
1382
1383 {
1384 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1385 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1386 SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
1387
1388 NAME "Print-Job with US Letter PDF, Duplex"
1389 OPERATION Print-Job
1390 GROUP operation-attributes-tag
1391 ATTR charset attributes-charset utf-8
1392 ATTR naturalLanguage attributes-natural-language en
1393 ATTR uri printer-uri $uri
1394 ATTR name requesting-user-name $user
1395 ATTR name job-name "US Letter Test Document, Duplex"
1396 ATTR boolean ipp-attribute-fidelity false
1397 ATTR name document-name document-letter.pdf
1398 ATTR keyword compression none
1399 ATTR mimeMediaType document-format application/pdf
1400 GROUP job-attributes-tag
1401 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1402 ATTR keyword sides two-sided-long-edge
1403 FILE document-letter.pdf
1404
1405 STATUS successful-ok
1406 STATUS server-error-job-canceled
1407 STATUS server-error-busy REPEAT-MATCH
1408
1409 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1410 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1411 WITH-VALUE >0
1412 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1413 WITH-VALUE 3,4,5,6,7,8,9
1414 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1415 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1416 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1417 IN-GROUP job-attributes-tag WITH-VALUE >-1
1418 }
1419
1420
1421 # Test PostScript output
1422 {
1423 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1424 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1425
1426 NAME "Print-Job with A4 PostScript"
1427 OPERATION Print-Job
1428 GROUP operation-attributes-tag
1429 ATTR charset attributes-charset utf-8
1430 ATTR naturalLanguage attributes-natural-language en
1431 ATTR uri printer-uri $uri
1432 ATTR name requesting-user-name $user
1433 ATTR name job-name "A4 Test Document, Duplex"
1434 ATTR boolean ipp-attribute-fidelity false
1435 ATTR name document-name document-a4.ps
1436 ATTR keyword compression none
1437 ATTR mimeMediaType document-format application/postscript
1438 GROUP job-attributes-tag
1439 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1440 FILE document-a4.ps
1441
1442 STATUS successful-ok
1443 STATUS server-error-job-canceled
1444 STATUS server-error-busy REPEAT-MATCH
1445
1446 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1447 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1448 WITH-VALUE >0
1449 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1450 WITH-VALUE 3,4,5,6,7,8,9
1451 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1452 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1453 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1454 IN-GROUP job-attributes-tag WITH-VALUE >-1
1455 }
1456
1457 {
1458 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1459 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1460 SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
1461
1462 NAME "Print-Job with A4 PostScript, Duplex"
1463 OPERATION Print-Job
1464 GROUP operation-attributes-tag
1465 ATTR charset attributes-charset utf-8
1466 ATTR naturalLanguage attributes-natural-language en
1467 ATTR uri printer-uri $uri
1468 ATTR name requesting-user-name $user
1469 ATTR name job-name "US Letter Test Document"
1470 ATTR boolean ipp-attribute-fidelity false
1471 ATTR name document-name document-a4.ps
1472 ATTR keyword compression none
1473 ATTR mimeMediaType document-format application/postscript
1474 GROUP job-attributes-tag
1475 ATTR keyword media $OPTIONAL_A4_MEDIA
1476 ATTR keyword sides two-sided-long-edge
1477 FILE document-a4.ps
1478
1479 STATUS successful-ok
1480 STATUS server-error-job-canceled
1481 STATUS server-error-busy REPEAT-MATCH
1482
1483 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1484 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1485 WITH-VALUE >0
1486 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1487 WITH-VALUE 3,4,5,6,7,8,9
1488 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1489 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1490 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1491 IN-GROUP job-attributes-tag WITH-VALUE >-1
1492 }
1493
1494 {
1495 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1496 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1497
1498 NAME "Print-Job with US Letter PostScript"
1499 OPERATION Print-Job
1500 GROUP operation-attributes-tag
1501 ATTR charset attributes-charset utf-8
1502 ATTR naturalLanguage attributes-natural-language en
1503 ATTR uri printer-uri $uri
1504 ATTR name requesting-user-name $user
1505 ATTR name job-name "US Letter Test Document, Duplex"
1506 ATTR boolean ipp-attribute-fidelity false
1507 ATTR name document-name document-letter.ps
1508 ATTR keyword compression none
1509 ATTR mimeMediaType document-format application/postscript
1510 GROUP job-attributes-tag
1511 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1512 FILE document-letter.ps
1513
1514 STATUS successful-ok
1515 STATUS server-error-job-canceled
1516 STATUS server-error-busy REPEAT-MATCH
1517
1518 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1519 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1520 WITH-VALUE >0
1521 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1522 WITH-VALUE 3,4,5,6,7,8,9
1523 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1524 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1525 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1526 IN-GROUP job-attributes-tag WITH-VALUE >-1
1527 }
1528
1529 {
1530 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1531 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1532 SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX
1533
1534 NAME "Print-Job with US Letter PostScript, Duplex"
1535 OPERATION Print-Job
1536 GROUP operation-attributes-tag
1537 ATTR charset attributes-charset utf-8
1538 ATTR naturalLanguage attributes-natural-language en
1539 ATTR uri printer-uri $uri
1540 ATTR name requesting-user-name $user
1541 ATTR name job-name "A4 Test Document"
1542 ATTR boolean ipp-attribute-fidelity false
1543 ATTR name document-name document-letter.ps
1544 ATTR keyword compression none
1545 ATTR mimeMediaType document-format application/postscript
1546 GROUP job-attributes-tag
1547 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1548 ATTR keyword sides two-sided-long-edge
1549 FILE document-letter.ps
1550
1551 STATUS successful-ok
1552 STATUS server-error-job-canceled
1553 STATUS server-error-busy REPEAT-MATCH
1554
1555 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1556 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1557 WITH-VALUE >0
1558 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1559 WITH-VALUE 3,4,5,6,7,8,9
1560 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1561 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1562 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1563 IN-GROUP job-attributes-tag WITH-VALUE >-1
1564 }
1565
1566
1567 # Test JPEG output
1568 {
1569 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1570 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1571
1572 NAME "Print-Job with Color JPEG on A4"
1573 OPERATION Print-Job
1574 GROUP operation-attributes-tag
1575 ATTR charset attributes-charset utf-8
1576 ATTR naturalLanguage attributes-natural-language en
1577 ATTR uri printer-uri $uri
1578 ATTR name requesting-user-name $user
1579 ATTR name job-name "Color JPEG on A4"
1580 ATTR boolean ipp-attribute-fidelity false
1581 ATTR name document-name color.jpg
1582 ATTR keyword compression none
1583 ATTR mimeMediaType document-format image/jpeg
1584 GROUP job-attributes-tag
1585 ATTR keyword media $OPTIONAL_A4_MEDIA
1586 FILE color.jpg
1587
1588 STATUS successful-ok
1589 STATUS server-error-job-canceled
1590 STATUS server-error-busy REPEAT-MATCH
1591
1592 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1593 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1594 WITH-VALUE >0
1595 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1596 WITH-VALUE 3,4,5,6,7,8,9
1597 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1598 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1599 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1600 IN-GROUP job-attributes-tag WITH-VALUE >-1
1601 }
1602
1603 {
1604 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1605 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1606
1607 NAME "Print-Job with Color JPEG on US Letter"
1608 OPERATION Print-Job
1609 GROUP operation-attributes-tag
1610 ATTR charset attributes-charset utf-8
1611 ATTR naturalLanguage attributes-natural-language en
1612 ATTR uri printer-uri $uri
1613 ATTR name requesting-user-name $user
1614 ATTR name job-name "Color JPEG on US Letter"
1615 ATTR boolean ipp-attribute-fidelity false
1616 ATTR name document-name color.jpg
1617 ATTR keyword compression none
1618 ATTR mimeMediaType document-format image/jpeg
1619 GROUP job-attributes-tag
1620 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1621 FILE color.jpg
1622
1623 STATUS successful-ok
1624 STATUS server-error-job-canceled
1625 STATUS server-error-busy REPEAT-MATCH
1626
1627 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1628 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1629 WITH-VALUE >0
1630 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1631 WITH-VALUE 3,4,5,6,7,8,9
1632 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1633 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1634 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1635 IN-GROUP job-attributes-tag WITH-VALUE >-1
1636 }
1637
1638 {
1639 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1640 SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
1641
1642 NAME "Print-Job with Color JPEG on 4x6"
1643 OPERATION Print-Job
1644 GROUP operation-attributes-tag
1645 ATTR charset attributes-charset utf-8
1646 ATTR naturalLanguage attributes-natural-language en
1647 ATTR uri printer-uri $uri
1648 ATTR name requesting-user-name $user
1649 ATTR name job-name "Color JPEG on 4x6"
1650 ATTR boolean ipp-attribute-fidelity false
1651 ATTR name document-name color.jpg
1652 ATTR keyword compression none
1653 ATTR mimeMediaType document-format image/jpeg
1654 GROUP job-attributes-tag
1655 ATTR keyword media $OPTIONAL_4X6_MEDIA
1656 FILE color.jpg
1657
1658 STATUS successful-ok
1659 STATUS server-error-job-canceled
1660 STATUS server-error-busy REPEAT-MATCH
1661
1662 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1663 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1664 WITH-VALUE >0
1665 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1666 WITH-VALUE 3,4,5,6,7,8,9
1667 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1668 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1669 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1670 IN-GROUP job-attributes-tag WITH-VALUE >-1
1671 }
1672
1673 {
1674 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1675 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1676
1677 NAME "Print-Job with Grayscale JPEG on A4"
1678 OPERATION Print-Job
1679 GROUP operation-attributes-tag
1680 ATTR charset attributes-charset utf-8
1681 ATTR naturalLanguage attributes-natural-language en
1682 ATTR uri printer-uri $uri
1683 ATTR name requesting-user-name $user
1684 ATTR name job-name "Grayscale JPEG on A4"
1685 ATTR boolean ipp-attribute-fidelity false
1686 ATTR name document-name gray.jpg
1687 ATTR keyword compression none
1688 ATTR mimeMediaType document-format image/jpeg
1689 GROUP job-attributes-tag
1690 ATTR keyword media $OPTIONAL_A4_MEDIA
1691 FILE gray.jpg
1692
1693 STATUS successful-ok
1694 STATUS server-error-job-canceled
1695 STATUS server-error-busy REPEAT-MATCH
1696
1697 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1698 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1699 WITH-VALUE >0
1700 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1701 WITH-VALUE 3,4,5,6,7,8,9
1702 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1703 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1704 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1705 IN-GROUP job-attributes-tag WITH-VALUE >-1
1706 }
1707
1708 {
1709 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1710 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1711
1712 NAME "Print-Job with Grayscale JPEG on US Letter"
1713 OPERATION Print-Job
1714 GROUP operation-attributes-tag
1715 ATTR charset attributes-charset utf-8
1716 ATTR naturalLanguage attributes-natural-language en
1717 ATTR uri printer-uri $uri
1718 ATTR name requesting-user-name $user
1719 ATTR name job-name "Grayscale JPEG on US Letter"
1720 ATTR boolean ipp-attribute-fidelity false
1721 ATTR name document-name gray.jpg
1722 ATTR keyword compression none
1723 ATTR mimeMediaType document-format image/jpeg
1724 GROUP job-attributes-tag
1725 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1726 FILE gray.jpg
1727
1728 STATUS successful-ok
1729 STATUS server-error-job-canceled
1730 STATUS server-error-busy REPEAT-MATCH
1731
1732 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1733 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1734 WITH-VALUE >0
1735 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1736 WITH-VALUE 3,4,5,6,7,8,9
1737 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1738 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1739 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1740 IN-GROUP job-attributes-tag WITH-VALUE >-1
1741 }
1742
1743 {
1744 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
1745 SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
1746
1747 NAME "Print-Job with Grayscale JPEG on 4x6"
1748 OPERATION Print-Job
1749 GROUP operation-attributes-tag
1750 ATTR charset attributes-charset utf-8
1751 ATTR naturalLanguage attributes-natural-language en
1752 ATTR uri printer-uri $uri
1753 ATTR name requesting-user-name $user
1754 ATTR name job-name "Grayscale JPEG on 4x6"
1755 ATTR boolean ipp-attribute-fidelity false
1756 ATTR name document-name gray.jpg
1757 ATTR keyword compression none
1758 ATTR mimeMediaType document-format image/jpeg
1759 GROUP job-attributes-tag
1760 ATTR keyword media $OPTIONAL_4X6_MEDIA
1761 FILE gray.jpg
1762
1763 STATUS successful-ok
1764 STATUS server-error-job-canceled
1765 STATUS server-error-busy REPEAT-MATCH
1766
1767 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1768 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1769 WITH-VALUE >0
1770 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1771 WITH-VALUE 3,4,5,6,7,8,9
1772 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1773 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1774 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1775 IN-GROUP job-attributes-tag WITH-VALUE >-1
1776 }
1777
1778
1779 # Print-Job with job-sheets
1780 {
1781 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1782 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1783 SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
1784
1785 NAME "Print-Job with A4 PDF and Standard Sheet"
1786 OPERATION Print-Job
1787 GROUP operation-attributes-tag
1788 ATTR charset attributes-charset utf-8
1789 ATTR naturalLanguage attributes-natural-language en
1790 ATTR uri printer-uri $uri
1791 ATTR name requesting-user-name $user
1792 ATTR name job-name "A4 Test Document w/Standard Sheet"
1793 ATTR boolean ipp-attribute-fidelity false
1794 ATTR name document-name document-a4.pdf
1795 ATTR keyword compression none
1796 ATTR mimeMediaType document-format application/pdf
1797 GROUP job-attributes-tag
1798 ATTR keyword media $OPTIONAL_A4_MEDIA
1799 ATTR keyword job-sheets standard
1800 FILE document-a4.pdf
1801
1802 STATUS successful-ok
1803 STATUS server-error-job-canceled
1804 STATUS server-error-busy REPEAT-MATCH
1805
1806 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1807 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1808 WITH-VALUE >0
1809 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1810 WITH-VALUE 3,4,5,6,7,8,9
1811 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1812 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1813 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1814 IN-GROUP job-attributes-tag WITH-VALUE >-1
1815 }
1816
1817 {
1818 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1819 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1820 SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
1821
1822 NAME "Print-Job with US Letter PDF and Standard Sheet"
1823 OPERATION Print-Job
1824 GROUP operation-attributes-tag
1825 ATTR charset attributes-charset utf-8
1826 ATTR naturalLanguage attributes-natural-language en
1827 ATTR uri printer-uri $uri
1828 ATTR name requesting-user-name $user
1829 ATTR name job-name "US Letter Test Document w/Standard Sheet"
1830 ATTR boolean ipp-attribute-fidelity false
1831 ATTR name document-name document-a4.pdf
1832 ATTR keyword compression none
1833 ATTR mimeMediaType document-format application/pdf
1834 GROUP job-attributes-tag
1835 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1836 ATTR keyword job-sheets standard
1837 FILE document-a4.pdf
1838
1839 STATUS successful-ok
1840 STATUS server-error-job-canceled
1841 STATUS server-error-busy REPEAT-MATCH
1842
1843 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1844 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1845 WITH-VALUE >0
1846 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1847 WITH-VALUE 3,4,5,6,7,8,9
1848 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1849 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1850 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1851 IN-GROUP job-attributes-tag WITH-VALUE >-1
1852 }
1853
1854 {
1855 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1856 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1857 SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
1858
1859 NAME "Print-Job with A4 PDF and Standard Sheet"
1860 OPERATION Print-Job
1861 GROUP operation-attributes-tag
1862 ATTR charset attributes-charset utf-8
1863 ATTR naturalLanguage attributes-natural-language en
1864 ATTR uri printer-uri $uri
1865 ATTR name requesting-user-name $user
1866 ATTR name job-name "A4 Test Document w/Standard Sheet"
1867 ATTR boolean ipp-attribute-fidelity false
1868 ATTR name document-name document-a4.ps
1869 ATTR keyword compression none
1870 ATTR mimeMediaType document-format application/postscript
1871 GROUP job-attributes-tag
1872 ATTR keyword media $OPTIONAL_A4_MEDIA
1873 ATTR keyword job-sheets standard
1874 FILE document-a4.ps
1875
1876 STATUS successful-ok
1877 STATUS server-error-job-canceled
1878 STATUS server-error-busy REPEAT-MATCH
1879
1880 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1881 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1882 WITH-VALUE >0
1883 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1884 WITH-VALUE 3,4,5,6,7,8,9
1885 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1886 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1887 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1888 IN-GROUP job-attributes-tag WITH-VALUE >-1
1889 }
1890
1891 {
1892 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
1893 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1894 SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET
1895
1896 NAME "Print-Job with US Letter PDF and Standard Sheet"
1897 OPERATION Print-Job
1898 GROUP operation-attributes-tag
1899 ATTR charset attributes-charset utf-8
1900 ATTR naturalLanguage attributes-natural-language en
1901 ATTR uri printer-uri $uri
1902 ATTR name requesting-user-name $user
1903 ATTR name job-name "US Letter Test Document w/Standard Sheet"
1904 ATTR boolean ipp-attribute-fidelity false
1905 ATTR name document-name document-a4.ps
1906 ATTR keyword compression none
1907 ATTR mimeMediaType document-format application/postscript
1908 GROUP job-attributes-tag
1909 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1910 ATTR keyword job-sheets standard
1911 FILE document-a4.ps
1912
1913 STATUS successful-ok
1914 STATUS server-error-job-canceled
1915 STATUS server-error-busy REPEAT-MATCH
1916
1917 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1918 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1919 WITH-VALUE >0
1920 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1921 WITH-VALUE 3,4,5,6,7,8,9
1922 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1923 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1924 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1925 IN-GROUP job-attributes-tag WITH-VALUE >-1
1926 }
1927
1928
1929 # Test number-up output
1930 {
1931 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1932 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
1933 SKIP-IF-NOT-DEFINED OPTIONAL_2UP
1934
1935 NAME "Print-Job with A4 PDF, 2-Up"
1936 OPERATION Print-Job
1937 GROUP operation-attributes-tag
1938 ATTR charset attributes-charset utf-8
1939 ATTR naturalLanguage attributes-natural-language en
1940 ATTR uri printer-uri $uri
1941 ATTR name requesting-user-name $user
1942 ATTR name job-name "A4 Test Document, 2-Up"
1943 ATTR boolean ipp-attribute-fidelity false
1944 ATTR name document-name document-a4.pdf
1945 ATTR keyword compression none
1946 ATTR mimeMediaType document-format application/pdf
1947 GROUP job-attributes-tag
1948 ATTR keyword media $OPTIONAL_A4_MEDIA
1949 ATTR integer number-up 2
1950 FILE document-a4.pdf
1951
1952 STATUS successful-ok
1953 STATUS server-error-job-canceled
1954 STATUS server-error-busy REPEAT-MATCH
1955
1956 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1957 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1958 WITH-VALUE >0
1959 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1960 WITH-VALUE 3,4,5,6,7,8,9
1961 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1962 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
1963 EXPECT ?number-of-intervening-jobs OF-TYPE integer
1964 IN-GROUP job-attributes-tag WITH-VALUE >-1
1965 }
1966
1967 {
1968 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
1969 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
1970 SKIP-IF-NOT-DEFINED OPTIONAL_2UP
1971
1972 NAME "Print-Job with US Letter PDF, 2-Up"
1973 OPERATION Print-Job
1974 GROUP operation-attributes-tag
1975 ATTR charset attributes-charset utf-8
1976 ATTR naturalLanguage attributes-natural-language en
1977 ATTR uri printer-uri $uri
1978 ATTR name requesting-user-name $user
1979 ATTR name job-name "US Letter Test Document, 2-Up"
1980 ATTR boolean ipp-attribute-fidelity false
1981 ATTR name document-name document-letter.pdf
1982 ATTR keyword compression none
1983 ATTR mimeMediaType document-format application/pdf
1984 GROUP job-attributes-tag
1985 ATTR keyword media $OPTIONAL_LETTER_MEDIA
1986 ATTR integer number-up 2
1987 FILE document-letter.pdf
1988
1989 STATUS successful-ok
1990 STATUS server-error-job-canceled
1991 STATUS server-error-busy REPEAT-MATCH
1992
1993 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
1994 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
1995 WITH-VALUE >0
1996 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
1997 WITH-VALUE 3,4,5,6,7,8,9
1998 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
1999 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2000 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2001 IN-GROUP job-attributes-tag WITH-VALUE >-1
2002 }
2003
2004 {
2005 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
2006 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
2007 SKIP-IF-NOT-DEFINED OPTIONAL_2UP
2008
2009 NAME "Print-Job with A4 PDF, 2-Up"
2010 OPERATION Print-Job
2011 GROUP operation-attributes-tag
2012 ATTR charset attributes-charset utf-8
2013 ATTR naturalLanguage attributes-natural-language en
2014 ATTR uri printer-uri $uri
2015 ATTR name requesting-user-name $user
2016 ATTR name job-name "A4 Test Document, 2-Up"
2017 ATTR boolean ipp-attribute-fidelity false
2018 ATTR name document-name document-a4.ps
2019 ATTR keyword compression none
2020 ATTR mimeMediaType document-format application/postscript
2021 GROUP job-attributes-tag
2022 ATTR keyword media $OPTIONAL_A4_MEDIA
2023 ATTR integer number-up 2
2024 FILE document-a4.ps
2025
2026 STATUS successful-ok
2027 STATUS server-error-job-canceled
2028 STATUS server-error-busy REPEAT-MATCH
2029
2030 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2031 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2032 WITH-VALUE >0
2033 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2034 WITH-VALUE 3,4,5,6,7,8,9
2035 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2036 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2037 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2038 IN-GROUP job-attributes-tag WITH-VALUE >-1
2039 }
2040
2041 {
2042 SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT
2043 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
2044 SKIP-IF-NOT-DEFINED OPTIONAL_2UP
2045
2046 NAME "Print-Job with US Letter PDF, 2-Up"
2047 OPERATION Print-Job
2048 GROUP operation-attributes-tag
2049 ATTR charset attributes-charset utf-8
2050 ATTR naturalLanguage attributes-natural-language en
2051 ATTR uri printer-uri $uri
2052 ATTR name requesting-user-name $user
2053 ATTR name job-name "US Letter Test Document, 2-Up"
2054 ATTR boolean ipp-attribute-fidelity false
2055 ATTR name document-name document-letter.ps
2056 ATTR keyword compression none
2057 ATTR mimeMediaType document-format application/postscript
2058 GROUP job-attributes-tag
2059 ATTR keyword media $OPTIONAL_LETTER_MEDIA
2060 ATTR integer number-up 2
2061 FILE document-letter.ps
2062
2063 STATUS successful-ok
2064 STATUS server-error-job-canceled
2065 STATUS server-error-busy REPEAT-MATCH
2066
2067 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2068 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2069 WITH-VALUE >0
2070 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2071 WITH-VALUE 3,4,5,6,7,8,9
2072 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2073 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2074 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2075 IN-GROUP job-attributes-tag WITH-VALUE >-1
2076 }
2077
2078
2079 # Test output with print-quality...
2080 {
2081 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
2082 SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
2083 SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
2084
2085 NAME "Print-Job with JPEG on 4x6, Draft Quality"
2086 OPERATION Print-Job
2087 GROUP operation-attributes-tag
2088 ATTR charset attributes-charset utf-8
2089 ATTR naturalLanguage attributes-natural-language en
2090 ATTR uri printer-uri $uri
2091 ATTR name requesting-user-name $user
2092 ATTR name job-name "4x6 Color JPEG, Draft Quality"
2093 ATTR boolean ipp-attribute-fidelity false
2094 ATTR name document-name color.jpg
2095 ATTR keyword compression none
2096 ATTR mimeMediaType document-format image/jpeg
2097 GROUP job-attributes-tag
2098 ATTR keyword media $OPTIONAL_4X6_MEDIA
2099 ATTR enum print-quality 3
2100 FILE color.jpeg
2101
2102 STATUS successful-ok
2103 STATUS server-error-job-canceled
2104 STATUS server-error-busy REPEAT-MATCH
2105
2106 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2107 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2108 WITH-VALUE >0
2109 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2110 WITH-VALUE 3,4,5,6,7,8,9
2111 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2112 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2113 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2114 IN-GROUP job-attributes-tag WITH-VALUE >-1
2115 }
2116
2117 {
2118 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
2119 SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
2120 SKIP-IF-NOT-DEFINED OPTIONAL_NORMAL_QUALITY
2121
2122 NAME "Print-Job with JPEG on 4x6, Normal Quality"
2123 OPERATION Print-Job
2124 GROUP operation-attributes-tag
2125 ATTR charset attributes-charset utf-8
2126 ATTR naturalLanguage attributes-natural-language en
2127 ATTR uri printer-uri $uri
2128 ATTR name requesting-user-name $user
2129 ATTR name job-name "4x6 Color JPEG, Normal Quality"
2130 ATTR boolean ipp-attribute-fidelity false
2131 ATTR name document-name color.jpg
2132 ATTR keyword compression none
2133 ATTR mimeMediaType document-format image/jpeg
2134 GROUP job-attributes-tag
2135 ATTR keyword media $OPTIONAL_4X6_MEDIA
2136 ATTR enum print-quality 4
2137 FILE color.jpeg
2138
2139 STATUS successful-ok
2140 STATUS server-error-job-canceled
2141 STATUS server-error-busy REPEAT-MATCH
2142
2143 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2144 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2145 WITH-VALUE >0
2146 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2147 WITH-VALUE 3,4,5,6,7,8,9
2148 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2149 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2150 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2151 IN-GROUP job-attributes-tag WITH-VALUE >-1
2152 }
2153
2154 {
2155 SKIP-IF-NOT-DEFINED OPTIONAL_JPEG
2156 SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA
2157 SKIP-IF-NOT-DEFINED OPTIONAL_HIGH_QUALITY
2158
2159 NAME "Print-Job with JPEG on 4x6, High Quality"
2160 OPERATION Print-Job
2161 GROUP operation-attributes-tag
2162 ATTR charset attributes-charset utf-8
2163 ATTR naturalLanguage attributes-natural-language en
2164 ATTR uri printer-uri $uri
2165 ATTR name requesting-user-name $user
2166 ATTR name job-name "4x6 Color JPEG, High Quality"
2167 ATTR boolean ipp-attribute-fidelity false
2168 ATTR name document-name color.jpg
2169 ATTR keyword compression none
2170 ATTR mimeMediaType document-format image/jpeg
2171 GROUP job-attributes-tag
2172 ATTR keyword media $OPTIONAL_4X6_MEDIA
2173 ATTR enum print-quality 5
2174 FILE color.jpeg
2175
2176 STATUS successful-ok
2177 STATUS server-error-job-canceled
2178 STATUS server-error-busy REPEAT-MATCH
2179
2180 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2181 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2182 WITH-VALUE >0
2183 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2184 WITH-VALUE 3,4,5,6,7,8,9
2185 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2186 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2187 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2188 IN-GROUP job-attributes-tag WITH-VALUE >-1
2189 }
2190
2191 {
2192 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
2193 SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA
2194 SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
2195
2196 NAME "Print-Job with A4 PDF, Draft Quality"
2197 OPERATION Print-Job
2198 GROUP operation-attributes-tag
2199 ATTR charset attributes-charset utf-8
2200 ATTR naturalLanguage attributes-natural-language en
2201 ATTR uri printer-uri $uri
2202 ATTR name requesting-user-name $user
2203 ATTR name job-name "A4 Test Document, 2-Up"
2204 ATTR boolean ipp-attribute-fidelity false
2205 ATTR name document-name document-a4.pdf
2206 ATTR keyword compression none
2207 ATTR mimeMediaType document-format application/pdf
2208 GROUP job-attributes-tag
2209 ATTR keyword media $OPTIONAL_A4_MEDIA
2210 ATTR enum print-quality 3
2211 FILE document-a4.pdf
2212
2213 STATUS successful-ok
2214 STATUS server-error-job-canceled
2215 STATUS server-error-busy REPEAT-MATCH
2216
2217 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2218 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2219 WITH-VALUE >0
2220 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2221 WITH-VALUE 3,4,5,6,7,8,9
2222 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2223 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2224 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2225 IN-GROUP job-attributes-tag WITH-VALUE >-1
2226 }
2227
2228 {
2229 SKIP-IF-NOT-DEFINED OPTIONAL_PDF
2230 SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA
2231 SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY
2232
2233 NAME "Print-Job with US Letter PDF, Draft Quality"
2234 OPERATION Print-Job
2235 GROUP operation-attributes-tag
2236 ATTR charset attributes-charset utf-8
2237 ATTR naturalLanguage attributes-natural-language en
2238 ATTR uri printer-uri $uri
2239 ATTR name requesting-user-name $user
2240 ATTR name job-name "US Letter Test Document, 2-Up"
2241 ATTR boolean ipp-attribute-fidelity false
2242 ATTR name document-name document-letter.pdf
2243 ATTR keyword compression none
2244 ATTR mimeMediaType document-format application/pdf
2245 GROUP job-attributes-tag
2246 ATTR keyword media $OPTIONAL_LETTER_MEDIA
2247 ATTR enum print-quality 3
2248 FILE document-letter.pdf
2249
2250 STATUS successful-ok
2251 STATUS server-error-job-canceled
2252 STATUS server-error-busy REPEAT-MATCH
2253
2254 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2255 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2256 WITH-VALUE >0
2257 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2258 WITH-VALUE 3,4,5,6,7,8,9
2259 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2260 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2261 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2262 IN-GROUP job-attributes-tag WITH-VALUE >-1
2263 }
2264
2265
2266 # Test hold/release in the context of Print-Job w/job-hold-until + Release-Job
2267 {
2268 SKIP-IF-NOT-DEFINED OPTIONAL_HOLD_JOB
2269
2270 NAME "Print-Job with job-hold-until"
2271 OPERATION Print-Job
2272 GROUP operation-attributes-tag
2273 ATTR charset attributes-charset utf-8
2274 ATTR naturalLanguage attributes-natural-language en
2275 ATTR uri printer-uri $uri
2276 ATTR name requesting-user-name $user
2277 ATTR name job-name "Test Document w/Hold"
2278 ATTR name document-name $filename
2279 ATTR keyword compression none
2280 ATTR mimeMediaType document-format $filetype
2281 GROUP job-attributes-tag
2282 ATTR keyword job-hold-until indefinite
2283 FILE $filename
2284
2285 STATUS successful-ok
2286 STATUS server-error-job-canceled
2287 STATUS server-error-busy REPEAT-MATCH
2288
2289 EXPECT job-uri OF-TYPE uri COUNT 1 IN-GROUP job-attributes-tag WITH-VALUE "$IPP_URI_SCHEME"
2290 EXPECT job-id OF-TYPE integer COUNT 1 IN-GROUP job-attributes-tag
2291 WITH-VALUE >0
2292 EXPECT job-state OF-TYPE unknown|enum COUNT 1 IN-GROUP job-attributes-tag
2293 WITH-VALUE 3,4,5,6,7,8,9
2294 EXPECT job-state-reasons OF-TYPE keyword IN-GROUP job-attributes-tag
2295 EXPECT ?job-state-message OF-TYPE text IN-GROUP job-attributes-tag
2296 EXPECT ?number-of-intervening-jobs OF-TYPE integer
2297 IN-GROUP job-attributes-tag WITH-VALUE >-1
2298 }
2299
2300 {
2301 SKIP-IF-NOT-DEFINED OPTIONAL_HOLD_JOB
2302
2303 NAME "Release-Job"
2304 OPERATION Release-Job
2305 GROUP operation-attributes-tag
2306 ATTR charset attributes-charset utf-8
2307 ATTR naturalLanguage attributes-natural-language en
2308 ATTR uri printer-uri $uri
2309 ATTR integer job-id $job-id
2310 ATTR name requesting-user-name $user
2311
2312 STATUS successful-ok
2313 STATUS client-error-not-possible
2314 }
2315
2316
2317 #
2318 # End of "$Id$".
2319 #