xref: /aosp_15_r20/external/libcups/test/4.4-subscription-ops.test (revision 5e7646d21f1134fb0638875d812ef646c12ab91e)
1*5e7646d2SAndroid Build Coastguard Worker#
2*5e7646d2SAndroid Build Coastguard Worker# Verify that the CUPS subscription operations work.
3*5e7646d2SAndroid Build Coastguard Worker#
4*5e7646d2SAndroid Build Coastguard Worker# Copyright © 2007-2019 by Apple Inc.
5*5e7646d2SAndroid Build Coastguard Worker# Copyright © 2001-2006 by Easy Software Products. All rights reserved.
6*5e7646d2SAndroid Build Coastguard Worker#
7*5e7646d2SAndroid Build Coastguard Worker# Licensed under Apache License v2.0.  See the file "LICENSE" for more
8*5e7646d2SAndroid Build Coastguard Worker# information.
9*5e7646d2SAndroid Build Coastguard Worker#
10*5e7646d2SAndroid Build Coastguard Worker{
11*5e7646d2SAndroid Build Coastguard Worker	# The name of the test...
12*5e7646d2SAndroid Build Coastguard Worker	NAME "Add Printer Subscription w/Lease"
13*5e7646d2SAndroid Build Coastguard Worker
14*5e7646d2SAndroid Build Coastguard Worker	# The operation to use
15*5e7646d2SAndroid Build Coastguard Worker	OPERATION Create-Printer-Subscription
16*5e7646d2SAndroid Build Coastguard Worker	RESOURCE /
17*5e7646d2SAndroid Build Coastguard Worker
18*5e7646d2SAndroid Build Coastguard Worker	# The attributes to send
19*5e7646d2SAndroid Build Coastguard Worker	GROUP operation
20*5e7646d2SAndroid Build Coastguard Worker	ATTR charset attributes-charset utf-8
21*5e7646d2SAndroid Build Coastguard Worker	ATTR language attributes-natural-language en
22*5e7646d2SAndroid Build Coastguard Worker	ATTR uri printer-uri $scheme://$hostname:$port/printers/Test1
23*5e7646d2SAndroid Build Coastguard Worker	ATTR name requesting-user-name $user
24*5e7646d2SAndroid Build Coastguard Worker
25*5e7646d2SAndroid Build Coastguard Worker        GROUP subscription
26*5e7646d2SAndroid Build Coastguard Worker	ATTR uri notify-recipient-uri testnotify://
27*5e7646d2SAndroid Build Coastguard Worker	ATTR keyword notify-events printer-state-changed
28*5e7646d2SAndroid Build Coastguard Worker	ATTR integer notify-lease-duration 5
29*5e7646d2SAndroid Build Coastguard Worker
30*5e7646d2SAndroid Build Coastguard Worker	# What statuses are OK?
31*5e7646d2SAndroid Build Coastguard Worker	STATUS successful-ok
32*5e7646d2SAndroid Build Coastguard Worker
33*5e7646d2SAndroid Build Coastguard Worker	# What attributes do we expect?
34*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-charset
35*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-natural-language
36*5e7646d2SAndroid Build Coastguard Worker	EXPECT notify-subscription-id
37*5e7646d2SAndroid Build Coastguard Worker	DISPLAY notify-subscription-id
38*5e7646d2SAndroid Build Coastguard Worker}
39*5e7646d2SAndroid Build Coastguard Worker{
40*5e7646d2SAndroid Build Coastguard Worker	# The name of the test...
41*5e7646d2SAndroid Build Coastguard Worker	NAME "Verify Subscription Expiration"
42*5e7646d2SAndroid Build Coastguard Worker
43*5e7646d2SAndroid Build Coastguard Worker	# Delay test for 7 seconds to allow lease to expire...
44*5e7646d2SAndroid Build Coastguard Worker	DELAY 7
45*5e7646d2SAndroid Build Coastguard Worker
46*5e7646d2SAndroid Build Coastguard Worker	# The operation to use
47*5e7646d2SAndroid Build Coastguard Worker	OPERATION Get-Subscription-Attributes
48*5e7646d2SAndroid Build Coastguard Worker	RESOURCE /
49*5e7646d2SAndroid Build Coastguard Worker
50*5e7646d2SAndroid Build Coastguard Worker	# The attributes to send
51*5e7646d2SAndroid Build Coastguard Worker	GROUP operation
52*5e7646d2SAndroid Build Coastguard Worker	ATTR charset attributes-charset utf-8
53*5e7646d2SAndroid Build Coastguard Worker	ATTR language attributes-natural-language en
54*5e7646d2SAndroid Build Coastguard Worker	ATTR uri printer-uri $scheme://$hostname:$port/printers/Test1
55*5e7646d2SAndroid Build Coastguard Worker	ATTR integer notify-subscription-id $notify-subscription-id
56*5e7646d2SAndroid Build Coastguard Worker	ATTR name requesting-user-name $user
57*5e7646d2SAndroid Build Coastguard Worker
58*5e7646d2SAndroid Build Coastguard Worker	# What statuses are OK?
59*5e7646d2SAndroid Build Coastguard Worker	STATUS client-error-not-found
60*5e7646d2SAndroid Build Coastguard Worker
61*5e7646d2SAndroid Build Coastguard Worker	# What attributes do we expect?
62*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-charset
63*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-natural-language
64*5e7646d2SAndroid Build Coastguard Worker}
65*5e7646d2SAndroid Build Coastguard Worker{
66*5e7646d2SAndroid Build Coastguard Worker	# The name of the test...
67*5e7646d2SAndroid Build Coastguard Worker	NAME "Add 2 Printer Subscriptions w/Lease"
68*5e7646d2SAndroid Build Coastguard Worker
69*5e7646d2SAndroid Build Coastguard Worker	# The operation to use
70*5e7646d2SAndroid Build Coastguard Worker	OPERATION Create-Printer-Subscription
71*5e7646d2SAndroid Build Coastguard Worker	RESOURCE /
72*5e7646d2SAndroid Build Coastguard Worker
73*5e7646d2SAndroid Build Coastguard Worker	# The attributes to send
74*5e7646d2SAndroid Build Coastguard Worker	GROUP operation
75*5e7646d2SAndroid Build Coastguard Worker	ATTR charset attributes-charset utf-8
76*5e7646d2SAndroid Build Coastguard Worker	ATTR language attributes-natural-language en
77*5e7646d2SAndroid Build Coastguard Worker	ATTR uri printer-uri $scheme://$hostname:$port/printers/Test1
78*5e7646d2SAndroid Build Coastguard Worker	ATTR name requesting-user-name $user
79*5e7646d2SAndroid Build Coastguard Worker
80*5e7646d2SAndroid Build Coastguard Worker        GROUP subscription
81*5e7646d2SAndroid Build Coastguard Worker	ATTR uri notify-recipient-uri testnotify://
82*5e7646d2SAndroid Build Coastguard Worker	ATTR keyword notify-events printer-state-changed
83*5e7646d2SAndroid Build Coastguard Worker	ATTR integer notify-lease-duration 5
84*5e7646d2SAndroid Build Coastguard Worker
85*5e7646d2SAndroid Build Coastguard Worker        GROUP subscription
86*5e7646d2SAndroid Build Coastguard Worker	ATTR uri notify-recipient-uri testnotify://
87*5e7646d2SAndroid Build Coastguard Worker	ATTR keyword notify-events printer-config-changed
88*5e7646d2SAndroid Build Coastguard Worker	ATTR integer notify-lease-duration 5
89*5e7646d2SAndroid Build Coastguard Worker
90*5e7646d2SAndroid Build Coastguard Worker	# What statuses are OK?
91*5e7646d2SAndroid Build Coastguard Worker	STATUS successful-ok
92*5e7646d2SAndroid Build Coastguard Worker
93*5e7646d2SAndroid Build Coastguard Worker	# What attributes do we expect?
94*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-charset
95*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-natural-language
96*5e7646d2SAndroid Build Coastguard Worker	EXPECT notify-subscription-id
97*5e7646d2SAndroid Build Coastguard Worker	DISPLAY notify-subscription-id
98*5e7646d2SAndroid Build Coastguard Worker}
99*5e7646d2SAndroid Build Coastguard Worker{
100*5e7646d2SAndroid Build Coastguard Worker	# The name of the test...
101*5e7646d2SAndroid Build Coastguard Worker	NAME "List Printer Subscriptions"
102*5e7646d2SAndroid Build Coastguard Worker
103*5e7646d2SAndroid Build Coastguard Worker	# The operation to use
104*5e7646d2SAndroid Build Coastguard Worker	OPERATION Get-Subscriptions
105*5e7646d2SAndroid Build Coastguard Worker	RESOURCE /
106*5e7646d2SAndroid Build Coastguard Worker
107*5e7646d2SAndroid Build Coastguard Worker	# The attributes to send
108*5e7646d2SAndroid Build Coastguard Worker	GROUP operation
109*5e7646d2SAndroid Build Coastguard Worker	ATTR charset attributes-charset utf-8
110*5e7646d2SAndroid Build Coastguard Worker	ATTR language attributes-natural-language en
111*5e7646d2SAndroid Build Coastguard Worker	ATTR uri printer-uri $scheme://$hostname:$port/printers/Test1
112*5e7646d2SAndroid Build Coastguard Worker	ATTR name requesting-user-name $user
113*5e7646d2SAndroid Build Coastguard Worker
114*5e7646d2SAndroid Build Coastguard Worker	# What statuses are OK?
115*5e7646d2SAndroid Build Coastguard Worker	STATUS successful-ok
116*5e7646d2SAndroid Build Coastguard Worker
117*5e7646d2SAndroid Build Coastguard Worker	# What attributes do we expect?
118*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-charset
119*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-natural-language
120*5e7646d2SAndroid Build Coastguard Worker	EXPECT notify-subscription-id
121*5e7646d2SAndroid Build Coastguard Worker	DISPLAY notify-subscription-id
122*5e7646d2SAndroid Build Coastguard Worker	EXPECT notify-printer-uri
123*5e7646d2SAndroid Build Coastguard Worker	DISPLAY notify-printer-uri
124*5e7646d2SAndroid Build Coastguard Worker	EXPECT notify-events
125*5e7646d2SAndroid Build Coastguard Worker	DISPLAY notify-events
126*5e7646d2SAndroid Build Coastguard Worker}
127*5e7646d2SAndroid Build Coastguard Worker{
128*5e7646d2SAndroid Build Coastguard Worker	# The name of the test...
129*5e7646d2SAndroid Build Coastguard Worker	NAME "Check MaxSubscriptions limits"
130*5e7646d2SAndroid Build Coastguard Worker
131*5e7646d2SAndroid Build Coastguard Worker	# The operation to use
132*5e7646d2SAndroid Build Coastguard Worker	OPERATION Create-Printer-Subscription
133*5e7646d2SAndroid Build Coastguard Worker	RESOURCE /
134*5e7646d2SAndroid Build Coastguard Worker
135*5e7646d2SAndroid Build Coastguard Worker	# The attributes to send
136*5e7646d2SAndroid Build Coastguard Worker	GROUP operation
137*5e7646d2SAndroid Build Coastguard Worker	ATTR charset attributes-charset utf-8
138*5e7646d2SAndroid Build Coastguard Worker	ATTR language attributes-natural-language en
139*5e7646d2SAndroid Build Coastguard Worker	ATTR uri printer-uri $scheme://$hostname:$port/printers/Test1
140*5e7646d2SAndroid Build Coastguard Worker	ATTR name requesting-user-name $user
141*5e7646d2SAndroid Build Coastguard Worker
142*5e7646d2SAndroid Build Coastguard Worker        GROUP subscription
143*5e7646d2SAndroid Build Coastguard Worker	ATTR uri notify-recipient-uri testnotify://
144*5e7646d2SAndroid Build Coastguard Worker	ATTR keyword notify-events printer-state-changed
145*5e7646d2SAndroid Build Coastguard Worker	ATTR integer notify-lease-duration 5
146*5e7646d2SAndroid Build Coastguard Worker
147*5e7646d2SAndroid Build Coastguard Worker	# What statuses are OK?
148*5e7646d2SAndroid Build Coastguard Worker	STATUS client-error-too-many-subscriptions
149*5e7646d2SAndroid Build Coastguard Worker
150*5e7646d2SAndroid Build Coastguard Worker	# What attributes do we expect?
151*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-charset
152*5e7646d2SAndroid Build Coastguard Worker	EXPECT attributes-natural-language
153*5e7646d2SAndroid Build Coastguard Worker}
154