From 637b7a53ad3f381d06c06e7625caada3b30ca9de Mon Sep 17 00:00:00 2001 From: Shawn Falkner-Horine Date: Tue, 9 Sep 2014 16:21:44 -0700 Subject: Route Tables: Update describe_route_tables to support additional route types (VPC peering connection, NIC). --- boto/vpc/routetable.py | 6 ++++++ tests/unit/vpc/test_routetable.py | 20 +++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/boto/vpc/routetable.py b/boto/vpc/routetable.py index 7f83717e..21060ee9 100644 --- a/boto/vpc/routetable.py +++ b/boto/vpc/routetable.py @@ -67,6 +67,8 @@ class Route(object): self.destination_cidr_block = None self.gateway_id = None self.instance_id = None + self.interface_id = None + self.vpc_peering_connection_id = None self.state = None def __repr__(self): @@ -82,6 +84,10 @@ class Route(object): self.gateway_id = value elif name == 'instanceId': self.instance_id = value + elif name == 'networkInterfaceId': + self.interface_id = value + elif name == 'vpcPeeringConnectionId': + self.vpc_peering_connection_id = value elif name == 'state': self.state = value diff --git a/tests/unit/vpc/test_routetable.py b/tests/unit/vpc/test_routetable.py index 3518fd74..c90e56c4 100644 --- a/tests/unit/vpc/test_routetable.py +++ b/tests/unit/vpc/test_routetable.py @@ -48,6 +48,18 @@ class TestDescribeRouteTables(AWSMockServiceTestCase): igw-eaad4883 active + + 10.0.0.0/21 + eni-884ec1d1 + blackhole + CreateRoute + + + 11.0.0.0/22 + pcx-efc52b86 + blackhole + CreateRoute + @@ -88,13 +100,19 @@ class TestDescribeRouteTables(AWSMockServiceTestCase): self.assertIsNone(api_response[0].associations[0].subnet_id) self.assertEquals(api_response[0].associations[0].main, True) self.assertEquals(api_response[1].id, 'rtb-f9ad4890') - self.assertEquals(len(api_response[1].routes), 2) + self.assertEquals(len(api_response[1].routes), 4) self.assertEquals(api_response[1].routes[0].destination_cidr_block, '10.0.0.0/22') self.assertEquals(api_response[1].routes[0].gateway_id, 'local') self.assertEquals(api_response[1].routes[0].state, 'active') self.assertEquals(api_response[1].routes[1].destination_cidr_block, '0.0.0.0/0') self.assertEquals(api_response[1].routes[1].gateway_id, 'igw-eaad4883') self.assertEquals(api_response[1].routes[1].state, 'active') + self.assertEquals(api_response[1].routes[2].destination_cidr_block, '10.0.0.0/21') + self.assertEquals(api_response[1].routes[2].interface_id, 'eni-884ec1d1') + self.assertEquals(api_response[1].routes[2].state, 'blackhole') + self.assertEquals(api_response[1].routes[3].destination_cidr_block, '11.0.0.0/22') + self.assertEquals(api_response[1].routes[3].vpc_peering_connection_id, 'pcx-efc52b86') + self.assertEquals(api_response[1].routes[3].state, 'blackhole') self.assertEquals(len(api_response[1].associations), 1) self.assertEquals(api_response[1].associations[0].id, 'rtbassoc-faad4893') self.assertEquals(api_response[1].associations[0].route_table_id, 'rtb-f9ad4890') -- cgit v1.2.1