From c043cf6354b38e69c9c8cab09a84ebf405ae1a85 Mon Sep 17 00:00:00 2001 From: jack <212554440+jackjackbits@users.noreply.github.com> Date: Thu, 12 Mar 2026 09:53:58 -1000 Subject: [PATCH] Fix BLEService test local echo timing (#1054) Co-authored-by: jack --- bitchatTests/Mocks/MockBLEService.swift | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/bitchatTests/Mocks/MockBLEService.swift b/bitchatTests/Mocks/MockBLEService.swift index 5aace0ab..8398e8cc 100644 --- a/bitchatTests/Mocks/MockBLEService.swift +++ b/bitchatTests/Mocks/MockBLEService.swift @@ -108,6 +108,11 @@ final class MockBLEService: NSObject { func getPeers() -> [PeerID: String] { return getPeerNicknames() } + + /// Keep local echo synchronous so Swift Testing confirmations observe it deterministically. + private func deliverLocalEcho(_ message: BitchatMessage) { + delegate?.didReceiveMessage(message) + } func sendMessage(_ content: String, mentions: [String] = [], to recipientID: String? = nil, messageID: String? = nil, timestamp: Date? = nil) { let message = BitchatMessage( @@ -137,10 +142,7 @@ final class MockBLEService: NSObject { sentMessages.append((message, packet)) sentPackets.append(packet) - // Simulate local echo - DispatchQueue.main.async { [weak self] in - self?.delegate?.didReceiveMessage(message) - } + deliverLocalEcho(message) // Surface raw packet to tests that intercept/relay/encrypt packetDeliveryHandler?(packet) @@ -190,10 +192,7 @@ final class MockBLEService: NSObject { sentMessages.append((message, packet)) sentPackets.append(packet) - // Simulate local echo - DispatchQueue.main.async { [weak self] in - self?.delegate?.didReceiveMessage(message) - } + deliverLocalEcho(message) // Surface raw packet to tests that intercept/relay/encrypt packetDeliveryHandler?(packet)