def afterSetUp(self): data = self.getImage() folder = self.folder self.image = folder[folder.invokeFactory('Image', id='foo', image=data)] self.adapter = ImageScaling(self.image, None) self.iprops = self.portal.portal_properties.imaging_properties self.iprops.manage_changeProperties(allowed_sizes=['foo 60:60'])
def afterSetUp(self): data = self.getImage() folder = self.folder self.image = folder[folder.invokeFactory('Image', id='foo', image=data)] self.adapter = ImageScaling(self.image, None) self.settings = getSettings() self.settings.allowed_sizes = [u'foo 60:60']
def testCreateScaleWithPdata(self): data = self.getImage() + '\x00' * (1 << 16) from Products.ATContentTypes.content.image import ATImage image = ATImage('image').__of__(self.folder) image.setImage(data) field = image.getField('image') field.swallowResizeExceptions = False from OFS.Image import Pdata self.assertTrue(isinstance(image.getImage().data, Pdata)) adapter = ImageScaling(image, None) foo = adapter.scale('image', width=100, height=80) self.assertFalse(foo is None)
def testQualityChange(self): iprops = self.portal.portal_properties.imaging_properties self.image.update(image=self.getImage('image.jpg')) data = self.getImage('image.jpg') + '\x00' * (1 << 16) # get size of image scaled at default scaling quality self.assertEqual(iprops.getProperty('quality'), 88) from Products.ATContentTypes.content.image import ATImage image = ATImage('image').__of__(self.folder) image.setImage(data) adapter = ImageScaling(image, None) img_high_quality = adapter.scale('image', width=100, height=80) size_high_quality = img_high_quality.size # lower scaling quality and get scaled image's size at that quality iprops.manage_changeProperties(quality=20) self.assertEqual(iprops.getProperty('quality'), 20) image = ATImage('image').__of__(self.folder) image.setImage(data) adapter = ImageScaling(image, None) img_low_quality = adapter.scale('image', width=100, height=80) size_low_quality = img_low_quality.size # data should be smaller at lower quality self.assertTrue(size_high_quality > size_low_quality)
def testQualityChange(self): settings = getSettings() self.image.update(image=self.getImage('image.jpg')) data = self.getImage('image.jpg') + '\x00' * (1 << 16) # get size of image scaled at default scaling quality self.assertEqual(settings.quality, 88) from Products.ATContentTypes.content.image import ATImage image = ATImage('image').__of__(self.folder) image.setImage(data) adapter = ImageScaling(image, None) img_high_quality = adapter.scale('image', width=100, height=80) size_high_quality = img_high_quality.size # lower scaling quality and get scaled image's size at that quality settings.quality = 20 self.assertEqual(settings.quality, 20) image = ATImage('image').__of__(self.folder) image.setImage(data) adapter = ImageScaling(image, None) img_low_quality = adapter.scale('image', width=100, height=80) size_low_quality = img_low_quality.size # data should be smaller at lower quality self.assertTrue(size_high_quality > size_low_quality)
def testCreateScaleWithoutData(self): folder = self.folder image = folder[folder.invokeFactory('Image', id='image')] adapter = ImageScaling(image, None) foo = adapter.scale('image', width=100, height=80) self.assertEqual(foo, None)