Ejemplo n.º 1
0
 def parse_ip(self, ip_str):
     """
     Either return a valid IP or raise an exception/log a warninging
     """
     try:
         if is_private_ipv4(ip_str):
             logging.debug("{}: private IP".format(ip_str))
             raise IPValidationException("{}: {}".format(
                 ip_str, "private IP"))
     # TODO: note we throw away v6 for now! MUST fix post milestone 2.
     except ValueError:
         logging.debug("{}: invalid IP".format(ip_str))
         raise IPValidationException("{}: {}".format(ip_str, "invalid IP"))
     except:
         raise
     # return str(ip_obj)
     return ip_str
def test_valid_192_168():
    assert is_private_ipv4("192.168.3.6")
def test_valid_public():
    assert not is_private_ipv4("1.1.1.1")
def test_invalid_v4():
    with pytest.raises(ValueError):
        assert is_private_ipv4("1.1.1.a")
def test_valid_v6():
    with pytest.raises(ValueError):
        assert is_private_ipv4("2001:db8:85a3:0:0:8a2e:370:7334")
def test_valid_10():
    assert is_private_ipv4("10.5.2.3")
def test_valid_172():
    assert is_private_ipv4("172.16.8.2")