示例#1
0
    def file_type_test(self,
                       bucket_method,
                       test_file,
                       content_type,
                       resized_size):
        bucket = Mock()
        bucket_method.return_value = bucket
        new_key = Mock()
        bucket.new_key.return_value = new_key
        image_handler = ImageHandler(filename=test_file)
        truck = ImageTruck.new_from_file(test_file)
        session = Client().session()
        image = ImageTable(filename='badcafe')
        session.add(image)
        session.flush()
        after_upload = Mock()

        ResizeImage._resize_image(image,
                                  image_handler,
                                  truck,
                                  'thumbnail',
                                  after_upload)

        new_key.set_metadata.assert_called_with('Content-Type', content_type)
        resized_contents = new_key.set_contents_from_string.call_args[0][0]

        image_handler = ImageHandler(blob=resized_contents)
        eq_(image_handler.size, resized_size)

        after_upload.assert_called_once_with('thumbnail')
示例#2
0
    def file_type_test(self,
                       bucket_method,
                       test_file_name,
                       content_type,
                       resized_size):
        bucket = Mock()
        bucket_method.return_value = bucket
        new_key = Mock()
        bucket.new_key.return_value = new_key
        test_file = os.path.join(os.path.dirname(__file__), test_file_name)
        image_handler = ImageHandler.open(test_file)
        with open(test_file, 'r') as fh:
            truck = ImageTruck.new_from_stream(fh, content_type)
        session = Client().session()
        image = ImageTable(filename='badcafe')
        session.add(image)
        session.flush()

        ResizeImage._resize_image(image, image_handler, truck, 'thumbnail')

        new_key.set_metadata.assert_called_with('Content-Type', content_type)
        resized_contents = new_key.set_contents_from_string.call_args[0][0]

        image_handler = ImageHandler.open(StringIO.StringIO(resized_contents))
        eq_(image_handler.size, resized_size)
示例#3
0
    def test_resize_a_portrait_image(self, MockImage):
        session = Client().session()
        image_handler = Mock()
        image_handler.size = (427, 640)
        image_handler.format = 'JPEG'
        image = ImageTable(filename='badcafe')
        session.add(image)
        session.flush()

        ResizeImage._resize_image(image, image_handler, Mock(), 'medium')

        resizes = session.query(ImageResize).all()
        eq_(len(resizes), 1)
        eq_(resizes[0].height, 500)
        eq_(resizes[0].width, 333)
示例#4
0
    def test_resize_an_image(self):
        test_file = os.path.join(os.path.dirname(__file__),
                                 'test_image_640x427.jpg')
        image_handler = ImageHandler.open(test_file)
        truck = Mock()
        session = Client().session()
        image = ImageTable(filename='badcafe')
        session.add(image)
        session.flush()

        ResizeImage._resize_image(image, image_handler, truck, 'thumbnail')

        resizes = session.query(ImageResize).all()
        eq_(len(resizes), 1)
        eq_(resizes[0].width, 100)
        eq_(resizes[0].height, 66)
        eq_(resizes[0].suffix, 'thumbnail')

        (args, kwargs) = truck.upload_resize.call_args
        eq_(args[1], 'thumbnail')
示例#5
0
    def test_resize_an_image(self):
        image_handler = ImageHandler(filename=SMALL_JPG)
        truck = Mock()
        session = Client().session()
        image = ImageTable(filename='badcafe')
        session.add(image)
        session.flush()

        after_upload = Mock()
        ResizeImage._resize_image(image,
                                  image_handler,
                                  truck,
                                  'thumbnail',
                                  after_upload)

        resizes = session.query(ImageResize).all()
        eq_(len(resizes), 1)
        eq_(resizes[0].width, 100)
        eq_(resizes[0].height, 66)
        eq_(resizes[0].suffix, 'thumbnail')

        (args, kwargs) = truck.upload_resize.call_args
        eq_(args[1], 'thumbnail')
        after_upload.assert_called_once_with('thumbnail')