mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-24 08:25:17 -06:00
Move translation of ValueError to ValidationError into to_python where it belongs
This commit is contained in:
parent
0da4940fe4
commit
1e6a800959
@ -30,7 +30,10 @@ class ExpandableNameField(forms.CharField):
|
|||||||
if not value:
|
if not value:
|
||||||
return ''
|
return ''
|
||||||
if re.search(ALPHANUMERIC_EXPANSION_PATTERN, value):
|
if re.search(ALPHANUMERIC_EXPANSION_PATTERN, value):
|
||||||
return list(expand_alphanumeric_pattern(value))
|
try:
|
||||||
|
return list(expand_alphanumeric_pattern(value))
|
||||||
|
except ValueError as e:
|
||||||
|
raise forms.ValidationError(*e.args)
|
||||||
return [value]
|
return [value]
|
||||||
|
|
||||||
|
|
||||||
|
@ -96,12 +96,7 @@ def expand_alphanumeric_pattern(pattern):
|
|||||||
if not re.search(ALPHANUMERIC_EXPANSION_PATTERN, pattern):
|
if not re.search(ALPHANUMERIC_EXPANSION_PATTERN, pattern):
|
||||||
raise ValueError(f"String {repr(pattern)} contains no valid alphanumeric patterns")
|
raise ValueError(f"String {repr(pattern)} contains no valid alphanumeric patterns")
|
||||||
|
|
||||||
try:
|
yield from expand_alphanumeric_pattern_impl(pattern)
|
||||||
yield from expand_alphanumeric_pattern_impl(pattern)
|
|
||||||
except ValueError as e:
|
|
||||||
# Unit tests expect forms.ValidationError to be thrown if patterns were "valid" at a first glance,
|
|
||||||
# but then turned out to be invalid when looking closer. So we preserve this behaviour here.
|
|
||||||
raise forms.ValidationError(*e.args)
|
|
||||||
|
|
||||||
|
|
||||||
def expand_ipaddress_pattern(string, family):
|
def expand_ipaddress_pattern(string, family):
|
||||||
|
@ -269,19 +269,19 @@ class ExpandAlphanumeric(TestCase):
|
|||||||
sorted(expand_alphanumeric_pattern('r[8--9]a'))
|
sorted(expand_alphanumeric_pattern('r[8--9]a'))
|
||||||
|
|
||||||
def test_invalid_range_alphanumeric(self):
|
def test_invalid_range_alphanumeric(self):
|
||||||
with self.assertRaises(forms.ValidationError):
|
with self.assertRaises(ValueError):
|
||||||
sorted(expand_alphanumeric_pattern('r[9-a]a'))
|
sorted(expand_alphanumeric_pattern('r[9-a]a'))
|
||||||
|
|
||||||
with self.assertRaises(forms.ValidationError):
|
with self.assertRaises(ValueError):
|
||||||
sorted(expand_alphanumeric_pattern('r[a-9]a'))
|
sorted(expand_alphanumeric_pattern('r[a-9]a'))
|
||||||
|
|
||||||
def test_invalid_range_bounds(self):
|
def test_invalid_range_bounds(self):
|
||||||
with self.assertRaises(forms.ValidationError):
|
with self.assertRaises(ValueError):
|
||||||
sorted(expand_alphanumeric_pattern('r[9-8]a'))
|
sorted(expand_alphanumeric_pattern('r[9-8]a'))
|
||||||
sorted(expand_alphanumeric_pattern('r[b-a]a'))
|
sorted(expand_alphanumeric_pattern('r[b-a]a'))
|
||||||
|
|
||||||
def test_invalid_range_len(self):
|
def test_invalid_range_len(self):
|
||||||
with self.assertRaises(forms.ValidationError):
|
with self.assertRaises(ValueError):
|
||||||
sorted(expand_alphanumeric_pattern('r[a-bb]a'))
|
sorted(expand_alphanumeric_pattern('r[a-bb]a'))
|
||||||
|
|
||||||
def test_invalid_set(self):
|
def test_invalid_set(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user