Commit fe885845 authored by Chris Beaven's avatar Chris Beaven
Browse files

Fix and test for cleaning a non-string value in a URLField

git-svn-id: http://code.djangoproject.com/svn/django/trunk@16747 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent 699688dc
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -583,6 +583,7 @@ class URLField(CharField):
        self.validators.append(validators.URLValidator(verify_exists=verify_exists, validator_user_agent=validator_user_agent))

    def to_python(self, value):
        value = super(URLField, self).to_python(value)
        if value:
            url_fields = list(urlparse.urlsplit(value))
            if not url_fields[0]:
@@ -601,7 +602,7 @@ class URLField(CharField):
                # the path portion may need to be added before query params
                url_fields[2] = '/'
            value = urlparse.urlunsplit(url_fields)
        return super(URLField, self).to_python(value)
        return value

class BooleanField(Field):
    widget = CheckboxInput
+4 −0
Original line number Diff line number Diff line
@@ -686,6 +686,10 @@ class FieldsTests(SimpleTestCase):
        url = u'http://t\xfcr.djangoproject.com/'
        self.assertEqual(url, f.clean(url))

    def test_urlfield_not_string(self):
        f = URLField(required=False)
        self.assertRaisesMessage(ValidationError, "[u'Enter a valid URL.']", f.clean, 23)

    # BooleanField ################################################################

    def test_booleanfield_1(self):