Skip to content

Commit 3dd0cbf

Browse files
committed
More Tests added
1 parent 81cb2c8 commit 3dd0cbf

File tree

3 files changed

+30
-3
lines changed

3 files changed

+30
-3
lines changed

readthedocs/builds/models.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -662,7 +662,7 @@ def previous(self):
662662
date = self.date or timezone.now()
663663
if self.project is not None and self.version is not None:
664664
return (
665-
Build.internal.filter(
665+
Build.objects.filter(
666666
project=self.project,
667667
version=self.version,
668668
date__lt=date,

readthedocs/rtd_tests/tests/test_project.py

+6
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,12 @@ def test_update_stable_version_excludes_pr_versions(self):
160160
# Test that PR Version is not considered for stable.
161161
self.assertEqual(self.pip.update_stable_version(), None)
162162

163+
def test_has_good_build_excludes_pr_versions(self):
164+
# Delete all versions excluding PR Versions.
165+
self.pip.versions.exclude(type=PULL_REQUEST).delete()
166+
# Test that PR Version is not considered for has_good_build.
167+
self.assertFalse(self.pip.has_good_build)
168+
163169

164170
class TestProjectTranslations(ProjectMixin, TestCase):
165171

readthedocs/rtd_tests/tests/test_views.py

+23-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
from django.urls import reverse
88
from django_dynamic_fixture import get, new
99

10-
from readthedocs.builds.constants import LATEST
11-
from readthedocs.builds.models import Build
10+
from readthedocs.builds.constants import LATEST, PULL_REQUEST
11+
from readthedocs.builds.models import Build, Version
1212
from readthedocs.core.permissions import AdminPermission
1313
from readthedocs.projects.forms import UpdateProjectForm
1414
from readthedocs.projects.models import HTMLFile, Project
@@ -266,6 +266,7 @@ class BuildViewTests(TestCase):
266266

267267
def setUp(self):
268268
self.client.login(username='eric', password='test')
269+
self.pip = Project.objects.get(slug='pip')
269270

270271
@mock.patch('readthedocs.projects.tasks.update_docs_task')
271272
def test_build_redirect(self, mock):
@@ -276,3 +277,23 @@ def test_build_redirect(self, mock):
276277
r._headers['location'][1],
277278
'/projects/pip/builds/%s/' % build.pk,
278279
)
280+
281+
def test_build_list_does_not_include_pr_versions(self):
282+
pr_version = get(
283+
Version,
284+
project = self.pip,
285+
active = True,
286+
type = PULL_REQUEST,
287+
)
288+
pr_version_build = get(
289+
Build,
290+
project = self.pip,
291+
version = pr_version
292+
)
293+
response = self.client.get(
294+
reverse('builds_project_list', args=[self.pip.slug]),
295+
)
296+
self.assertEqual(response.status_code, 200)
297+
298+
self.assertNotIn(pr_version_build, response.context['build_qs'])
299+
self.assertNotIn(pr_version_build, response.context['active_builds'])

0 commit comments

Comments
 (0)