From b840d481a851570432fa2710e6e109440ababeb0 Mon Sep 17 00:00:00 2001 From: ugurtafrali Date: Tue, 14 Apr 2026 00:26:11 +0300 Subject: [PATCH] Add timestamp to export filename --- .../java/protect/card_locker/ImportExportActivity.kt | 10 +++++++++- .../protect/card_locker/ImportExportActivityTest.kt | 7 +++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/protect/card_locker/ImportExportActivity.kt b/app/src/main/java/protect/card_locker/ImportExportActivity.kt index aa8a2aa13..b0efdb08e 100644 --- a/app/src/main/java/protect/card_locker/ImportExportActivity.kt +++ b/app/src/main/java/protect/card_locker/ImportExportActivity.kt @@ -27,6 +27,9 @@ import protect.card_locker.importexport.ImportExportResultType import java.io.IOException import java.io.InputStream import java.io.OutputStream +import java.text.SimpleDateFormat +import java.util.Date +import java.util.Locale class ImportExportActivity : CatimaAppCompatActivity() { private lateinit var binding: ImportExportActivityBinding @@ -45,6 +48,11 @@ class ImportExportActivity : CatimaAppCompatActivity() { companion object { private const val TAG = "Catima" + + internal fun getExportFilename(): String { + val sdf = SimpleDateFormat("yyyyMMdd", Locale.US) + return "catima_${sdf.format(Date())}.zip" + } } override fun onCreate(savedInstanceState: Bundle?) { @@ -107,7 +115,7 @@ class ImportExportActivity : CatimaAppCompatActivity() { val intentCreateDocumentAction = Intent(Intent.ACTION_CREATE_DOCUMENT).apply { addCategory(Intent.CATEGORY_OPENABLE) type = "application/zip" - putExtra(Intent.EXTRA_TITLE, "catima.zip") + putExtra(Intent.EXTRA_TITLE, getExportFilename()) } val exportButton: Button = binding.exportButton diff --git a/app/src/test/java/protect/card_locker/ImportExportActivityTest.kt b/app/src/test/java/protect/card_locker/ImportExportActivityTest.kt index ecd5cc240..c5110efe8 100644 --- a/app/src/test/java/protect/card_locker/ImportExportActivityTest.kt +++ b/app/src/test/java/protect/card_locker/ImportExportActivityTest.kt @@ -7,6 +7,7 @@ import android.content.pm.ApplicationInfo import android.content.pm.ResolveInfo import android.view.View import org.junit.Assert.assertEquals +import org.junit.Assert.assertTrue import org.junit.Test import org.junit.runner.RunWith import org.robolectric.Robolectric @@ -61,6 +62,12 @@ class ImportExportActivityTest { assertEquals(state, buttonView.visibility) } + @Test + fun testExportFilenameHasTimestamp() { + val filename = ImportExportActivity.getExportFilename() + assertTrue(filename.matches(Regex("catima_\\d{8}\\.zip"))) + } + @Test fun testAllOptionsAvailable() { registerIntentHandler(Intent.ACTION_PICK)