Add events.list_event_buses

This commit is contained in:
gruebel 2019-11-03 20:42:31 +01:00
commit 831577350d
4 changed files with 95 additions and 7 deletions

View file

@ -213,14 +213,14 @@ def test_put_permission_errors():
client.put_permission.when.called_with(
EventBusName="non-existing",
Action="events:PutEvents",
Principal="762054135200",
Principal="111111111111",
StatementId="test",
).should.throw(ClientError, "Event bus non-existing does not exist.")
client.put_permission.when.called_with(
EventBusName="test-bus",
Action="events:PutPermission",
Principal="762054135200",
Principal="111111111111",
StatementId="test",
).should.throw(
ClientError, "Provided value in parameter 'action' is not supported."
@ -243,7 +243,7 @@ def test_remove_permission_errors():
client.put_permission(
EventBusName="test-bus",
Action="events:PutEvents",
Principal="762054135200",
Principal="111111111111",
StatementId="test",
)
@ -322,7 +322,7 @@ def test_describe_event_bus():
client.put_permission(
EventBusName="test-bus",
Action="events:PutEvents",
Principal="762054135200",
Principal="111111111111",
StatementId="test",
)
@ -339,7 +339,7 @@ def test_describe_event_bus():
{
"Sid": "test",
"Effect": "Allow",
"Principal": {"AWS": "arn:aws:iam::762054135200:root"},
"Principal": {"AWS": "arn:aws:iam::111111111111:root"},
"Action": "events:PutEvents",
"Resource": "arn:aws:events:us-east-1:123456789012:event-bus/test-bus",
}
@ -355,3 +355,63 @@ def test_describe_event_bus_errors():
client.describe_event_bus.when.called_with(Name="non-existing").should.throw(
ClientError, "Event bus non-existing does not exist."
)
@mock_events
def test_list_event_buses():
client = boto3.client("events", "us-east-1")
client.create_event_bus(Name="test-bus-1")
client.put_permission(
EventBusName="test-bus-1",
Action="events:PutEvents",
Principal="111111111111",
StatementId="test",
)
client.create_event_bus(Name="test-bus-2")
client.create_event_bus(Name="other-bus-1")
client.create_event_bus(Name="other-bus-2")
response = client.list_event_buses()
response["EventBuses"].should.have.length_of(5)
sorted(response["EventBuses"], key=lambda i: i["Name"]).should.equal(
[
{
"Name": "default",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/default",
},
{
"Name": "other-bus-1",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/other-bus-1",
},
{
"Name": "other-bus-2",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/other-bus-2",
},
{
"Name": "test-bus-1",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/test-bus-1",
"Policy": '{"Version": "2012-10-17", "Statement": [{"Sid": "test", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111111111111:root"}, "Action": "events:PutEvents", "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/test-bus-1"}]}',
},
{
"Name": "test-bus-2",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/test-bus-2",
},
]
)
response = client.list_event_buses(NamePrefix="other-bus")
response["EventBuses"].should.have.length_of(2)
response["EventBuses"].should.equal(
[
{
"Name": "other-bus-1",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/other-bus-1",
},
{
"Name": "other-bus-2",
"Arn": "arn:aws:events:us-east-1:123456789012:event-bus/other-bus-2",
},
]
)