@@ -248,6 +248,7 @@ def test_modify_push_config_wo_endpoint(self):
248
248
249
249
def test_pull_wo_return_immediately_wo_max_messages (self ):
250
250
import base64
251
+ from gcloud .pubsub .message import Message
251
252
PROJECT = 'PROJECT'
252
253
SUB_NAME = 'sub_name'
253
254
SUB_PATH = 'projects/%s/subscriptions/%s' % (PROJECT , SUB_NAME )
@@ -256,15 +257,19 @@ def test_pull_wo_return_immediately_wo_max_messages(self):
256
257
MSG_ID = 'BEADCAFE'
257
258
PAYLOAD = b'This is the message text'
258
259
B64 = base64 .b64encode (PAYLOAD )
259
- MESSAGE = {'messageId' : MSG_ID , 'data' : B64 , 'attributes' : {} }
260
+ MESSAGE = {'messageId' : MSG_ID , 'data' : B64 }
260
261
REC_MESSAGE = {'ackId' : ACK_ID , 'message' : MESSAGE }
261
262
conn = _Connection ({'receivedMessages' : [REC_MESSAGE ]})
262
263
topic = _Topic (TOPIC_NAME , project = PROJECT , connection = conn )
263
264
subscription = self ._makeOne (SUB_NAME , topic )
264
265
pulled = subscription .pull ()
265
266
self .assertEqual (len (pulled ), 1 )
266
- self .assertEqual (pulled [0 ]['ackId' ], ACK_ID )
267
- self .assertEqual (pulled [0 ]['message' ], MESSAGE )
267
+ ack_id , message = pulled [0 ]
268
+ self .assertEqual (ack_id , ACK_ID )
269
+ self .assertTrue (isinstance (message , Message ))
270
+ self .assertEqual (message .data , PAYLOAD )
271
+ self .assertEqual (message .message_id , MSG_ID )
272
+ self .assertEqual (message .attrs , {})
268
273
self .assertEqual (len (conn ._requested ), 1 )
269
274
req = conn ._requested [0 ]
270
275
self .assertEqual (req ['method' ], 'POST' )
@@ -274,6 +279,7 @@ def test_pull_wo_return_immediately_wo_max_messages(self):
274
279
275
280
def test_pull_w_return_immediately_w_max_messages (self ):
276
281
import base64
282
+ from gcloud .pubsub .message import Message
277
283
PROJECT = 'PROJECT'
278
284
SUB_NAME = 'sub_name'
279
285
SUB_PATH = 'projects/%s/subscriptions/%s' % (PROJECT , SUB_NAME )
@@ -282,15 +288,19 @@ def test_pull_w_return_immediately_w_max_messages(self):
282
288
MSG_ID = 'BEADCAFE'
283
289
PAYLOAD = b'This is the message text'
284
290
B64 = base64 .b64encode (PAYLOAD )
285
- MESSAGE = {'messageId' : MSG_ID , 'data' : B64 , 'attributes' : {}}
291
+ MESSAGE = {'messageId' : MSG_ID , 'data' : B64 , 'attributes' : {'a' : 'b' }}
286
292
REC_MESSAGE = {'ackId' : ACK_ID , 'message' : MESSAGE }
287
293
conn = _Connection ({'receivedMessages' : [REC_MESSAGE ]})
288
294
topic = _Topic (TOPIC_NAME , project = PROJECT , connection = conn )
289
295
subscription = self ._makeOne (SUB_NAME , topic )
290
296
pulled = subscription .pull (return_immediately = True , max_messages = 3 )
291
297
self .assertEqual (len (pulled ), 1 )
292
- self .assertEqual (pulled [0 ]['ackId' ], ACK_ID )
293
- self .assertEqual (pulled [0 ]['message' ], MESSAGE )
298
+ ack_id , message = pulled [0 ]
299
+ self .assertEqual (ack_id , ACK_ID )
300
+ self .assertTrue (isinstance (message , Message ))
301
+ self .assertEqual (message .data , PAYLOAD )
302
+ self .assertEqual (message .message_id , MSG_ID )
303
+ self .assertEqual (message .attrs , {'a' : 'b' })
294
304
self .assertEqual (len (conn ._requested ), 1 )
295
305
req = conn ._requested [0 ]
296
306
self .assertEqual (req ['method' ], 'POST' )
0 commit comments