# standard imports import os import unittest # external imports import PIL.Image # objects to test from bsie.reader.preview.utils import resize ## code ## class TestUtils(unittest.TestCase): def test_resize(self): img = PIL.Image.open(os.path.join(os.path.dirname(__file__), 'testimage.jpg')) landscape = img.resize((100, 80)) portrait = img.resize((80, 100)) self.assertEqual(img.size, (100, 100)) self.assertEqual(landscape.size, (100, 80)) self.assertEqual(portrait.size, (80, 100)) # resize can downscale self.assertEqual(resize(img, 10).size, (10, 10)) self.assertEqual(resize(img, 20).size, (20, 20)) # resize can upscale self.assertEqual(resize(img, 200).size, (200, 200)) # aspect ratio is preserved self.assertEqual(resize(landscape, 10).size, (10, 8)) self.assertEqual(resize(portrait, 10).size, (8, 10)) ## main ## if __name__ == '__main__': unittest.main() ## EOF ##