def polling_vs_waiters_compliant()

in src/python/detectors/aws_polling_instead_of_waiter/aws_polling_instead_of_waiter.py [0:0]


def polling_vs_waiters_compliant():
    import boto3
    client = boto3.client('kinesis', region_name='us-east-1')
    # Setup the Kinesis with 1 shard.
    stream_name = "tf_kinesis_test_1"
    client.create_stream(StreamName=stream_name, ShardCount=1)
    # Wait until stream exists, default is 10 * 18 seconds.
    # Compliant: uses waiters feature.
    client.get_waiter('stream_exists').wait(StreamName=stream_name)
    for i in range(10):
        data = "D" + str(i)
        client.put_record(
            StreamName=stream_name,
            Data=data,
            PartitionKey="TensorFlow" + str(i)
            )