Skip to content

Commit f809fd1

Browse files
committed
fix: handle release objects with 'invalid' names but on the method side
1 parent 6374d2a commit f809fd1

File tree

2 files changed

+4
-7
lines changed

2 files changed

+4
-7
lines changed

downloads/models.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -125,14 +125,11 @@ def get_version(self):
125125
version = re.match(r'Python\s([\d.]+)', self.name)
126126
if version is not None:
127127
return version.group(1)
128-
return None
128+
return ""
129129

130130
def is_version_at_least(self, min_version_tuple):
131-
version = self.get_version()
132-
if version is None:
133-
return False
134131
v1 = []
135-
for b in version.split('.'):
132+
for b in self.get_version().split('.'):
136133
try:
137134
v1.append(int(b))
138135
except ValueError:
@@ -294,7 +291,7 @@ def purge_fastly_download_pages(sender, instance, **kwargs):
294291
purge_url('/downloads/source/')
295292
purge_url('/downloads/windows/')
296293
purge_url('/ftp/python/')
297-
if instance.get_version() is not None:
294+
if instance.get_version():
298295
purge_url(f'/ftp/python/{instance.get_version()}/')
299296
# See issue #584 for details
300297
purge_url('/box/supernav-python-downloads/')

downloads/tests/test_models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ def test_get_version_invalid(self):
7474
with self.subTest(name=name):
7575
release = Release.objects.create(name=name)
7676
self.assertEqual(release.name, name)
77-
self.assertIsNone(release.get_version())
77+
self.assertEqual(release.get_version(), "")
7878

7979
def test_is_version_at_least(self):
8080
self.assertFalse(self.release_275.is_version_at_least_3_5)

0 commit comments

Comments
 (0)