def test_can_resize_images_before_saving_them(self): # Setup test = DummyModel() # Run field = test._meta.get_field('resized_image') field.save_form_data(test, self.images_dict['to_be_resized_image']) test.full_clean() test.save() # Check image = Image.open(BytesIO(test.resized_image.read())) assert image.size == (RESIZED_IMAGE_WIDTH, RESIZED_IMAGE_HEIGHT)
def resize_image(self, data, size): """ Resizes the given image to fit inside a box of the given size. """ from machina.core.compat import PILImage as Image image = Image.open(BytesIO(data)) # Resize! image.thumbnail(size, Image.ANTIALIAS) string = BytesIO() image.save(string, format='PNG') return string.getvalue()