mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #24948 -- Fixed crash when uploading bitmap images in forms.ImageField
This commit is contained in:
committed by
Tim Graham
parent
fbc618c13c
commit
cf6ce279c7
BIN
tests/forms_tests/tests/filepath_test_files/1x1.bmp
Normal file
BIN
tests/forms_tests/tests/filepath_test_files/1x1.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 58 B |
@@ -829,6 +829,26 @@ class FieldsTests(SimpleTestCase):
|
||||
self.assertEqual('PNG', uploaded_file.image.format)
|
||||
self.assertEqual('image/png', uploaded_file.content_type)
|
||||
|
||||
@skipIf(Image is None, "Pillow is required to test ImageField")
|
||||
def test_imagefield_annotate_with_bitmap_image_after_clean(self):
|
||||
"""
|
||||
This also tests the situation when Pillow doesn't detect the MIME type
|
||||
of the image (#24948).
|
||||
"""
|
||||
f = ImageField()
|
||||
|
||||
img_path = os.path.dirname(upath(__file__)) + '/filepath_test_files/1x1.bmp'
|
||||
with open(img_path, 'rb') as img_file:
|
||||
img_data = img_file.read()
|
||||
|
||||
img_file = SimpleUploadedFile('1x1.bmp', img_data)
|
||||
img_file.content_type = 'text/plain'
|
||||
|
||||
uploaded_file = f.clean(img_file)
|
||||
|
||||
self.assertEqual('BMP', uploaded_file.image.format)
|
||||
self.assertIsNone(uploaded_file.content_type)
|
||||
|
||||
# URLField ##################################################################
|
||||
|
||||
def test_urlfield_1(self):
|
||||
@@ -1372,6 +1392,7 @@ class FieldsTests(SimpleTestCase):
|
||||
f.choices.sort()
|
||||
expected = [
|
||||
('/tests/forms_tests/tests/filepath_test_files/.dot-file', '.dot-file'),
|
||||
('/tests/forms_tests/tests/filepath_test_files/1x1.bmp', '1x1.bmp'),
|
||||
('/tests/forms_tests/tests/filepath_test_files/1x1.png', '1x1.png'),
|
||||
('/tests/forms_tests/tests/filepath_test_files/directory', 'directory'),
|
||||
('/tests/forms_tests/tests/filepath_test_files/fake-image.jpg', 'fake-image.jpg'),
|
||||
|
||||
Reference in New Issue
Block a user