mirror of
https://github.com/django/django.git
synced 2025-10-24 14:16:09 +00:00
Refs #33476 -- Reformatted code with Black.
This commit is contained in:
committed by
Mariusz Felisiak
parent
f68fa8b45d
commit
9c19aff7c7
@@ -15,13 +15,19 @@ except ImproperlyConfigured:
|
||||
|
||||
if Image:
|
||||
from .models import (
|
||||
Person, PersonDimensionsFirst, PersonTwoImages, PersonWithHeight,
|
||||
PersonWithHeightAndWidth, TestImageFieldFile, temp_storage_dir,
|
||||
Person,
|
||||
PersonDimensionsFirst,
|
||||
PersonTwoImages,
|
||||
PersonWithHeight,
|
||||
PersonWithHeightAndWidth,
|
||||
TestImageFieldFile,
|
||||
temp_storage_dir,
|
||||
)
|
||||
else:
|
||||
# Pillow not available, create dummy classes (tests will be skipped anyway)
|
||||
class Person:
|
||||
pass
|
||||
|
||||
PersonWithHeight = PersonWithHeightAndWidth = PersonDimensionsFirst = Person
|
||||
PersonTwoImages = Person
|
||||
|
||||
@@ -49,11 +55,11 @@ class ImageFieldTestMixin(SerializeMixin):
|
||||
shutil.rmtree(temp_storage_dir)
|
||||
os.mkdir(temp_storage_dir)
|
||||
|
||||
file_path1 = os.path.join(os.path.dirname(__file__), '4x8.png')
|
||||
self.file1 = self.File(open(file_path1, 'rb'), name='4x8.png')
|
||||
file_path1 = os.path.join(os.path.dirname(__file__), "4x8.png")
|
||||
self.file1 = self.File(open(file_path1, "rb"), name="4x8.png")
|
||||
|
||||
file_path2 = os.path.join(os.path.dirname(__file__), '8x4.png')
|
||||
self.file2 = self.File(open(file_path2, 'rb'), name='8x4.png')
|
||||
file_path2 = os.path.join(os.path.dirname(__file__), "8x4.png")
|
||||
self.file2 = self.File(open(file_path2, "rb"), name="8x4.png")
|
||||
|
||||
def tearDown(self):
|
||||
"""
|
||||
@@ -63,7 +69,7 @@ class ImageFieldTestMixin(SerializeMixin):
|
||||
self.file2.close()
|
||||
shutil.rmtree(temp_storage_dir)
|
||||
|
||||
def check_dimensions(self, instance, width, height, field_name='mugshot'):
|
||||
def check_dimensions(self, instance, width, height, field_name="mugshot"):
|
||||
"""
|
||||
Asserts that the given width and height values match both the
|
||||
field's height and width attributes and the height and width fields
|
||||
@@ -81,18 +87,18 @@ class ImageFieldTestMixin(SerializeMixin):
|
||||
# Check height/width attributes of field.
|
||||
if width is None and height is None:
|
||||
with self.assertRaises(ValueError):
|
||||
getattr(field, 'width')
|
||||
getattr(field, "width")
|
||||
with self.assertRaises(ValueError):
|
||||
getattr(field, 'height')
|
||||
getattr(field, "height")
|
||||
else:
|
||||
self.assertEqual(field.width, width)
|
||||
self.assertEqual(field.height, height)
|
||||
|
||||
# Check height/width fields of model, if defined.
|
||||
width_field_name = field_name + '_width'
|
||||
width_field_name = field_name + "_width"
|
||||
if hasattr(instance, width_field_name):
|
||||
self.assertEqual(getattr(instance, width_field_name), width)
|
||||
height_field_name = field_name + '_height'
|
||||
height_field_name = field_name + "_height"
|
||||
if hasattr(instance, height_field_name):
|
||||
self.assertEqual(getattr(instance, height_field_name), height)
|
||||
|
||||
@@ -137,7 +143,7 @@ class ImageFieldTests(ImageFieldTestMixin, TestCase):
|
||||
p.mugshot.save("shot", self.file1)
|
||||
p = self.PersonModel.objects.get(name="Joan")
|
||||
path = p.mugshot.path
|
||||
shutil.move(path, path + '.moved')
|
||||
shutil.move(path, path + ".moved")
|
||||
self.PersonModel.objects.get(name="Joan")
|
||||
|
||||
def test_delete_when_missing(self):
|
||||
@@ -193,11 +199,11 @@ class ImageFieldTests(ImageFieldTestMixin, TestCase):
|
||||
self.assertEqual(p.mugshot.field, loaded_mugshot.field)
|
||||
|
||||
def test_defer(self):
|
||||
self.PersonModel.objects.create(name='Joe', mugshot=self.file1)
|
||||
self.PersonModel.objects.create(name="Joe", mugshot=self.file1)
|
||||
with self.assertNumQueries(1):
|
||||
qs = list(self.PersonModel.objects.defer('mugshot'))
|
||||
qs = list(self.PersonModel.objects.defer("mugshot"))
|
||||
with self.assertNumQueries(0):
|
||||
self.assertEqual(qs[0].name, 'Joe')
|
||||
self.assertEqual(qs[0].name, "Joe")
|
||||
|
||||
|
||||
@skipIf(Image is None, "Pillow is required to test ImageField")
|
||||
@@ -210,7 +216,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
"""
|
||||
Tests assigning an image field through the model's constructor.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe', mugshot=self.file1)
|
||||
p = self.PersonModel(name="Joe", mugshot=self.file1)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
p.save()
|
||||
self.check_dimensions(p, 4, 8)
|
||||
@@ -219,7 +225,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
"""
|
||||
Tests behavior when image is not passed in constructor.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
# TestImageField value will default to being an instance of its
|
||||
# attr_class, a TestImageFieldFile, with name == None, which will
|
||||
# cause it to evaluate as False.
|
||||
@@ -227,7 +233,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
self.assertFalse(p.mugshot)
|
||||
|
||||
# Test setting a fresh created model instance.
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
p.mugshot = self.file1
|
||||
self.check_dimensions(p, 4, 8)
|
||||
|
||||
@@ -235,7 +241,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
"""
|
||||
Tests assigning an image in Manager.create().
|
||||
"""
|
||||
p = self.PersonModel.objects.create(name='Joe', mugshot=self.file1)
|
||||
p = self.PersonModel.objects.create(name="Joe", mugshot=self.file1)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
|
||||
def test_default_value(self):
|
||||
@@ -252,7 +258,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
"""
|
||||
Assigning ImageField to None clears dimensions.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe', mugshot=self.file1)
|
||||
p = self.PersonModel(name="Joe", mugshot=self.file1)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
|
||||
# If image assigned to None, dimension fields should be cleared.
|
||||
@@ -267,7 +273,7 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
Tests assignment using the field's save method and deletion using
|
||||
the field's delete method.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
p.mugshot.save("mug", self.file1)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
|
||||
@@ -284,14 +290,14 @@ class ImageFieldTwoDimensionsTests(ImageFieldTestMixin, TestCase):
|
||||
"""
|
||||
Dimensions are updated correctly in various situations.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
|
||||
# Dimensions should get set if file is saved.
|
||||
p.mugshot.save("mug", self.file1)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
|
||||
# Test dimensions after fetching from database.
|
||||
p = self.PersonModel.objects.get(name='Joe')
|
||||
p = self.PersonModel.objects.get(name="Joe")
|
||||
# Bug 11084: Dimensions should not get recalculated if file is
|
||||
# coming from the database. We test this by checking if the file
|
||||
# was opened.
|
||||
@@ -363,76 +369,76 @@ class TwoImageFieldTests(ImageFieldTestMixin, TestCase):
|
||||
|
||||
def test_constructor(self):
|
||||
p = self.PersonModel(mugshot=self.file1, headshot=self.file2)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
p.save()
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
|
||||
def test_create(self):
|
||||
p = self.PersonModel.objects.create(mugshot=self.file1, headshot=self.file2)
|
||||
self.check_dimensions(p, 4, 8)
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
|
||||
def test_assignment(self):
|
||||
p = self.PersonModel()
|
||||
self.check_dimensions(p, None, None, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, None, None, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
|
||||
p.mugshot = self.file1
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
p.headshot = self.file2
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
|
||||
# Clear the ImageFields one at a time.
|
||||
p.mugshot = None
|
||||
self.check_dimensions(p, None, None, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, None, None, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
p.headshot = None
|
||||
self.check_dimensions(p, None, None, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, None, None, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
|
||||
def test_field_save_and_delete_methods(self):
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
p.mugshot.save("mug", self.file1)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
p.headshot.save("head", self.file2)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
|
||||
# We can use save=True when deleting the image field with null=True
|
||||
# dimension fields and the other field has an image.
|
||||
p.headshot.delete(save=True)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
p.mugshot.delete(save=False)
|
||||
self.check_dimensions(p, None, None, 'mugshot')
|
||||
self.check_dimensions(p, None, None, 'headshot')
|
||||
self.check_dimensions(p, None, None, "mugshot")
|
||||
self.check_dimensions(p, None, None, "headshot")
|
||||
|
||||
def test_dimensions(self):
|
||||
"""
|
||||
Dimensions are updated correctly in various situations.
|
||||
"""
|
||||
p = self.PersonModel(name='Joe')
|
||||
p = self.PersonModel(name="Joe")
|
||||
|
||||
# Dimensions should get set for the saved file.
|
||||
p.mugshot.save("mug", self.file1)
|
||||
p.headshot.save("head", self.file2)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
|
||||
# Test dimensions after fetching from database.
|
||||
p = self.PersonModel.objects.get(name='Joe')
|
||||
p = self.PersonModel.objects.get(name="Joe")
|
||||
# Bug 11084: Dimensions should not get recalculated if file is
|
||||
# coming from the database. We test this by checking if the file
|
||||
# was opened.
|
||||
self.assertIs(p.mugshot.was_opened, False)
|
||||
self.assertIs(p.headshot.was_opened, False)
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
# After checking dimensions on the image fields, the files will
|
||||
# have been opened.
|
||||
self.assertIs(p.mugshot.was_opened, True)
|
||||
@@ -441,8 +447,8 @@ class TwoImageFieldTests(ImageFieldTestMixin, TestCase):
|
||||
# check dimensions again, the file should not have opened.
|
||||
p.mugshot.was_opened = False
|
||||
p.headshot.was_opened = False
|
||||
self.check_dimensions(p, 4, 8, 'mugshot')
|
||||
self.check_dimensions(p, 8, 4, 'headshot')
|
||||
self.check_dimensions(p, 4, 8, "mugshot")
|
||||
self.check_dimensions(p, 8, 4, "headshot")
|
||||
self.assertIs(p.mugshot.was_opened, False)
|
||||
self.assertIs(p.headshot.was_opened, False)
|
||||
|
||||
@@ -450,8 +456,8 @@ class TwoImageFieldTests(ImageFieldTestMixin, TestCase):
|
||||
# update.
|
||||
p.mugshot = self.file2
|
||||
p.headshot = self.file1
|
||||
self.check_dimensions(p, 8, 4, 'mugshot')
|
||||
self.check_dimensions(p, 4, 8, 'headshot')
|
||||
self.check_dimensions(p, 8, 4, "mugshot")
|
||||
self.check_dimensions(p, 4, 8, "headshot")
|
||||
# Dimensions were recalculated, and hence file should have opened.
|
||||
self.assertIs(p.mugshot.was_opened, True)
|
||||
self.assertIs(p.headshot.was_opened, True)
|
||||
|
||||
Reference in New Issue
Block a user