Fix backup cleanup regex

pull/2206/head
Alex Baker 1 year ago
parent 2c6ebf3c3e
commit b1b85444bd

@ -18,6 +18,7 @@ import org.junit.Assert.assertTrue
import org.junit.Before
import org.junit.Test
import org.tasks.R
import org.tasks.backup.BackupConstants.BACKUP_CLEANUP_MATCHER
import org.tasks.backup.TasksJsonExporter
import org.tasks.backup.TasksJsonExporter.ExportType
import org.tasks.injection.InjectingTestCase
@ -77,6 +78,6 @@ class BackupServiceTests : InjectingTestCase() {
// assert file created
val files = temporaryDirectory.listFiles()
assertEquals(1, files!!.size)
assertTrue(files[0].name.matches(BackupWork.BACKUP_FILE_NAME_REGEX))
assertTrue(files[0].name.matches(BACKUP_CLEANUP_MATCHER))
}
}

@ -11,6 +11,7 @@ object BackupConstants {
const val BACKUP_FILE_NAME = "auto.%s.json"
private val MATCHER = Pattern.compile("""(auto|user)\.(\d{2,4})(\d{2})(\d{2})[T-](\d{2})(\d{2})\.json""")
val BACKUP_CLEANUP_MATCHER = Regex("""auto\.\d{6,8}[T-]\d{4}\.json""")
fun isBackupFile(name: String?) = name?.let { MATCHER.matcher(it).matches() } ?: false

@ -11,12 +11,12 @@ import dagger.assisted.AssistedInject
import org.tasks.R
import org.tasks.analytics.Firebase
import org.tasks.backup.BackupConstants
import org.tasks.backup.BackupConstants.BACKUP_CLEANUP_MATCHER
import org.tasks.backup.TasksJsonExporter
import org.tasks.preferences.Preferences
import timber.log.Timber
import java.io.File
import java.io.FileFilter
import java.util.*
@HiltWorker
class BackupWork @AssistedInject constructor(
@ -78,8 +78,7 @@ class BackupWork @AssistedInject constructor(
companion object {
const val DAYS_TO_KEEP_BACKUP = 7
val BACKUP_FILE_NAME_REGEX = Regex("""auto\.[-\d]+\.json""")
private val FILENAME_FILTER = { f: String -> f.matches(BACKUP_FILE_NAME_REGEX) }
private val FILENAME_FILTER = { f: String -> f.matches(BACKUP_CLEANUP_MATCHER) }
val FILE_FILTER = FileFilter { f: File -> FILENAME_FILTER(f.name) }
private val BY_LAST_MODIFIED = { f1: File, f2: File ->
BackupConstants.getTimestamp(f2).compareTo(BackupConstants.getTimestamp(f1))

Loading…
Cancel
Save