Kaydet (Commit) 75678658 authored tarafından R David Murray's avatar R David Murray

#20815: small readability improvements in ipaddress tests.

Patch by Michel Albert.  We don't normally do patches that just tweak
whitespace, but ipaddress is relatively new and the package maintainers
approved the patch.
üst 817905b2
......@@ -10,6 +10,7 @@ import contextlib
import operator
import ipaddress
class BaseTestCase(unittest.TestCase):
# One big change in ipaddress over the original ipaddr module is
# error reporting that tries to assume users *don't know the rules*
......@@ -52,17 +53,18 @@ class BaseTestCase(unittest.TestCase):
def assertAddressError(self, details, *args):
"""Ensure a clean AddressValueError"""
return self.assertCleanError(ipaddress.AddressValueError,
details, *args)
details, *args)
def assertNetmaskError(self, details, *args):
"""Ensure a clean NetmaskValueError"""
return self.assertCleanError(ipaddress.NetmaskValueError,
details, *args)
details, *args)
def assertInstancesEqual(self, lhs, rhs):
"""Check constructor arguments produce equivalent instances"""
self.assertEqual(self.factory(lhs), self.factory(rhs))
class CommonTestMixin:
def test_empty_address(self):
......@@ -115,6 +117,7 @@ class CommonTestMixin_v4(CommonTestMixin):
assertBadLength(3)
assertBadLength(5)
class CommonTestMixin_v6(CommonTestMixin):
def test_leading_zeros(self):
......@@ -195,7 +198,7 @@ class AddressTestCase_v4(BaseTestCase, CommonTestMixin_v4):
def test_empty_octet(self):
def assertBadOctet(addr):
with self.assertAddressError("Empty octet not permitted in %r",
addr):
addr):
ipaddress.IPv4Address(addr)
assertBadOctet("42..42.42")
......@@ -443,6 +446,7 @@ class NetmaskTestMixin_v4(CommonTestMixin_v4):
class InterfaceTestCase_v4(BaseTestCase, NetmaskTestMixin_v4):
factory = ipaddress.IPv4Interface
class NetworkTestCase_v4(BaseTestCase, NetmaskTestMixin_v4):
factory = ipaddress.IPv4Network
......@@ -496,9 +500,11 @@ class NetmaskTestMixin_v6(CommonTestMixin_v6):
assertBadNetmask("::1", "pudding")
assertBadNetmask("::", "::")
class InterfaceTestCase_v6(BaseTestCase, NetmaskTestMixin_v6):
factory = ipaddress.IPv6Interface
class NetworkTestCase_v6(BaseTestCase, NetmaskTestMixin_v6):
factory = ipaddress.IPv6Network
......@@ -608,7 +614,6 @@ class ComparisonTests(unittest.TestCase):
self.assertRaises(TypeError, v6net.__gt__, v4net)
class IpaddrUnitTest(unittest.TestCase):
def setUp(self):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment