Kaydet (Commit) c33aeaa0 authored tarafından Jacob Kaplan-Moss's avatar Jacob Kaplan-Moss

FIxed #8156: `UploadedFile.__repr__` now returns a string, a good `__repr__` should.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@8636 bcc190cf-cafb-0310-a4f2-bffc1f526a37
üst 40e5cde1
...@@ -11,6 +11,7 @@ except ImportError: ...@@ -11,6 +11,7 @@ except ImportError:
from django.conf import settings from django.conf import settings
from django.core.files.base import File from django.core.files.base import File
from django.core.files import temp as tempfile from django.core.files import temp as tempfile
from django.utils.encoding import smart_str
__all__ = ('UploadedFile', 'TemporaryUploadedFile', 'InMemoryUploadedFile', __all__ = ('UploadedFile', 'TemporaryUploadedFile', 'InMemoryUploadedFile',
'SimpleUploadedFile') 'SimpleUploadedFile')
...@@ -32,7 +33,7 @@ class UploadedFile(File): ...@@ -32,7 +33,7 @@ class UploadedFile(File):
self.charset = charset self.charset = charset
def __repr__(self): def __repr__(self):
return "<%s: %s (%s)>" % (self.__class__.__name__, self.name, self.content_type) return "<%s: %s (%s)>" % (self.__class__.__name__, smart_str(self.name), self.content_type)
def _get_name(self): def _get_name(self):
return self._name return self._name
......
# coding: utf-8
""" """
Tests for the file storage mechanism Tests for the file storage mechanism
...@@ -72,6 +73,14 @@ u'custom_storage.2' ...@@ -72,6 +73,14 @@ u'custom_storage.2'
# Cleanup the temp dir # Cleanup the temp dir
>>> os.rmdir(temp_dir) >>> os.rmdir(temp_dir)
# Regression test for #8156: files with unicode names I can't quite figure out the
# encoding situation between doctest and this file, but the actual repr doesn't
# matter; it just shouldn't return a unicode object.
>>> from django.core.files.uploadedfile import UploadedFile
>>> uf = UploadedFile(name=u'¿Cómo?',content_type='text')
>>> uf.__repr__()
'<UploadedFile: ... (text)>'
""" """
# Tests for a race condition on file saving (#4948). # Tests for a race condition on file saving (#4948).
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment