Skip to content

Commit 5516b48

Browse files
committed
fix tests
1 parent d39b685 commit 5516b48

File tree

4 files changed

+10
-13
lines changed

4 files changed

+10
-13
lines changed

Sources/Realtime/Deprecated/Deprecated.swift

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,10 @@ extension RealtimeChannelV2 {
9595
@_disfavoredOverload
9696
@available(*, deprecated, message: "Use `broadcastStream(event:)` with `BroadcastEvent` instead.")
9797
public func broadcastStream(event: String) -> AsyncStream<JSONObject> {
98-
self.broadcastStream(event: event).map { (payload: BroadcastEvent) in
98+
let stream = self.broadcastStream(event: event).map { (payload: BroadcastEvent) in
9999
try! JSONObject(payload)
100100
}
101-
.eraseToStream()
101+
102+
return AsyncStream(stream)
102103
}
103104
}

Sources/Realtime/RealtimeChannel+AsyncAwait.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ extension RealtimeChannelV2 {
192192
}
193193

194194
// Helper to work around type ambiguity in macOS 13
195-
fileprivate extension AsyncStream<AnyAction> {
195+
extension AsyncStream<AnyAction> {
196196
func compactErase<T: Sendable>() -> AsyncStream<T> {
197197
AsyncStream<T>(compactMap { $0.wrappedAction as? T } as AsyncCompactMapSequence<Self, T>)
198198
}

Sources/Realtime/Types.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ public enum LogLevel: String, Sendable {
112112
///
113113
/// If broadcast event was triggered using [`realtime.broadcast_changes`](https://supabase.com/docs/guides/realtime/subscribing-to-database-changes#using-broadcast),
114114
/// use ``BroadcastEvent/broadcastChange(of:)`` to decode the payload into a specific type.
115-
public struct BroadcastEvent: Codable, Sendable {
115+
public struct BroadcastEvent: Codable, Hashable, Sendable {
116116
/// The type of the event, e.g. `broadcast`.
117117
public let type: String
118118
/// The event that triggered the broadcast.

Tests/RealtimeTests/CallbackManagerTests.swift

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -178,24 +178,20 @@ final class CallbackManagerTests: XCTestCase {
178178
XCTAssertNoLeak(callbackManager)
179179

180180
let event = "new_user"
181-
let message = RealtimeMessageV2(
182-
joinRef: nil,
183-
ref: nil,
184-
topic: "realtime:users",
181+
let message = BroadcastEvent(
182+
type: "broadcast",
185183
event: event,
186184
payload: ["email": "[email protected]"]
187185
)
188186

189-
let jsonObject = try JSONObject(message)
190-
191-
let receivedMessage = LockIsolated<JSONObject?>(nil)
187+
let receivedMessage = LockIsolated<BroadcastEvent?>(nil)
192188
callbackManager.addBroadcastCallback(event: event) {
193189
receivedMessage.setValue($0)
194190
}
195191

196-
callbackManager.triggerBroadcast(event: event, json: jsonObject)
192+
callbackManager.triggerBroadcast(event: event, json: message)
197193

198-
XCTAssertEqual(receivedMessage.value, jsonObject)
194+
XCTAssertEqual(receivedMessage.value, message)
199195
}
200196

201197
func testTriggerPresenceDiffs() {

0 commit comments

Comments
 (0)