def test_create_sink_pubsub_topic(self): from google.cloud.iam import OWNER_ROLE from google.cloud.pubsub import client as pubsub_client SINK_NAME = 'test-create-sink-topic%s' % (_RESOURCE_ID,) TOPIC_NAME = 'logging-test-sink%s' % (_RESOURCE_ID,) # Create the destination topic, and set up the IAM policy to allow # Stackdriver Logging to write into it. pubsub_client = pubsub_client.Client() topic = pubsub_client.topic(TOPIC_NAME) topic.create() self.to_delete.append(topic) policy = topic.get_iam_policy() new_owners = set([policy.group('*****@*****.**')]) new_owners.update(policy.owners) policy[OWNER_ROLE] = new_owners topic.set_iam_policy(policy) TOPIC_URI = 'pubsub.googleapis.com/%s' % (topic.full_name,) sink = Config.CLIENT.sink(SINK_NAME, DEFAULT_FILTER, TOPIC_URI) self.assertFalse(sink.exists()) sink.create() self.to_delete.append(sink) self.assertTrue(sink.exists())
def test_create_sink_pubsub_topic(self): from google.cloud.pubsub import client as pubsub_client SINK_NAME = 'test-create-sink-topic%s' % (_RESOURCE_ID,) TOPIC_NAME = 'logging-test-sink%s' % (_RESOURCE_ID,) # Create the destination topic, and set up the IAM policy to allow # Stackdriver Logging to write into it. pubsub_client = pubsub_client.Client() topic = pubsub_client.topic(TOPIC_NAME) topic.create() self.to_delete.append(topic) policy = topic.get_iam_policy() policy.owners.add(policy.group('*****@*****.**')) topic.set_iam_policy(policy) TOPIC_URI = 'pubsub.googleapis.com/%s' % (topic.full_name,) sink = Config.CLIENT.sink(SINK_NAME, DEFAULT_FILTER, TOPIC_URI) self.assertFalse(sink.exists()) sink.create() self.to_delete.append(sink) self.assertTrue(sink.exists())