diff --git a/app/lib/service/download_counts/sync_download_counts.dart b/app/lib/service/download_counts/sync_download_counts.dart index 1f7b0a1fa3..79751a53e4 100644 --- a/app/lib/service/download_counts/sync_download_counts.dart +++ b/app/lib/service/download_counts/sync_download_counts.dart @@ -143,7 +143,7 @@ Future syncDownloadCounts() async { final syncDate = today.addCalendarDays(-i); final fileName = [ 'daily_download_counts', - '${syncDate.year}-${syncDate.month}-${syncDate.day}T00:00:00Z', + formatDateForFileName(syncDate), 'data-000000000000.jsonl', ].join('/'); final success = await processDownloadCounts(fileName, syncDate); @@ -153,7 +153,7 @@ Future syncDownloadCounts() async { } final yesterdayFileName = [ 'daily_download_counts', - '${yesterday.year}-${yesterday.month}-${yesterday.day}T00:00:00Z', + formatDateForFileName(yesterday), 'data-000000000000.jsonl', ].join('/'); @@ -171,3 +171,9 @@ Future syncDownloadCounts() async { } } } + +String formatDateForFileName(DateTime date) { + final month = date.month.toString().padLeft(2, '0'); + final day = date.day.toString().padLeft(2, '0'); + return '${date.year}-$month-${day}T00:00:00Z'; +} diff --git a/app/test/service/download_counts/download_counts_test.dart b/app/test/service/download_counts/download_counts_test.dart index f9bd4350a6..45f6df0581 100644 --- a/app/test/service/download_counts/download_counts_test.dart +++ b/app/test/service/download_counts/download_counts_test.dart @@ -202,7 +202,7 @@ void main() { final date = today.addCalendarDays(-i); final fileName = [ 'daily_download_counts', - '${date.year}-${date.month}-${date.day}T00:00:00Z', + formatDateForFileName(date), 'data-000000000000.jsonl', ].join('/'); await generateFakeDownloadCounts( @@ -235,7 +235,7 @@ void main() { final date = today.addCalendarDays(-i); final fileName = [ 'daily_download_counts', - '${date.year}-${date.month}-${date.day}T00:00:00Z', + formatDateForFileName(date), 'data-000000000000.jsonl', ].join('/'); await generateFakeDownloadCounts( @@ -271,15 +271,14 @@ void main() { messages, contains('Failed to read ' '"daily_download_counts/' - '${yesterday.year}-${yesterday.month}-${yesterday.day}' - 'T00:00:00Z/data-000000000000.jsonl".')); + '${formatDateForFileName(yesterday)}' + '/data-000000000000.jsonl".')); expect( messages, contains( 'Download counts sync was partial. The following files failed:\n' - '[daily_download_counts/' - '${yesterday.year}-${yesterday.month}-${yesterday.day}' - 'T00:00:00Z/data-000000000000.jsonl]')); + '[daily_download_counts/${formatDateForFileName(yesterday)}' + '/data-000000000000.jsonl]')); }); testWithProfile('Sync download counts - fail', fn: () async { @@ -290,7 +289,7 @@ void main() { final date = today.addCalendarDays(-i); final fileName = [ 'daily_download_counts', - '${date.year}-${date.month}-${date.day}T00:00:00Z', + formatDateForFileName(date), 'data-000000000000.jsonl', ].join('/'); await generateFakeDownloadCounts( @@ -310,8 +309,8 @@ void main() { exception, 'Exception: Download counts sync was partial. The following files failed:' '[daily_download_counts/' - '${skippedDate.year}-${skippedDate.month}-${skippedDate.day}' - 'T00:00:00Z/data-000000000000.jsonl]'); + '${formatDateForFileName(skippedDate)}' + '/data-000000000000.jsonl]'); final countData = await downloadCountsBackend.lookupDownloadCountData('neon');