Skip to content

Commit 1594e77

Browse files
authored
Project: use IntegerField for remote_repository from project form. (#8176)
1 parent 2aa6ce5 commit 1594e77

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

readthedocs/projects/forms.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
from django.conf import settings
1010
from django.contrib.auth.models import User
1111
from django.template.loader import render_to_string
12-
from django.utils.safestring import mark_safe
1312
from django.utils.translation import ugettext_lazy as _
1413
from textclassifier.validators import ClassifierValidator
1514

@@ -86,7 +85,7 @@ class Meta:
8685
model = Project
8786
fields = ('name', 'repo', 'repo_type', 'default_branch')
8887

89-
remote_repository = forms.CharField(
88+
remote_repository = forms.IntegerField(
9089
widget=forms.HiddenInput(),
9190
required=False,
9291
)

readthedocs/rtd_tests/tests/test_project_views.py

+14
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,20 @@ def test_remote_repository_is_added(self):
158158
self.assertIsNotNone(proj)
159159
self.assertEqual(proj.remote_repository, remote_repo)
160160

161+
def test_remote_repository_invalid_type(self):
162+
self.step_data['basics']['remote_repository'] = 'Invalid id'
163+
resp = self.post_step('basics')
164+
self.assertEqual(resp.status_code, 200)
165+
form = resp.context_data['form']
166+
self.assertIn('remote_repository', form.errors)
167+
168+
def test_remote_repository_invalid_id(self):
169+
self.step_data['basics']['remote_repository'] = 9
170+
resp = self.post_step('basics')
171+
self.assertEqual(resp.status_code, 200)
172+
form = resp.context_data['form']
173+
self.assertIn('remote_repository', form.errors)
174+
161175
def test_remote_repository_is_not_added_for_wrong_user(self):
162176
user = get(User)
163177
remote_repo = get(RemoteRepository)

0 commit comments

Comments
 (0)