CreateSubnet: Added VPC ID validation.

This commit is contained in:
Shawn Falkner-Horine 2014-08-26 14:04:34 -07:00
parent c89e7c6de1
commit 0ecae450a1
4 changed files with 12 additions and 0 deletions

BIN
moto/ec2/.models.py.swp Normal file

Binary file not shown.

View File

@ -901,6 +901,7 @@ class SubnetBackend(object):
def create_subnet(self, vpc_id, cidr_block):
subnet_id = random_subnet_id()
subnet = Subnet(subnet_id, vpc_id, cidr_block)
vpc = self.get_vpc(vpc_id) # Validate VPC exists
self.subnets[subnet_id] = subnet
return subnet

Binary file not shown.

View File

@ -30,6 +30,17 @@ def test_subnets():
cm.exception.request_id.should_not.be.none
@mock_ec2
def test_subnet_create_vpc_validation():
conn = boto.connect_vpc('the_key', 'the_secret')
with assert_raises(EC2ResponseError) as cm:
conn.create_subnet("vpc-abcd1234", "10.0.0.0/18")
cm.exception.code.should.equal('InvalidVpcID.NotFound')
cm.exception.status.should.equal(400)
cm.exception.request_id.should_not.be.none
@mock_ec2
def test_subnet_tagging():
conn = boto.connect_vpc('the_key', 'the_secret')