mirror of
https://github.com/permissionlesstech/bitchat.git
synced 2026-07-26 23:45:19 +00:00
Invalidate media deletion callbacks during panic
This commit is contained in:
@@ -607,6 +607,24 @@ struct ChatMediaTransferCoordinatorContextTests {
|
||||
#expect(coordinator.messageIDToTransferId[messageID] == nil)
|
||||
}
|
||||
|
||||
@Test @MainActor
|
||||
func deleteIncomingStableMediaCompletionAfterPanicIsIgnored() {
|
||||
let context = MockChatMediaTransferContext()
|
||||
let coordinator = ChatMediaTransferCoordinator(context: context)
|
||||
let messageID = "media-11223344556677889900aabbccddeeff"
|
||||
context.requiredTombstoneIDs = [messageID]
|
||||
context.deferDeletedMediaPersistence = true
|
||||
|
||||
coordinator.deleteMediaMessage(messageID: messageID)
|
||||
#expect(context.persistedDeletionBatches == [[messageID]])
|
||||
|
||||
coordinator.resetForPanic()
|
||||
context.resolveNextDeletionPersistence(true)
|
||||
|
||||
#expect(context.removedMessages.isEmpty)
|
||||
#expect(context.untombstonedMediaRemovals.isEmpty)
|
||||
}
|
||||
|
||||
@Test @MainActor
|
||||
func deleteIncomingStableMediaPreservesStateWhenTombstoneFails() {
|
||||
let context = MockChatMediaTransferContext()
|
||||
|
||||
Reference in New Issue
Block a user