def test_point_range_query_v4(self): r = ip_to_range("10.3.0.0") self.assertEqual(r, self.r_v4) sreg = StaticReg.objects.create(label="foo", domain=self.domain, ip_str="10.3.0.0", ip_type="4", system=self.s) self.assertEqual(sreg.range, self.r_v4)
def test_point_range_query_v6(self): r = ip_to_range("1234:1234:1234:1::1") self.assertEqual(r, self.r_v6) sreg = StaticReg.objects.create(label="foo", domain=self.domain, ip_str="1234:1234:1234:1::1", ip_type='6', system=self.s) self.assertEqual(sreg.range, self.r_v6) sreg.ip_str = "1234:1234:1234:1::2" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, self.r_v6) sreg.ip_str = "1334::" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, None) sreg.ip_str = "1234:1234:1234:1::2" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, self.r_v6)
def range(self): if hasattr(self, '_memoize_ip_str'): if self._memoize_ip_str == self.ip_str: return self._memoize_range from core.range.utils import ip_to_range self._memoize_ip_str = self.ip_str self._memoize_range = ip_to_range(self.ip_str) return self._memoize_range
def test_point_range_query_v4(self): r = ip_to_range("10.3.0.0") self.assertEqual(r, self.r_v4) sreg = StaticReg.objects.create(label="foo", domain=self.domain, ip_str="10.3.0.0", ip_type='4', system=self.s) self.assertEqual(sreg.range, self.r_v4)
def test_point_range_query_v6(self): r = ip_to_range("1234:1234:1234:1::1") self.assertEqual(r, self.r_v6) sreg = StaticReg.objects.create( label="foo", domain=self.domain, ip_str="1234:1234:1234:1::1", ip_type="6", system=self.s ) self.assertEqual(sreg.range, self.r_v6) sreg.ip_str = "1234:1234:1234:1::2" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, self.r_v6) sreg.ip_str = "1334::" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, None) sreg.ip_str = "1234:1234:1234:1::2" sreg.full_clean() sreg.save() self.assertEqual(sreg.range, self.r_v6)
def range(self): """ Allow easy lookup of an SREG's range object if it exists """ from core.range.utils import ip_to_range return ip_to_range(self.ip_str)