Skip to content
Snippets Groups Projects
Unverified Commit 2c60dde8 authored by Mike McCready's avatar Mike McCready Committed by GitHub
Browse files

Make Error report filename Windows compatible (EXPOSUREAPP-7266) (COMMUNITY) (#3235)


* Make snapshot log filename Windows compatible (replace : with _)

* Modify LogSnapshotterTest for changed filename timezone and colon replacement

Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
parent de6e4d74
No related branches found
No related tags found
No related merge requests found
......@@ -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)
......
......@@ -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")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment