diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_00.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_00.binproto new file mode 100644 index 0000000000..87ba9a9cfb Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_00.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_01.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_01.binproto new file mode 100644 index 0000000000..b0ced18927 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_01.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_02.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_02.binproto new file mode 100644 index 0000000000..592eaf3638 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_02.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_03.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_03.binproto new file mode 100644 index 0000000000..a8d8d59a2b Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_03.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_04.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_04.binproto new file mode 100644 index 0000000000..b452c50806 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_04.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_release_notes_05.binproto b/app/src/androidTest/assets/backupTests/chat_release_notes_05.binproto new file mode 100644 index 0000000000..0e5dc43b06 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_release_notes_05.binproto differ diff --git a/app/src/androidTest/java/org/thoughtcrime/securesms/backup/v2/ArchiveImportExportTests.kt b/app/src/androidTest/java/org/thoughtcrime/securesms/backup/v2/ArchiveImportExportTests.kt index ddb3ffaecb..e144cb3581 100644 --- a/app/src/androidTest/java/org/thoughtcrime/securesms/backup/v2/ArchiveImportExportTests.kt +++ b/app/src/androidTest/java/org/thoughtcrime/securesms/backup/v2/ArchiveImportExportTests.kt @@ -63,7 +63,12 @@ class ArchiveImportExportTests { // @Test fun chat() { - runTests { it.startsWith("chat_") && !it.contains("_item") } + runTests { it.matches(Regex("^chat_%d%d.binproto$")) } + } + +// @Test + fun chatReleaseNotes() { + runTests { it.startsWith("chat_release_notes_") } } // @Test diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt index ad43291b23..b8cafc25cf 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt @@ -1639,7 +1639,7 @@ private fun ChatItem.validateChatItem(exportState: ExportState, selfRecipientId: return null } - if (this.incoming != null && exportState.recipientIdToAci[this.authorId] == null && exportState.recipientIdToE164[this.authorId] == null) { + if (this.incoming != null && this.authorId != exportState.releaseNoteRecipientId && exportState.recipientIdToAci[this.authorId] == null && exportState.recipientIdToE164[this.authorId] == null) { Log.w(TAG, ExportSkips.incomingMessageAuthorDoesNotHaveAciOrE164(this.dateSent)) return null }