File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change 8
8
import XCTest
9
9
@testable import OpenAI
10
10
11
- @MainActor
12
11
final class ChatGPTGeneratedSSEParserTests : XCTestCase {
13
12
private let parser = ServerSentEventsStreamParser ( )
14
13
@@ -91,14 +90,17 @@ final class ChatGPTGeneratedSSEParserTests: XCTestCase {
91
90
// Helper
92
91
func parse( _ raw: String ) -> [ ServerSentEventsStreamParser . Event ] {
93
92
let parser = ServerSentEventsStreamParser ( )
94
- var results : [ ServerSentEventsStreamParser . Event ] = [ ]
93
+ let resultsActor = ResultsActor ( )
95
94
parser. setCallbackClosures ( onEventDispatched: { event in
96
- MainActor . assumeIsolated {
97
- results. append ( event)
98
- }
95
+ dispatchPrecondition ( condition: . onQueue( . main) )
96
+ resultsActor. results. append ( event)
99
97
} , onError: { error in
100
98
} )
101
99
parser. processData ( data: raw. data ( using: . utf8) !)
102
- return results
100
+ return resultsActor . results
103
101
}
104
102
}
103
+
104
+ private class ResultsActor : @unchecked Sendable {
105
+ var results : [ ServerSentEventsStreamParser . Event ] = [ ]
106
+ }
You can’t perform that action at this time.
0 commit comments