Apply stylistic fixes

This commit is contained in:
twodoorcoupe
2024-06-14 12:33:47 +02:00
parent cef3512bae
commit a9797f828c
7 changed files with 76 additions and 16 deletions

View File

@@ -28,7 +28,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
from dataclasses import astuple
from hashlib import blake2b
import os
import shutil
@@ -309,8 +308,11 @@ class CoverArtImage:
self.datahash = None
try:
(self.width, self.height, self.mimetype, self.extension,
self.datalength) = astuple(imageinfo.identify(data))
info = imageinfo.identify(data)
self.width, self.height = info.width, info.height
self.mimetype = info.mime
self.extension = info.extension
self.datalength = info.datalen
except imageinfo.IdentificationError as e:
raise CoverArtImageIdentificationError(e)

View File

@@ -35,6 +35,7 @@ from picard.extension_points.cover_art_processors import (
ProcessingTarget,
get_cover_art_processors,
)
from picard.util.imageinfo import IdentificationError
def run_image_filters(data):
@@ -75,6 +76,8 @@ def run_image_processors(data, coverartimage):
coverartimage,
1000 * (time.time() - start_time)
)
except IdentificationError as e:
raise CoverArtProcessingError(e)
except CoverArtProcessingError as e:
coverartimage.set_tags_data(tags_data)
coverartimage.set_external_file_data(file_data)

View File

@@ -70,6 +70,7 @@ class ResizeImage(ImageProcessor):
)
image.info.width = scaled_image.width()
image.info.height = scaled_image.height()
image.info.datalen = scaled_image.sizeInBytes()
image.set_result(scaled_image)

View File

@@ -63,14 +63,14 @@ class ProcessingImage:
else:
self._qimage = QImage.fromData(image)
def get_result(self, image_format=None, default_format=False):
def get_result(self, image_format=None, default_format=False, quality=90):
if image_format is None:
if not default_format:
return self._qimage
else:
image_format = self.info.format
buffer = QBuffer()
if not self._qimage.save(buffer, image_format, quality=90):
if not self._qimage.save(buffer, image_format, quality=quality):
raise CoverArtEncodingError(f"Failed to encode into {image_format}")
return buffer.data()

View File

@@ -74,7 +74,13 @@ class IdentifyImageType:
return self._result()
def _result(self):
return ImageInfo(int(self.w), int(self.h), self.mime, self.extension, self.datalen)
return ImageInfo(
width=int(self.w),
height=int(self.h),
mime=self.mime,
extension=self.extension,
datalen=self.datalen,
)
def match(self):
raise NotImplementedError

View File

@@ -31,10 +31,10 @@ from picard.coverart.processing.filters import (
)
from picard.coverart.processing.processors import ResizeImage
from picard.extension_points.cover_art_processors import (
CoverArtProcessingError,
ProcessingImage,
ProcessingTarget,
)
from picard.util.imageinfo import IdentificationError
def create_fake_image(width, height, image_format):
@@ -142,5 +142,5 @@ class ImageProcessorsTest(PicardTestCase):
def test_identification_error(self):
image = create_fake_image(0, 0, "jpg")
coverartimage = CoverArtImage()
with self.assertRaises(IdentificationError):
with self.assertRaises(CoverArtProcessingError):
run_image_processors(image, coverartimage)

View File

@@ -36,7 +36,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/gif', '.gif', 5806)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/gif',
extension='.gif',
datalen=5806
)
)
def test_png(self):
@@ -45,7 +51,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/png', '.png', 11137)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/png',
extension='.png',
datalen=11137
)
)
def test_jpeg(self):
@@ -54,7 +66,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/jpeg', '.jpg', 8550)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/jpeg',
extension='.jpg',
datalen=8550
)
)
def test_webp_vp8(self):
@@ -63,7 +81,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/webp', '.webp', 6178)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/webp',
extension='.webp',
datalen=6178
)
)
def test_webp_vp8l(self):
@@ -72,7 +96,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/webp', '.webp', 9432)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/webp',
extension='.webp',
datalen=9432
)
)
def test_webp_vp8x(self):
@@ -81,7 +111,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/webp', '.webp', 6858)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/webp',
extension='.webp',
datalen=6858
)
)
def test_webp_insufficient_data(self):
@@ -94,7 +130,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(140, 96, 'image/tiff', '.tiff', 12509)
imageinfo.ImageInfo(
width=140,
height=96,
mime='image/tiff',
extension='.tiff',
datalen=12509
)
)
def test_pdf(self):
@@ -103,7 +145,13 @@ class IdentifyTest(PicardTestCase):
with open(file, 'rb') as f:
self.assertEqual(
imageinfo.identify(f.read()),
imageinfo.ImageInfo(0, 0, 'application/pdf', '.pdf', 10362)
imageinfo.ImageInfo(
width=0,
height=0,
mime='application/pdf',
extension='.pdf',
datalen=10362
)
)
def test_not_enough_data(self):