def test_init_image_with_data_should_be_the_same(self):
        image_data = get_fixture('image1.data', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')
        ir.init_image()

        png_image = Image.open(StringIO(get_fixture('image1.png', as_binary=True)))
        self.assertEqual(ir.image, png_image)
Example #2
0
    def test_init_image_with_data_should_be_the_same(self):
        image_data = get_fixture('image1.data', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')
        ir.init_image()

        png_image = Image.open(
            BytesIO(get_fixture('image1.png', as_binary=True)))
        self.assertEqual(ir.image, png_image)
Example #3
0
    def test_export_docx_to_resized_images_images_with_same_id(self):
        docx_file_path = utils.get_fixture('cloned_images.docx')

        html_file_content = utils.get_fixture('cloned_images.html',
                                              as_binary=True)

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
Example #4
0
    def test_export_docx_to_resized_images_images_width_and_height_as_pt(self):
        docx_file_path = utils.get_fixture('image_with_pt_dimensions.docx')

        html_file_content = utils.get_fixture('image_with_pt_dimensions.html',
                                              as_binary=True)

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
Example #5
0
    def test_export_docx_to_resized_images_rotate_image(self):
        docx_file_path = utils.get_fixture('rotate_image.docx')

        html_file_content = utils.get_fixture('rotate_image.html',
                                              as_binary=True)

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
Example #6
0
    def test_export_docx_to_resized_images(self):
        docx_file_path = utils.get_fixture(
            'png_basic_resize_linked_photo.docx')
        html_file_content = utils.get_fixture(
            'png_basic_resize_linked_photo.html', as_binary=True)

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
    def test_export_docx_to_resized_images(self):
        docx_file_path = utils.get_fixture('png_basic_resize_linked_photo.docx')
        html_file_content = utils.get_fixture(
            'png_basic_resize_linked_photo.html',
            as_binary=True
        )

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
    def test_export_docx_to_resized_images_rotate_image(self):
        docx_file_path = utils.get_fixture('rotate_image.docx')

        html_file_content = utils.get_fixture(
            'rotate_image.html',
            as_binary=True
        )

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
    def test_export_docx_to_resized_images_images_width_and_height_as_pt(self):
        docx_file_path = utils.get_fixture('image_with_pt_dimensions.docx')

        html_file_content = utils.get_fixture(
            'image_with_pt_dimensions.html',
            as_binary=True
        )

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
    def test_export_docx_to_resized_images_images_with_same_id(self):
        docx_file_path = utils.get_fixture('cloned_images.docx')

        html_file_content = utils.get_fixture(
            'cloned_images.html',
            as_binary=True
        )

        html = self.exporter(docx_file_path).export()

        utils.assert_html_equal(html, html_file_content)
Example #11
0
    def test_height_as_pt_width_as_px(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '10.7pt', '20px')

        self.assertEqual(ir.width, 14)
        self.assertEqual(ir.height, 20)
        self.assertTrue(ir.has_height_and_width())
    def test_height_as_pt_width_as_px(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '10.7pt', '20px')

        self.assertEqual(ir.width, 14)
        self.assertEqual(ir.height, 20)
        self.assertTrue(ir.has_height_and_width())
    def test_update_filename_empty_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, '.png', '48 px', '48 px')

        res = ir.update_filename()

        self.assertIsNone(res)
Example #14
0
    def test_update_filename_empty_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, '', '48 px', '48 px')

        res = ir.update_filename()

        self.assertIsNone(res)
    def test_get_image_data_and_filename(self):
        uri = 'http://httpbin.org/image/png'
        mock_request(uri, fixture='image1.png')

        img_data, filename = image.get_image_data_and_filename(uri, 'png.png')
        local_data = get_fixture('image1.png', as_binary=True)

        self.assertEqual(local_data, img_data)
        self.assertEqual(filename, 'png')
    def test_resize_image_skip(self):
        image_data = get_fixture('image1.data', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        result = ir.resize_image()

        self.assertFalse(result)
Example #17
0
    def test_has_skipable_extension_true(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data,
                          'image1.png',
                          '100 px',
                          '100 px',
                          skip_extensions=['png'])

        self.assertTrue(ir.has_skippable_extension())
Example #18
0
    def test_resize_image_skip(self):
        image_data = get_fixture('image1.data', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        result = ir.resize_image()

        self.assertFalse(result)
Example #19
0
    def test_get_image_data_and_filename(self):
        uri = 'http://httpbin.org/image/png'
        mock_request(uri, fixture='image1.png')

        img_data, filename = image.get_image_data_and_filename(uri, 'png.png')
        local_data = get_fixture('image1.png', as_binary=True)

        self.assertEqual(local_data, img_data)
        self.assertEqual(filename, 'png')
Example #20
0
    def test_get_image_from_src_url(self):
        uri = 'http://httpbin.org/image/png'
        mock_request(uri, fixture='image1.png')

        web_data = image.get_image_from_src(uri)

        local_data = get_fixture('image1.png', as_binary=True)

        self.assertEqual(web_data, local_data)
    def test_get_image_from_src_url(self):
        uri = 'http://httpbin.org/image/png'
        mock_request(uri, fixture='image1.png')

        web_data = image.get_image_from_src(uri)

        local_data = get_fixture('image1.png', as_binary=True)

        self.assertEqual(web_data, local_data)
    def test_update_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')

        ir.init_image()

        ir.update_filename()

        self.assertEqual(ir.filename, 'image1.png')
Example #23
0
    def test_update_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')

        ir.init_image()

        ir.update_filename()

        self.assertEqual(ir.filename, 'image1.png')
    def test_update_filename_to_gif(self):
        image_data = get_fixture('image2.tif', as_binary=True)

        ir = ImageResizer(image_data, 'image2.tif', '48 px', '48 px')

        ir.init_image()
        ir.resize_image()

        ir.update_filename()

        self.assertEqual(ir.filename, 'image2.gif')
Example #25
0
    def test_update_filename_to_gif(self):
        image_data = get_fixture('image2.tif', as_binary=True)

        ir = ImageResizer(image_data, 'image2.tif', '48 px', '48 px')

        ir.init_image()
        ir.resize_image()

        ir.update_filename()

        self.assertEqual(ir.filename, 'image2.gif')
    def test_resize_image_success(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        result = ir.resize_image()

        self.assertTrue(result)

        self.assertEqual(ir.image.size, (48, 48))
    def test_has_skipable_extension_true(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(
            image_data,
            'image1.png',
            '100 px',
            '100 px',
            skip_extensions=['png']
        )

        self.assertTrue(ir.has_skippable_extension())
Example #28
0
    def test_resize_image_success(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        result = ir.resize_image()

        self.assertTrue(result)

        self.assertEqual(ir.image.size, (48, 48))
Example #29
0
    def test_resize_image_raise_exception(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.image = PilImageMock(
            size=(50, 50),
            on_resize_exception=IOError("Invalid image to resize"),
            on_save_exception=IOError("Invalid image to save"))

        with self.assertRaisesRegexp(IOError, "Invalid image to save"):
            ir.resize_image()
Example #30
0
    def test_resize_image_keep_original(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')

        ir.init_image()

        result = ir.resize_image()

        self.assertFalse(result)

        self.assertEqual(ir.image.size, (100, 100))
Example #31
0
    def test_resize_image_not_resized(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        # there may be cases when image is empty
        ir.image = None

        result = ir.resize_image()

        self.assertFalse(result)
    def test_resize_image_not_resized(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '48 px', '48 px')
        ir.init_image()

        # there may be cases when image is empty
        ir.image = None

        result = ir.resize_image()

        self.assertFalse(result)
    def test_resize_image_keep_original(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')

        ir.init_image()

        result = ir.resize_image()

        self.assertFalse(result)

        self.assertEqual(ir.image.size, (100, 100))
    def test_has_height_and_width_false(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '0 px', '10 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '10 px', '0 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '0 px', '0 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '', '')
        self.assertFalse(ir.has_height_and_width())
Example #35
0
    def test_has_height_and_width_false(self):
        image_data = get_fixture('image1.png', as_binary=True)

        ir = ImageResizer(image_data, 'image1.png', '0 px', '10 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '10 px', '0 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '0 px', '0 px')
        self.assertFalse(ir.has_height_and_width())

        ir = ImageResizer(image_data, 'image1.png', '', '')
        self.assertFalse(ir.has_height_and_width())
    def test_resize_image_change_to_gif(self):
        image_data = get_fixture('image2.tif', as_binary=True)

        ir = ImageResizer(image_data, 'image2.tif', '50 px', '50 px')

        ir.init_image()
        result = ir.resize_image()

        self.assertTrue(result)

        self.assertEqual(ir.image_format, 'GIF')

        image = Image.open(StringIO(image_data)).resize(
            (50, 50),
            Image.ANTIALIAS
        )

        self.assertEqual(image, ir.image)
        self.assertEqual('image2.tif', ir.filename)
Example #37
0
    def test_resize_image_change_to_gif(self):
        image_data = get_fixture('image2.tif', as_binary=True)

        ir = ImageResizer(image_data, 'image2.tif', '50 px', '50 px')

        ir.init_image()
        result = ir.resize_image()

        self.assertTrue(result)

        self.assertEqual(ir.image_format, 'GIF')

        image = Image.open(BytesIO(image_data)).resize((50, 50),
                                                       Image.ANTIALIAS)

        self.assertEqual('image2.tif', ir.filename)

        # There are some issues while comparing 'dpi' value of image even thought the values
        # are the same. So, we just make sure we convert to float so that comparision pass OK.
        image.info['dpi'] = tuple(map(float, image.info['dpi']))
        ir.image.info['dpi'] = tuple(map(float, ir.image.info['dpi']))

        self.assertEqual(image, ir.image)
    def test_invalid_dimention_error(self):
        image_data = get_fixture('image1.png', as_binary=True)

        with self.assertRaisesRegexp(ValueError, 'invalid literal for int()'):
            ImageResizer(image_data, 'image1.png', '0a px', '10b px')
    def test_get_image_from_src_data(self):
        img_data = get_fixture('image1.data', as_binary=True)
        result = image.get_image_from_src(img_data)

        self.assertEqual(img_data, result)
Example #40
0
 def test_init_image(self):
     image_data = get_fixture('image1.png', as_binary=True)
     ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')
     ir.init_image()
     self.assertEqual(ir.image, Image.open(BytesIO(image_data)))
Example #41
0
    def test_invalid_dimention_error(self):
        image_data = get_fixture('image1.png', as_binary=True)

        with self.assertRaisesRegexp(ValueError, 'invalid literal for int()'):
            ImageResizer(image_data, 'image1.png', '0a px', '10b px')
Example #42
0
    def test_has_skipable_extension_invalid_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, '', '100 px', '100 px')

        self.assertFalse(ir.has_skippable_extension())
 def test_init_image(self):
     image_data = get_fixture('image1.png', as_binary=True)
     ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')
     ir.init_image()
     self.assertEqual(ir.image, Image.open(StringIO(image_data)))
Example #44
0
    def test_init_object(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')

        self.assertTrue(ir)
    def test_has_skipable_extension_invalid_filename(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, '', '100 px', '100 px')

        self.assertFalse(ir.has_skippable_extension())
Example #46
0
    def test_get_image_from_src_data(self):
        img_data = get_fixture('image1.data', as_binary=True)
        result = image.get_image_from_src(img_data)

        self.assertEqual(img_data, result)
    def test_init_object(self):
        image_data = get_fixture('image1.png', as_binary=True)
        ir = ImageResizer(image_data, 'image1.png', '100 px', '100 px')

        self.assertTrue(ir)