@@ -134,16 +134,40 @@ def test_from_api_repr_w_topics_w_topic_match(self):
134134
135135 def test_full_name_and_path (self ):
136136 PROJECT = 'PROJECT'
137- SUB_NAME = 'sub_name'
138- SUB_FULL = 'projects/%s/subscriptions/%s' % (PROJECT , SUB_NAME )
137+ SUB_FULL = 'projects/%s/subscriptions/%s' % (PROJECT , self .SUB_NAME )
139138 SUB_PATH = '/%s' % (SUB_FULL ,)
140139 TOPIC_NAME = 'topic_name'
141140 CLIENT = _Client (project = PROJECT )
142141 topic = _Topic (TOPIC_NAME , client = CLIENT )
143- subscription = self ._makeOne (SUB_NAME , topic )
142+ subscription = self ._makeOne (self . SUB_NAME , topic )
144143 self .assertEqual (subscription .full_name , SUB_FULL )
145144 self .assertEqual (subscription .path , SUB_PATH )
146145
146+ def test_autoack_defaults (self ):
147+ from gcloud .pubsub .subscription import AutoAck
148+ client = _Client (project = self .PROJECT )
149+ topic = _Topic (self .TOPIC_NAME , client = client )
150+ subscription = self ._makeOne (self .SUB_NAME , topic )
151+ auto_ack = subscription .auto_ack ()
152+ self .assertTrue (isinstance (auto_ack , AutoAck ))
153+ self .assertTrue (auto_ack ._subscription is subscription )
154+ self .assertEqual (auto_ack ._return_immediately , False )
155+ self .assertEqual (auto_ack ._max_messages , 1 )
156+ self .assertTrue (auto_ack ._client is None )
157+
158+ def test_autoack_explicit (self ):
159+ from gcloud .pubsub .subscription import AutoAck
160+ client1 = _Client (project = self .PROJECT )
161+ client2 = _Client (project = self .PROJECT )
162+ topic = _Topic (self .TOPIC_NAME , client = client1 )
163+ subscription = self ._makeOne (self .SUB_NAME , topic )
164+ auto_ack = subscription .auto_ack (True , 10 , client2 )
165+ self .assertTrue (isinstance (auto_ack , AutoAck ))
166+ self .assertTrue (auto_ack ._subscription is subscription )
167+ self .assertEqual (auto_ack ._return_immediately , True )
168+ self .assertEqual (auto_ack ._max_messages , 10 )
169+ self .assertTrue (auto_ack ._client is client2 )
170+
147171 def test_create_pull_wo_ack_deadline_w_bound_client (self ):
148172 RESPONSE = {
149173 'topic' : self .TOPIC_PATH ,
0 commit comments