diff --git a/.travis.yml b/.travis.yml index f50c337e9..d62426155 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,6 +4,7 @@ python: - 2.7 env: matrix: + - BOTO_VERSION=2.34.0 - BOTO_VERSION=2.32.1 - BOTO_VERSION=2.25.0 - BOTO_VERSION=2.7 diff --git a/moto/ec2/responses/route_tables.py b/moto/ec2/responses/route_tables.py index 4d73bc917..7b5306fa4 100644 --- a/moto/ec2/responses/route_tables.py +++ b/moto/ec2/responses/route_tables.py @@ -155,6 +155,7 @@ DESCRIBE_ROUTE_TABLES_RESPONSE = """ active {% endif %} {% if route.vpc_pcx %} + {{ route.vpc_pcx.id }} CreateRoute blackhole {% endif %} diff --git a/tests/test_ec2/test_route_tables.py b/tests/test_ec2/test_route_tables.py index 58b65bbb1..c6c199128 100644 --- a/tests/test_ec2/test_route_tables.py +++ b/tests/test_ec2/test_route_tables.py @@ -392,28 +392,29 @@ def test_routes_not_supported(): conn.replace_route.when.called_with(main_route_table.id, ROUTE_CIDR, interface_id='eni-1234abcd').should.throw(NotImplementedError) -#@requires_boto_gte("2.32.2") -#@mock_ec2 -#def test_routes_vpc_peering_connection(): -# conn = boto.connect_vpc('the_key', 'the_secret') -# vpc = conn.create_vpc("10.0.0.0/16") -# main_route_table = conn.get_all_route_tables(filters={'association.main':'true','vpc-id':vpc.id})[0] -# local_route = main_route_table.routes[0] -# ROUTE_CIDR = "10.0.0.4/24" -# -# peer_vpc = conn.create_vpc("11.0.0.0/16") -# vpc_pcx = conn.create_vpc_peering_connection(vpc.id, peer_vpc.id) -# -# conn.create_route(main_route_table.id, ROUTE_CIDR, vpc_peering_connection_id=vpc_pcx.id) -# -# # Refresh route table -# main_route_table = conn.get_all_route_tables(main_route_table.id)[0] -# new_routes = [route for route in main_route_table.routes if route.destination_cidr_block != vpc.cidr_block] -# new_routes.should.have.length_of(1) -# -# new_route = new_routes[0] -# new_route.gateway_id.should.be.none -# new_route.instance_id.should.be.none -# new_route.state.should.equal('blackhole') -# new_route.destination_cidr_block.should.equal(ROUTE_CIDR) +@requires_boto_gte("2.34.0") +@mock_ec2 +def test_routes_vpc_peering_connection(): + conn = boto.connect_vpc('the_key', 'the_secret') + vpc = conn.create_vpc("10.0.0.0/16") + main_route_table = conn.get_all_route_tables(filters={'association.main':'true','vpc-id':vpc.id})[0] + local_route = main_route_table.routes[0] + ROUTE_CIDR = "10.0.0.4/24" + + peer_vpc = conn.create_vpc("11.0.0.0/16") + vpc_pcx = conn.create_vpc_peering_connection(vpc.id, peer_vpc.id) + + conn.create_route(main_route_table.id, ROUTE_CIDR, vpc_peering_connection_id=vpc_pcx.id) + + # Refresh route table + main_route_table = conn.get_all_route_tables(main_route_table.id)[0] + new_routes = [route for route in main_route_table.routes if route.destination_cidr_block != vpc.cidr_block] + new_routes.should.have.length_of(1) + + new_route = new_routes[0] + new_route.gateway_id.should.be.none + new_route.instance_id.should.be.none + new_route.vpc_peering_connection_id.should.equal(vpc_pcx.id) + new_route.state.should.equal('blackhole') + new_route.destination_cidr_block.should.equal(ROUTE_CIDR)