def _check_for_invalidations(self): if (self.from_port and self.to_port) and self.from_port > self.to_port: raise TerraformComplianceInvalidData('Invalid configuration from_port can not be bigger than to_port. ' '{} > {} {} in {}'.format(self.from_port, self.to_port, self.protocol, self.cidr_blocks)) if self.cidr_blocks is None: raise TerraformComplianceInvalidData('A cidr range must be given.') if isinstance(self.cidr_blocks, list): for cidr in self.cidr_blocks: if check_if_cidr(cidr) is False: raise TerraformComplianceInvalidData('{} is not a valid CIDR.'.format(cidr)) elif isinstance(self.cidr_blocks, str): if check_if_cidr(self.cidr_blocks) is False: raise TerraformComplianceInvalidData('{} is not a valid CIDR.'.format(self.cidr_blocks)) else: raise TerraformComplianceInvalidData('Invalid CIDR Type {} : {}'.format(type(self.cidr_blocks), self.cidr_blocks)) if not self.protocol: raise TerraformComplianceInvalidData('A protocol must be given.')
def test_check_if_cidr_failure(self): self.assertFalse(check_if_cidr('256.0.0.0/8')) self.assertFalse(check_if_cidr('10.256.0.0/16')) self.assertFalse(check_if_cidr('10.0.256.0/24')) self.assertFalse(check_if_cidr('10.0.0.256/32')) self.assertFalse(check_if_cidr('10.0.0.256/33'))
def test_check_if_cidr_success(self): self.assertTrue(check_if_cidr('10.0.0.0/8')) self.assertTrue(check_if_cidr('10.14.0.0/16')) self.assertTrue(check_if_cidr('10.0.0.0/24')) self.assertTrue(check_if_cidr('10.0.0.7/32'))
def test_check_if_cidr_failure(self): self.assertFalse(check_if_cidr(123)) self.assertFalse(check_if_cidr(False)) self.assertFalse(check_if_cidr([])) self.assertFalse(check_if_cidr({}))