summaryrefslogtreecommitdiff
path: root/tests/forms_tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests/forms_tests')
-rw-r--r--tests/forms_tests/tests/test_fields.py16
-rw-r--r--tests/forms_tests/tests/test_forms.py60
-rw-r--r--tests/forms_tests/tests/test_formsets.py9
-rw-r--r--tests/forms_tests/tests/test_utils.py29
-rw-r--r--tests/forms_tests/tests/test_widgets.py3
5 files changed, 68 insertions, 49 deletions
diff --git a/tests/forms_tests/tests/test_fields.py b/tests/forms_tests/tests/test_fields.py
index bd33cff4fd..41a3a5185e 100644
--- a/tests/forms_tests/tests/test_fields.py
+++ b/tests/forms_tests/tests/test_fields.py
@@ -850,8 +850,10 @@ class FieldsTests(SimpleTestCase):
self.assertEqual('person@example.com', f.clean('person@example.com'))
with self.assertRaisesMessage(ValidationError, "'Enter a valid email address.'"):
f.clean('foo')
- self.assertEqual('local@domain.with.idn.xyz\xe4\xf6\xfc\xdfabc.part.com',
- f.clean('local@domain.with.idn.xyzäöüßabc.part.com'))
+ self.assertEqual(
+ 'local@domain.with.idn.xyz\xe4\xf6\xfc\xdfabc.part.com',
+ f.clean('local@domain.with.idn.xyzäöüßabc.part.com')
+ )
def test_email_regexp_for_performance(self):
f = EmailField()
@@ -1259,9 +1261,11 @@ class FieldsTests(SimpleTestCase):
def test_choicefield_disabled(self):
f = ChoiceField(choices=[('J', 'John'), ('P', 'Paul')], disabled=True)
- self.assertWidgetRendersTo(f,
+ self.assertWidgetRendersTo(
+ f,
'<select id="id_f" name="f" disabled><option value="J">John</option>'
- '<option value="P">Paul</option></select>')
+ '<option value="P">Paul</option></select>'
+ )
# TypedChoiceField ############################################################
# TypedChoiceField is just like ChoiceField, except that coerced types will
@@ -1434,8 +1438,8 @@ class FieldsTests(SimpleTestCase):
f.clean('hello')
self.assertEqual([], f.clean([]))
self.assertEqual([], f.clean(()))
- with self.assertRaisesMessage(ValidationError,
- "'Select a valid choice. 3 is not one of the available choices.'"):
+ msg = "'Select a valid choice. 3 is not one of the available choices.'"
+ with self.assertRaisesMessage(ValidationError, msg):
f.clean(['3'])
def test_multiplechoicefield_3(self):
diff --git a/tests/forms_tests/tests/test_forms.py b/tests/forms_tests/tests/test_forms.py
index 99bcfe3417..a8bff32a8c 100644
--- a/tests/forms_tests/tests/test_forms.py
+++ b/tests/forms_tests/tests/test_forms.py
@@ -1493,11 +1493,13 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
address = CharField() # no max_length defined here
p = UserRegistration(auto_id=False)
- self.assertHTMLEqual(p.as_ul(),
- """<li>Username: <input type="text" name="username" maxlength="10" /></li>
+ self.assertHTMLEqual(
+ p.as_ul(),
+ """<li>Username: <input type="text" name="username" maxlength="10" /></li>
<li>Password: <input type="password" name="password" maxlength="10" /></li>
<li>Realname: <input type="text" name="realname" maxlength="10" /></li>
-<li>Address: <input type="text" name="address" /></li>""")
+<li>Address: <input type="text" name="address" /></li>"""
+ )
# If you specify a custom "attrs" that includes the "maxlength" attribute,
# the Field's max_length attribute will override whatever "maxlength" you specify
@@ -1507,9 +1509,11 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
password = CharField(max_length=10, widget=PasswordInput)
p = UserRegistration(auto_id=False)
- self.assertHTMLEqual(p.as_ul(),
- """<li>Username: <input type="text" name="username" maxlength="10" /></li>
-<li>Password: <input type="password" name="password" maxlength="10" /></li>""")
+ self.assertHTMLEqual(
+ p.as_ul(),
+ """<li>Username: <input type="text" name="username" maxlength="10" /></li>
+<li>Password: <input type="password" name="password" maxlength="10" /></li>"""
+ )
def test_specifying_labels(self):
# You can specify the label for a field by using the 'label' argument to a Field
@@ -1521,10 +1525,12 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
password2 = CharField(widget=PasswordInput, label='Contraseña (de nuevo)')
p = UserRegistration(auto_id=False)
- self.assertHTMLEqual(p.as_ul(),
- """<li>Your username: <input type="text" name="username" maxlength="10" /></li>
+ self.assertHTMLEqual(
+ p.as_ul(),
+ """<li>Your username: <input type="text" name="username" maxlength="10" /></li>
<li>Password1: <input type="password" name="password1" /></li>
-<li>Contraseña (de nuevo): <input type="password" name="password2" /></li>""")
+<li>Contraseña (de nuevo): <input type="password" name="password2" /></li>"""
+ )
# Labels for as_* methods will only end in a colon if they don't end in other
# punctuation already.
@@ -1574,9 +1580,11 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
password = CharField(widget=PasswordInput)
p = UserRegistration(auto_id=False)
- self.assertHTMLEqual(p.as_ul(),
- """<li>Username: <input type="text" name="username" maxlength="10" /></li>
-<li>Password: <input type="password" name="password" /></li>""")
+ self.assertHTMLEqual(
+ p.as_ul(),
+ """<li>Username: <input type="text" name="username" maxlength="10" /></li>
+<li>Password: <input type="password" name="password" /></li>"""
+ )
p = UserRegistration(auto_id='id_%s')
self.assertHTMLEqual(
p.as_ul(),
@@ -1861,8 +1869,7 @@ Password: <input type="password" name="password" /></li>
last_name = CharField(initial='Greatel')
birthday = DateField(initial=datetime.date(1974, 8, 16))
- p = Person(data={'first_name': 'Hans', 'last_name': 'Scrmbl',
- 'birthday': '1974-08-16'})
+ p = Person(data={'first_name': 'Hans', 'last_name': 'Scrmbl', 'birthday': '1974-08-16'})
self.assertTrue(p.is_valid())
self.assertNotIn('first_name', p.changed_data)
self.assertIn('last_name', p.changed_data)
@@ -1876,8 +1883,10 @@ Password: <input type="password" name="password" /></li>
class Person2(Person):
pedantic = PedanticField(initial='whatever', show_hidden_initial=True)
- p = Person2(data={'first_name': 'Hans', 'last_name': 'Scrmbl',
- 'birthday': '1974-08-16', 'initial-pedantic': 'whatever'})
+ p = Person2(data={
+ 'first_name': 'Hans', 'last_name': 'Scrmbl', 'birthday': '1974-08-16',
+ 'initial-pedantic': 'whatever',
+ })
self.assertFalse(p.is_valid())
self.assertIn('pedantic', p.changed_data)
@@ -2700,9 +2709,10 @@ Good luck picking a username that doesn&#39;t already exist.</p>
"""
class ChoicesField(MultiValueField):
def __init__(self, fields=(), *args, **kwargs):
- fields = (ChoiceField(label='Rank',
- choices=((1, 1), (2, 2))),
- CharField(label='Name', max_length=10))
+ fields = (
+ ChoiceField(label='Rank', choices=((1, 1), (2, 2))),
+ CharField(label='Name', max_length=10),
+ )
super(ChoicesField, self).__init__(fields=fields, *args, **kwargs)
field = ChoicesField()
@@ -2787,8 +2797,10 @@ Good luck picking a username that doesn&#39;t already exist.</p>
with self.assertRaisesMessage(ValidationError, "'Enter a complete value.'"):
f.clean(['+61'])
self.assertEqual('+61.287654321 ext. 123 (label: )', f.clean(['+61', '287654321', '123']))
- six.assertRaisesRegex(self, ValidationError,
- "'Enter a complete value\.', u?'Enter an extension\.'", f.clean, ['', '', '', 'Home'])
+ six.assertRaisesRegex(
+ self, ValidationError,
+ "'Enter a complete value\.', u?'Enter an extension\.'", f.clean, ['', '', '', 'Home']
+ )
with self.assertRaisesMessage(ValidationError, "'Enter a valid country code.'"):
f.clean(['61', '287654321', '123', 'Home'])
@@ -2801,8 +2813,10 @@ Good luck picking a username that doesn&#39;t already exist.</p>
with self.assertRaisesMessage(ValidationError, "'Enter a complete value.'"):
f.clean(['+61'])
self.assertEqual('+61.287654321 ext. 123 (label: )', f.clean(['+61', '287654321', '123']))
- six.assertRaisesRegex(self, ValidationError,
- "'Enter a complete value\.', u?'Enter an extension\.'", f.clean, ['', '', '', 'Home'])
+ six.assertRaisesRegex(
+ self, ValidationError,
+ "'Enter a complete value\.', u?'Enter an extension\.'", f.clean, ['', '', '', 'Home']
+ )
with self.assertRaisesMessage(ValidationError, "'Enter a valid country code.'"):
f.clean(['61', '287654321', '123', 'Home'])
diff --git a/tests/forms_tests/tests/test_formsets.py b/tests/forms_tests/tests/test_formsets.py
index eb1b04b4e3..f367d22397 100644
--- a/tests/forms_tests/tests/test_formsets.py
+++ b/tests/forms_tests/tests/test_formsets.py
@@ -46,8 +46,7 @@ class EmptyFsetWontValidate(BaseFormSet):
# Let's define a FormSet that takes a list of favorite drinks, but raises an
# error if there are any duplicates. Used in ``test_clean_hook``,
# ``test_regression_6926`` & ``test_regression_12878``.
-FavoriteDrinksFormSet = formset_factory(FavoriteDrinkForm,
- formset=BaseFavoriteDrinksFormSet, extra=3)
+FavoriteDrinksFormSet = formset_factory(FavoriteDrinkForm, formset=BaseFavoriteDrinksFormSet, extra=3)
# Used in ``test_formset_splitdatetimefield``.
@@ -65,7 +64,8 @@ class CustomKwargForm(Form):
class FormsFormsetTestCase(SimpleTestCase):
- def make_choiceformset(self, formset_data=None, formset_class=ChoiceFormSet,
+ def make_choiceformset(
+ self, formset_data=None, formset_class=ChoiceFormSet,
total_forms=None, initial_forms=0, max_num_forms=0, min_num_forms=0, **kwargs):
"""
Make a ChoiceFormset from the given formset_data.
@@ -1162,8 +1162,7 @@ class FormsFormsetTestCase(SimpleTestCase):
ChoiceFormSet = formset_factory(Choice, formset=BaseCustomFormSet)
formset = ChoiceFormSet(data, auto_id=False, prefix='choices')
self.assertIsInstance(formset.non_form_errors(), ErrorList)
- self.assertEqual(list(formset.non_form_errors()),
- ['This is a non-form error'])
+ self.assertEqual(list(formset.non_form_errors()), ['This is a non-form error'])
def test_validate_max_ignores_forms_marked_for_deletion(self):
class CheckForm(Form):
diff --git a/tests/forms_tests/tests/test_utils.py b/tests/forms_tests/tests/test_utils.py
index 260306165f..9104d235dd 100644
--- a/tests/forms_tests/tests/test_utils.py
+++ b/tests/forms_tests/tests/test_utils.py
@@ -59,27 +59,30 @@ class FormsUtilsTestCase(SimpleTestCase):
###################
# Can take a string.
- self.assertHTMLEqual(str(ErrorList(ValidationError("There was an error.").messages)),
- '<ul class="errorlist"><li>There was an error.</li></ul>')
-
+ self.assertHTMLEqual(
+ str(ErrorList(ValidationError("There was an error.").messages)),
+ '<ul class="errorlist"><li>There was an error.</li></ul>'
+ )
# Can take a unicode string.
- self.assertHTMLEqual(six.text_type(ErrorList(ValidationError("Not \u03C0.").messages)),
- '<ul class="errorlist"><li>Not π.</li></ul>')
-
+ self.assertHTMLEqual(
+ six.text_type(ErrorList(ValidationError("Not \u03C0.").messages)),
+ '<ul class="errorlist"><li>Not π.</li></ul>'
+ )
# Can take a lazy string.
- self.assertHTMLEqual(str(ErrorList(ValidationError(ugettext_lazy("Error.")).messages)),
- '<ul class="errorlist"><li>Error.</li></ul>')
-
+ self.assertHTMLEqual(
+ str(ErrorList(ValidationError(ugettext_lazy("Error.")).messages)),
+ '<ul class="errorlist"><li>Error.</li></ul>'
+ )
# Can take a list.
- self.assertHTMLEqual(str(ErrorList(ValidationError(["Error one.", "Error two."]).messages)),
- '<ul class="errorlist"><li>Error one.</li><li>Error two.</li></ul>')
-
+ self.assertHTMLEqual(
+ str(ErrorList(ValidationError(["Error one.", "Error two."]).messages)),
+ '<ul class="errorlist"><li>Error one.</li><li>Error two.</li></ul>'
+ )
# Can take a dict.
self.assertHTMLEqual(
str(ErrorList(sorted(ValidationError({'error_1': "1. Error one.", 'error_2': "2. Error two."}).messages))),
'<ul class="errorlist"><li>1. Error one.</li><li>2. Error two.</li></ul>'
)
-
# Can take a mixture in a list.
self.assertHTMLEqual(
str(ErrorList(sorted(ValidationError([
diff --git a/tests/forms_tests/tests/test_widgets.py b/tests/forms_tests/tests/test_widgets.py
index 261cb4bc38..8f84ddcb9b 100644
--- a/tests/forms_tests/tests/test_widgets.py
+++ b/tests/forms_tests/tests/test_widgets.py
@@ -170,8 +170,7 @@ class LiveWidgetTests(AdminSeleniumTestCase):
Test that a roundtrip on a ModelForm doesn't alter the TextField value
"""
article = Article.objects.create(content="\nTst\n")
- self.selenium.get('%s%s' % (self.live_server_url,
- reverse('article_form', args=[article.pk])))
+ self.selenium.get(self.live_server_url + reverse('article_form', args=[article.pk]))
self.selenium.find_element_by_id('submit').submit()
article = Article.objects.get(pk=article.pk)
# Should be "\nTst\n" after #19251 is fixed