diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotter.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotter.kt index fee05ee7047486d5abeb73265adfac940e12194d..cbbd0e13e69cce358e844b948e19b2cbdef41aa1 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotter.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotter.kt @@ -34,7 +34,8 @@ class LogSnapshotter @Inject constructor( } val now = timeStamper.nowUTC.toUserTimeZone() - val formatter = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss.SSS") + // Avoid ":" in filename since it is a reserved character in Microsoft Windows + val formatter = DateTimeFormat.forPattern("yyyy-MM-dd HH_mm_ss.SSS") val formattedFileName = "CWA Log ${now.toString(formatter)}" if (!snapshotDir.exists() && snapshotDir.mkdirs()) { Timber.tag(TAG).v("Created %s", snapshotDir) diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotterTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotterTest.kt index b4ccfd775f08b740cb3f13e00e4ee8e1b7c3384f..0bba493b4fee073d7150fd8fa0bd294693a80f55 100644 --- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotterTest.kt +++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/bugreporting/debuglog/internal/LogSnapshotterTest.kt @@ -2,12 +2,13 @@ package de.rki.coronawarnapp.bugreporting.debuglog.internal import android.content.Context import de.rki.coronawarnapp.bugreporting.debuglog.DebugLogger +import de.rki.coronawarnapp.util.TimeAndDateExtensions.toUserTimeZone import de.rki.coronawarnapp.util.TimeStamper import io.kotest.matchers.shouldBe import io.mockk.MockKAnnotations import io.mockk.every import io.mockk.impl.annotations.MockK -import org.joda.time.Instant +import org.joda.time.DateTime import org.junit.jupiter.api.AfterEach import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test @@ -26,7 +27,7 @@ class LogSnapshotterTest : BaseIOTest() { private val runningLogFake = File(testDir, "running.log") private val snapshotDir = File(cacheDir, "debuglog_snapshots") - private val expectedSnapshot = File(snapshotDir, "CWA Log 1970-01-01 00:00:00.000.zip") + private val expectedSnapshot = File(snapshotDir, "CWA Log 1970-01-01 00_00_00.000.zip") @BeforeEach fun setup() { @@ -38,7 +39,7 @@ class LogSnapshotterTest : BaseIOTest() { testDir.exists() shouldBe true every { debugLogger.runningLog } returns runningLogFake - every { timeStamper.nowUTC } returns Instant.EPOCH + every { timeStamper.nowUTC.toUserTimeZone() } returns DateTime.parse("1970-01-01T00:00:00.000Z") runningLogFake.parentFile!!.mkdirs() runningLogFake.writeText("1 Doge = 1 Doge")