diff --git a/Encode/build.gradle.kts b/Encode/build.gradle.kts index bc31250f..1e677ee4 100644 --- a/Encode/build.gradle.kts +++ b/Encode/build.gradle.kts @@ -44,6 +44,8 @@ dependencies { testImplementation("org.junit.jupiter:junit-jupiter-api:5.8.1") testImplementation("org.junit.jupiter:junit-jupiter-params:5.8.1") testImplementation("org.assertj:assertj-core:3.4.1") + testImplementation("org.mockito:mockito-core:3.+") + } tasks.test { diff --git a/Encode/src/main/kotlin/no/iktdev/streamit/content/encode/runner/EncodeDaemon.kt b/Encode/src/main/kotlin/no/iktdev/streamit/content/encode/runner/EncodeDaemon.kt index bed2b696..05a948eb 100644 --- a/Encode/src/main/kotlin/no/iktdev/streamit/content/encode/runner/EncodeDaemon.kt +++ b/Encode/src/main/kotlin/no/iktdev/streamit/content/encode/runner/EncodeDaemon.kt @@ -4,6 +4,7 @@ import mu.KotlinLogging import no.iktdev.streamit.content.encode.EncodeEnv import no.iktdev.exfl.observable.ObservableList import no.iktdev.exfl.observable.observableListOf +import no.iktdev.exfl.using import no.iktdev.streamit.content.common.deamon.Daemon import no.iktdev.streamit.content.common.deamon.IDaemon import no.iktdev.streamit.content.common.dto.reader.work.EncodeWork @@ -16,9 +17,7 @@ import java.io.FileWriter private val logger = KotlinLogging.logger {} -class EncodeDaemon(val referenceId: String, val work: EncodeWork, val daemonInterface: IEncodeListener): IDaemon { - val logDir = File("/src/logs") - lateinit var outLogFile: File +class EncodeDaemon(val referenceId: String, val work: EncodeWork, val daemonInterface: IEncodeListener, val outFile: File = File("src").using("logs", "${work.workId}-${work.collection}.log")): IDaemon { var outputCache = observableListOf() private val decoder = ProgressDecoder(work) fun produceProgress(items: List): Progress? { @@ -47,8 +46,7 @@ class EncodeDaemon(val referenceId: String, val work: EncodeWork, val daemonInte } } }) - logDir.mkdirs() - outLogFile = File(logDir, "${work.workId}-${work.collection}.log") + outFile.parentFile.mkdirs() } suspend fun runUsingWorkItem(): Int { @@ -87,8 +85,8 @@ class EncodeDaemon(val referenceId: String, val work: EncodeWork, val daemonInte } writeToLog(line) } - private fun writeToLog(line: String) { - val fileWriter = FileWriter(outLogFile, true) // true indikerer at vi ønsker å appende til filen + fun writeToLog(line: String) { + val fileWriter = FileWriter(outFile, true) // true indikerer at vi ønsker å appende til filen val bufferedWriter = BufferedWriter(fileWriter) // Skriv logglinjen til filen diff --git a/Encode/src/test/kotlin/no/iktdev/streamit/content/encode/progress/DecodedProgressDataDecoderTest.kt b/Encode/src/test/kotlin/no/iktdev/streamit/content/encode/progress/DecodedProgressDataDecoderTest.kt index 2331eae4..d813e151 100644 --- a/Encode/src/test/kotlin/no/iktdev/streamit/content/encode/progress/DecodedProgressDataDecoderTest.kt +++ b/Encode/src/test/kotlin/no/iktdev/streamit/content/encode/progress/DecodedProgressDataDecoderTest.kt @@ -5,8 +5,15 @@ import no.iktdev.streamit.content.encode.Resources import no.iktdev.streamit.content.encode.runner.EncodeDaemon import no.iktdev.streamit.content.encode.runner.IEncodeListener import org.assertj.core.api.Assertions.assertThat +import org.junit.BeforeClass import org.junit.jupiter.api.Test import org.junit.jupiter.api.assertDoesNotThrow +import org.mockito.ArgumentMatchers.anyBoolean +import org.mockito.ArgumentMatchers.anyString +import org.mockito.Mockito.* +import java.io.BufferedWriter +import java.io.File +import java.io.FileWriter import java.util.UUID class DecodedProgressDataDecoderTest { @@ -53,6 +60,9 @@ class DecodedProgressDataDecoderTest { lines.forEach { decoder.setDuration(it) } assertThat(decoder.duration).isNotNull() val produced = mutableListOf() + + val tempFile = File.createTempFile("test", ".log") + val encoder = EncodeDaemon(UUID.randomUUID().toString(), encodeWork, object : IEncodeListener { override fun onStarted(referenceId: String, work: EncodeWork) { } @@ -64,7 +74,7 @@ class DecodedProgressDataDecoderTest { override fun onEnded(referenceId: String, work: EncodeWork) { } - }) + }, tempFile) lines.forEach { diff --git a/Reader/build.gradle.kts b/Reader/build.gradle.kts index 4192a821..2075827f 100644 --- a/Reader/build.gradle.kts +++ b/Reader/build.gradle.kts @@ -55,6 +55,8 @@ dependencies { testImplementation("org.junit.jupiter:junit-jupiter-api:5.8.1") testImplementation("org.junit.jupiter:junit-jupiter-params:5.8.1") testImplementation("org.assertj:assertj-core:3.4.1") + testImplementation("org.mockito:mockito-core:3.+") + }