Example #1
0
def test_client(fixture_name, fixture, service_name, environment):
    endpoint_url = fixture.get("endpoint_url", None)
    env = {}
    if endpoint_url:
        env["AWS_ENDPOINTS"] = service_name + "=" + endpoint_url
    with utils.set_env(env):
        client = _boto3.client(service_name, **fixture)
        if endpoint_url:
            assert client.meta.endpoint_url == endpoint_url
Example #2
0
def get_queue_arn(queue_url):
    return get_nested(
        call(
            _boto3.client("sqs").get_queue_attributes,
            QueueUrl=queue_url,
            AttributeNames=["QueueArn"],
        ),
        ["Attributes", "QueueArn"],
    )
Example #3
0
def batch_put_records(stream_name, records, batch_size=500, **kwargs):
    """Put records into a kinesis stream, batched by the maximum of 500."""
    client = _boto3.client("kinesis")
    responses = []
    for b in batch(records, batch_size):
        responses.append(
            call(
                client.put_records,
                StreamName=stream_name,
                Records=[build(record) for record in b],
            )
        )
    return tuple(responses)
Example #4
0
def batch_put_messages(queue_url,
                       messages,
                       batch_size=10,
                       message_group_id=None,
                       **kwargs):
    """Put messages into a sqs queue, batched by the maximum of 10."""
    assert batch_size <= 10  # send_message_batch will fail otherwise
    client = _boto3.client("sqs")
    responses = []
    for b in batch(messages, batch_size):
        responses.append(
            call(
                client.send_message_batch,
                QueueUrl=queue_url,
                Entries=[build(message, message_group_id) for message in b],
            ))
    return tuple(responses)
Example #5
0
def test_client_no_env(fixture_name, fixture, service_name):
    endpoint_url = fixture.get("endpoint_url", None)
    client = _boto3.client(service_name, **fixture)
    if endpoint_url:
        assert client.meta.endpoint_url == endpoint_url
Example #6
0
def batch_delete_messages(queue_url, entries):
    return call(_boto3.client("sqs").batch_delete_messages,
                QueueUrl=queue_url,
                Entries=entries)
Example #7
0
def get_queue_url(queue_name):
    return call(_boto3.client("sqs").get_queue_url,
                QueueName=queue_name)["QueueUrl"]