From e1e3c013cfbc50c649bb11c76e401325824defd7 Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Sat, 18 Jan 2020 08:17:00 +0800 Subject: [PATCH] build: partial revert of 1d5500d5 fix tests --- .../org/gotson/komga/domain/service/BookAnalyzer.kt | 8 ++++---- .../org/gotson/komga/domain/service/BookAnalyzerTest.kt | 4 +++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/service/BookAnalyzer.kt b/komga/src/main/kotlin/org/gotson/komga/domain/service/BookAnalyzer.kt index 79e8e8064..2770d2625 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/service/BookAnalyzer.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/service/BookAnalyzer.kt @@ -76,7 +76,7 @@ class BookAnalyzer( logger.info { "Book has ${pages.size} pages" } logger.info { "Trying to generate cover for book: $book" } - val thumbnail = generateThumbnail(book) + val thumbnail = generateThumbnail(book, mediaType, pages.first().fileName) return Media(mediaType = mediaType, status = Media.Status.READY, pages = pages, thumbnail = thumbnail, comment = entriesErrorSummary) } @@ -90,7 +90,7 @@ class BookAnalyzer( throw MediaNotReadyException() } - val thumbnail = generateThumbnail(book) + val thumbnail = generateThumbnail(book, book.media.mediaType!!, book.media.pages.first().fileName) return Media( mediaType = book.media.mediaType, @@ -100,9 +100,9 @@ class BookAnalyzer( ) } - private fun generateThumbnail(book: Book): ByteArray? = + private fun generateThumbnail(book: Book, mediaType: String, entry: String): ByteArray? = try { - getPageContent(book, 1).let { cover -> + supportedMediaTypes.getValue(mediaType).getEntryStream(book.path(), entry).let { cover -> imageConverter.resizeImage(cover, thumbnailFormat, thumbnailSize) } } catch (ex: Exception) { diff --git a/komga/src/test/kotlin/org/gotson/komga/domain/service/BookAnalyzerTest.kt b/komga/src/test/kotlin/org/gotson/komga/domain/service/BookAnalyzerTest.kt index e0788d9d2..fc07d484d 100644 --- a/komga/src/test/kotlin/org/gotson/komga/domain/service/BookAnalyzerTest.kt +++ b/komga/src/test/kotlin/org/gotson/komga/domain/service/BookAnalyzerTest.kt @@ -6,6 +6,7 @@ import io.mockk.slot import org.assertj.core.api.Assertions.assertThat import org.gotson.komga.domain.model.MediaContainerEntry import org.gotson.komga.domain.model.makeBook +import org.gotson.komga.infrastructure.image.ImageConverter import org.gotson.komga.infrastructure.mediacontainer.ContentDetector import org.gotson.komga.infrastructure.mediacontainer.PdfExtractor import org.gotson.komga.infrastructure.mediacontainer.RarExtractor @@ -17,8 +18,9 @@ class BookAnalyzerTest { private val mockZip = mockk() private val mockRar = mockk() private val mockPDf = mockk() + private val mockImageConverter = mockk() - private val bookAnalyzer = BookAnalyzer(mockContent, mockZip, mockRar, mockPDf) + private val bookAnalyzer = BookAnalyzer(mockContent, mockZip, mockRar, mockPDf, mockImageConverter) @Test fun `given book with unordered pages when analyzing then thumbnail should always be the first in natural order`() {