From f211c1d00fe253087c9b0a762addbf5099d1d6f9 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Thu, 28 Apr 2016 10:29:37 -0400 Subject: [PATCH 1/4] Removed unused (and long-timeout) snippet. --- docs/pubsub_snippets.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/docs/pubsub_snippets.py b/docs/pubsub_snippets.py index 6d932f56fe06..520c1e79ba36 100644 --- a/docs/pubsub_snippets.py +++ b/docs/pubsub_snippets.py @@ -311,11 +311,6 @@ def subscription_pull(client, to_delete): subscription.create() to_delete.append(subscription) - # [START subscription_pull_none_pending] - pulled = subscription.pull(max_messages=1) - # [END subscription_pull_none_pending] - assert len(pulled) == 0 - # [START subscription_pull_return_immediately] pulled = subscription.pull(return_immediately=True) # [END subscription_pull_return_immediately] From dd38d6624465b46567b0ea1ed70f7262af891630 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Thu, 28 Apr 2016 10:40:57 -0400 Subject: [PATCH 2/4] Harden against empty 'projects.subscriptions.pull' responses. --- gcloud/pubsub/connection.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcloud/pubsub/connection.py b/gcloud/pubsub/connection.py index 01024b61bf53..196d58cea7a6 100644 --- a/gcloud/pubsub/connection.py +++ b/gcloud/pubsub/connection.py @@ -416,7 +416,7 @@ def subscription_pull(self, subscription_path, return_immediately=False, 'maxMessages': max_messages, } response = conn.api_request(method='POST', path=path, data=data) - return response['receivedMessages'] + return response.get('receivedMessages', ()) def subscription_acknowledge(self, subscription_path, ack_ids): """API call: acknowledge retrieved messages for the subscription. From f5c7c4aabe8aae96e13e85d565102c4fd2dee039 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Thu, 28 Apr 2016 10:41:48 -0400 Subject: [PATCH 3/4] Harden snippets-under-test against eventual consistency. --- docs/pubsub_snippets.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/pubsub_snippets.py b/docs/pubsub_snippets.py index 520c1e79ba36..f4d97cca3574 100644 --- a/docs/pubsub_snippets.py +++ b/docs/pubsub_snippets.py @@ -314,16 +314,18 @@ def subscription_pull(client, to_delete): # [START subscription_pull_return_immediately] pulled = subscription.pull(return_immediately=True) # [END subscription_pull_return_immediately] - assert len(pulled) == 0 + assert len(pulled) == 0, "unexpeccted message" topic.publish(PAYLOAD1) topic.publish(PAYLOAD2, extra=EXTRA) + time.sleep(1) # eventually-consistent + # [START subscription_pull] pulled = subscription.pull(max_messages=2) # [END subscription_pull] - assert len(pulled) == 2 + assert len(pulled) == 2, "eventual consistency" # [START subscription_modify_ack_deadline] for ack_id, _ in pulled: From e8709be557ac81326050eaba5e7eb1581a56b135 Mon Sep 17 00:00:00 2001 From: Tres Seaver Date: Thu, 28 Apr 2016 11:18:25 -0400 Subject: [PATCH 4/4] Typo in assert message. Addresses: https://github.com/GoogleCloudPlatform/gcloud-python/pull/1765#discussion_r61442999. --- docs/pubsub_snippets.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pubsub_snippets.py b/docs/pubsub_snippets.py index f4d97cca3574..b3eec76f8f22 100644 --- a/docs/pubsub_snippets.py +++ b/docs/pubsub_snippets.py @@ -314,7 +314,7 @@ def subscription_pull(client, to_delete): # [START subscription_pull_return_immediately] pulled = subscription.pull(return_immediately=True) # [END subscription_pull_return_immediately] - assert len(pulled) == 0, "unexpeccted message" + assert len(pulled) == 0, "unexpected message" topic.publish(PAYLOAD1) topic.publish(PAYLOAD2, extra=EXTRA)