diff options
| author | Claude Paroz <claude@2xlibre.net> | 2013-01-28 14:12:56 +0100 |
|---|---|---|
| committer | Claude Paroz <claude@2xlibre.net> | 2013-01-28 22:10:50 +0100 |
| commit | 4f16376274a4e52074722c615fccef5fac5f009a (patch) | |
| tree | 06758241da714e07d2cda1a97c7c6f12720e352a /tests/regressiontests/forms | |
| parent | c47fa3b4814240bb47342a4446d40ea83bd3ed19 (diff) | |
Added HTML5 email input type
Refs #16630.
Diffstat (limited to 'tests/regressiontests/forms')
| -rw-r--r-- | tests/regressiontests/forms/tests/extra.py | 2 | ||||
| -rw-r--r-- | tests/regressiontests/forms/tests/fields.py | 7 | ||||
| -rw-r--r-- | tests/regressiontests/forms/tests/forms.py | 10 |
3 files changed, 13 insertions, 6 deletions
diff --git a/tests/regressiontests/forms/tests/extra.py b/tests/regressiontests/forms/tests/extra.py index 762b774a93..b5f36dc981 100644 --- a/tests/regressiontests/forms/tests/extra.py +++ b/tests/regressiontests/forms/tests/extra.py @@ -631,7 +631,7 @@ class FormsExtraTestCase(TestCase, AssertFormErrorsMixin): f = CommentForm(data, auto_id=False, error_class=DivErrorList) self.assertHTMLEqual(f.as_p(), """<p>Name: <input type="text" name="name" maxlength="50" /></p> <div class="errorlist"><div class="error">Enter a valid email address.</div></div> -<p>Email: <input type="text" name="email" value="invalid" /></p> +<p>Email: <input type="email" name="email" value="invalid" /></p> <div class="errorlist"><div class="error">This field is required.</div></div> <p>Comment: <input type="text" name="comment" /></p>""") diff --git a/tests/regressiontests/forms/tests/fields.py b/tests/regressiontests/forms/tests/fields.py index c533370b68..aa03377d44 100644 --- a/tests/regressiontests/forms/tests/fields.py +++ b/tests/regressiontests/forms/tests/fields.py @@ -53,6 +53,11 @@ def fix_os_paths(x): class FieldsTests(SimpleTestCase): + def assertWidgetRendersTo(self, field, to): + class _Form(Form): + f = field + self.assertHTMLEqual(str(_Form()['f']), to) + def test_field_sets_widget_is_required(self): self.assertTrue(Field(required=True).widget.is_required) self.assertFalse(Field(required=False).widget.is_required) @@ -545,6 +550,7 @@ class FieldsTests(SimpleTestCase): def test_emailfield_1(self): f = EmailField() + self.assertWidgetRendersTo(f, '<input type="email" name="f" id="id_f" />') self.assertRaisesMessage(ValidationError, "'This field is required.'", f.clean, '') self.assertRaisesMessage(ValidationError, "'This field is required.'", f.clean, None) self.assertEqual('person@example.com', f.clean('person@example.com')) @@ -569,6 +575,7 @@ class FieldsTests(SimpleTestCase): def test_emailfield_min_max_length(self): f = EmailField(min_length=10, max_length=15) + self.assertWidgetRendersTo(f, '<input id="id_f" type="email" name="f" maxlength="15" />') self.assertRaisesMessage(ValidationError, "'Ensure this value has at least 10 characters (it has 9).'", f.clean, 'a@foo.com') self.assertEqual('alf@foo.com', f.clean('alf@foo.com')) self.assertRaisesMessage(ValidationError, "'Ensure this value has at most 15 characters (it has 20).'", f.clean, 'alf123456788@foo.com') diff --git a/tests/regressiontests/forms/tests/forms.py b/tests/regressiontests/forms/tests/forms.py index ade06845f8..f2fa78e229 100644 --- a/tests/regressiontests/forms/tests/forms.py +++ b/tests/regressiontests/forms/tests/forms.py @@ -245,11 +245,11 @@ class FormsTestCase(TestCase): get_spam = BooleanField() f = SignupForm(auto_id=False) - self.assertHTMLEqual(str(f['email']), '<input type="text" name="email" />') + self.assertHTMLEqual(str(f['email']), '<input type="email" name="email" />') self.assertHTMLEqual(str(f['get_spam']), '<input type="checkbox" name="get_spam" />') f = SignupForm({'email': 'test@example.com', 'get_spam': True}, auto_id=False) - self.assertHTMLEqual(str(f['email']), '<input type="text" name="email" value="test@example.com" />') + self.assertHTMLEqual(str(f['email']), '<input type="email" name="email" value="test@example.com" />') self.assertHTMLEqual(str(f['get_spam']), '<input checked="checked" type="checkbox" name="get_spam" />') # 'True' or 'true' should be rendered without a value attribute @@ -1739,7 +1739,7 @@ class FormsTestCase(TestCase): <option value="2">Yes</option> <option value="3">No</option> </select></li> -<li><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></li> +<li><label for="id_email">Email:</label> <input type="email" name="email" id="id_email" /></li> <li class="required error"><ul class="errorlist"><li>This field is required.</li></ul><label for="id_age">Age:</label> <input type="text" name="age" id="id_age" /></li>""") self.assertHTMLEqual(p.as_p(), """<ul class="errorlist"><li>This field is required.</li></ul> @@ -1749,7 +1749,7 @@ class FormsTestCase(TestCase): <option value="2">Yes</option> <option value="3">No</option> </select></p> -<p><label for="id_email">Email:</label> <input type="text" name="email" id="id_email" /></p> +<p><label for="id_email">Email:</label> <input type="email" name="email" id="id_email" /></p> <ul class="errorlist"><li>This field is required.</li></ul> <p class="required error"><label for="id_age">Age:</label> <input type="text" name="age" id="id_age" /></p>""") @@ -1759,7 +1759,7 @@ class FormsTestCase(TestCase): <option value="2">Yes</option> <option value="3">No</option> </select></td></tr> -<tr><th><label for="id_email">Email:</label></th><td><input type="text" name="email" id="id_email" /></td></tr> +<tr><th><label for="id_email">Email:</label></th><td><input type="email" name="email" id="id_email" /></td></tr> <tr class="required error"><th><label for="id_age">Age:</label></th><td><ul class="errorlist"><li>This field is required.</li></ul><input type="text" name="age" id="id_age" /></td></tr>""") def test_label_split_datetime_not_displayed(self): |
