diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_00.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_00.binproto new file mode 100644 index 0000000000..6b761fb1c8 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_00.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_01.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_01.binproto new file mode 100644 index 0000000000..8f14f85cf1 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_01.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_02.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_02.binproto new file mode 100644 index 0000000000..afd681f42e Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_02.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_03.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_03.binproto new file mode 100644 index 0000000000..7410d0614e Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_03.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_04.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_04.binproto new file mode 100644 index 0000000000..40a729a423 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_04.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_05.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_05.binproto new file mode 100644 index 0000000000..457f3c8b6a Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_05.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_06.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_06.binproto new file mode 100644 index 0000000000..6ca82975b0 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_06.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_07.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_07.binproto new file mode 100644 index 0000000000..ea00697ed9 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_07.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_08.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_08.binproto new file mode 100644 index 0000000000..741d08691c Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_08.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_09.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_09.binproto new file mode 100644 index 0000000000..725d81333d Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_09.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_10.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_10.binproto new file mode 100644 index 0000000000..1a186b6b5c Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_10.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_11.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_11.binproto new file mode 100644 index 0000000000..8a007b9bde Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_11.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_12.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_12.binproto new file mode 100644 index 0000000000..e67ac62d5c Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_12.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_13.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_13.binproto new file mode 100644 index 0000000000..e187a10a98 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_13.binproto differ diff --git a/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_14.binproto b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_14.binproto new file mode 100644 index 0000000000..34972bb7f4 Binary files /dev/null and b/app/src/androidTest/assets/backupTests/chat_item_standard_message_group_text_only_14.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 10bb44017b..b9001228dd 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 @@ -171,6 +171,11 @@ class ArchiveImportExportTests { runTests { it.startsWith("chat_item_standard_message_standard_attachments_") } } +// @Test + fun chatItemStandardMessageGroupTextOnly() { + runTests { it.startsWith("chat_item_standard_message_group_text_only_") } + } + // @Test fun chatItemStandardMessageTextOnly() { runTests { it.startsWith("chat_item_standard_message_text_only_") } 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 abd5f6793c..f4fc7c4476 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 @@ -1379,7 +1379,7 @@ private fun List?.toRemoteSendStatus(message reason = SendStatus.Failed.FailureReason.NETWORK ) } - MessageTypes.isFailedMessageType(messageRecord.type) -> { + it.status == GroupReceiptTable.STATUS_FAILED -> { statusBuilder.failed = SendStatus.Failed( reason = SendStatus.Failed.FailureReason.UNKNOWN ) diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt index 97c398b9b5..db3b31a351 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt @@ -1073,7 +1073,7 @@ class ChatItemArchiveImporter( this.read != null -> GroupReceiptTable.STATUS_READ this.viewed != null -> GroupReceiptTable.STATUS_VIEWED this.skipped != null -> GroupReceiptTable.STATUS_SKIPPED - this.failed != null -> GroupReceiptTable.STATUS_UNKNOWN + this.failed != null -> GroupReceiptTable.STATUS_FAILED else -> GroupReceiptTable.STATUS_UNKNOWN } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/GroupReceiptTable.kt b/app/src/main/java/org/thoughtcrime/securesms/database/GroupReceiptTable.kt index db275150b6..118e146be4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/GroupReceiptTable.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/GroupReceiptTable.kt @@ -36,6 +36,7 @@ class GroupReceiptTable(context: Context?, databaseHelper: SignalDatabase?) : Da const val STATUS_READ = 2 const val STATUS_VIEWED = 3 const val STATUS_SKIPPED = 4 + const val STATUS_FAILED = 5 const val CREATE_TABLE = """ CREATE TABLE $TABLE_NAME ( diff --git a/app/src/main/java/org/thoughtcrime/securesms/messagedetails/MessageDetailsRepository.java b/app/src/main/java/org/thoughtcrime/securesms/messagedetails/MessageDetailsRepository.java index 512cc5c073..32717256c3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messagedetails/MessageDetailsRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/messagedetails/MessageDetailsRepository.java @@ -198,6 +198,8 @@ public final class MessageDetailsRepository { return RecipientDeliveryStatus.Status.VIEWED; } else if (groupStatus == GroupReceiptTable.STATUS_SKIPPED) { return RecipientDeliveryStatus.Status.SKIPPED; + } else if (groupStatus == GroupReceiptTable.STATUS_FAILED) { + return RecipientDeliveryStatus.Status.SKIPPED; } throw new AssertionError();