@@ -14,16 +14,13 @@ class GraphqlTransportWSTests: XCTestCase {
1414 let api = TestAPI ( )
1515
1616 override func setUp( ) {
17- // Point the client and server at each other
1817 clientMessenger = TestMessenger ( )
1918 serverMessenger = TestMessenger ( )
20- clientMessenger. other = serverMessenger
21- serverMessenger. other = clientMessenger
2219 }
2320
2421 /// Tests that trying to run methods before `connection_init` is not allowed
2522 func testInitialize( ) async throws {
26- _ = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
23+ let server = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
2724 messenger: serverMessenger,
2825 onInit: { _ in } ,
2926 onExecute: { graphQLRequest, _ in
@@ -41,8 +38,16 @@ class GraphqlTransportWSTests: XCTestCase {
4138 return subscription
4239 }
4340 )
44-
4541 let client = Client < TokenInitPayload > ( messenger: clientMessenger)
42+ let serverStream = serverMessenger. stream
43+ let clientStream = clientMessenger. stream
44+ Task {
45+ try await server. listen ( to: clientStream)
46+ }
47+ Task {
48+ try await client. listen ( to: serverStream)
49+ }
50+
4651 let messageStream = AsyncThrowingStream < String , any Error > { continuation in
4752 client. onMessage { message, _ in
4853 continuation. yield ( message)
@@ -76,7 +81,7 @@ class GraphqlTransportWSTests: XCTestCase {
7681
7782 /// Tests that throwing in the authorization callback forces an unauthorized error
7883 func testAuthWithThrow( ) async throws {
79- _ = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
84+ let server = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
8085 messenger: serverMessenger,
8186 onInit: { _ in
8287 throw TestError . couldBeAnything
@@ -96,8 +101,16 @@ class GraphqlTransportWSTests: XCTestCase {
96101 return subscription
97102 }
98103 )
99-
100104 let client = Client < TokenInitPayload > ( messenger: clientMessenger)
105+ let clientStream = clientMessenger. stream
106+ let serverStream = serverMessenger. stream
107+ Task {
108+ try await server. listen ( to: clientStream)
109+ }
110+ Task {
111+ try await client. listen ( to: serverStream)
112+ }
113+
101114 let messageStream = AsyncThrowingStream < String , any Error > { continuation in
102115 client. onMessage { message, _ in
103116 continuation. yield ( message)
@@ -126,7 +139,7 @@ class GraphqlTransportWSTests: XCTestCase {
126139
127140 /// Tests a single-op conversation
128141 func testSingleOp( ) async throws {
129- _ = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
142+ let server = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
130143 messenger: serverMessenger,
131144 onInit: { _ in } ,
132145 onExecute: { graphQLRequest, _ in
@@ -144,10 +157,18 @@ class GraphqlTransportWSTests: XCTestCase {
144157 return subscription
145158 }
146159 )
160+ let client = Client < TokenInitPayload > ( messenger: clientMessenger)
161+ let clientStream = clientMessenger. stream
162+ let serverStream = serverMessenger. stream
163+ Task {
164+ try await server. listen ( to: clientStream)
165+ }
166+ Task {
167+ try await client. listen ( to: serverStream)
168+ }
147169
148170 let id = UUID ( ) . description
149171
150- let client = Client < TokenInitPayload > ( messenger: clientMessenger)
151172 let messageStream = AsyncThrowingStream < String , any Error > { continuation in
152173 client. onConnectionAck { _, client in
153174 try await client. sendStart (
@@ -190,7 +211,7 @@ class GraphqlTransportWSTests: XCTestCase {
190211
191212 /// Tests a streaming conversation
192213 func testStreaming( ) async throws {
193- _ = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
214+ let server = Server < TokenInitPayload , Void , AsyncThrowingStream < GraphQLResult , Error > > (
194215 messenger: serverMessenger,
195216 onInit: { _ in } ,
196217 onExecute: { graphQLRequest, _ in
@@ -208,13 +229,21 @@ class GraphqlTransportWSTests: XCTestCase {
208229 return subscription
209230 }
210231 )
232+ let client = Client < TokenInitPayload > ( messenger: clientMessenger)
233+ let clientStream = clientMessenger. stream
234+ let serverStream = serverMessenger. stream
235+ Task {
236+ try await server. listen ( to: clientStream)
237+ }
238+ Task {
239+ try await client. listen ( to: serverStream)
240+ }
211241
212242 let id = UUID ( ) . description
213243
214244 var dataIndex = 1
215245 let dataIndexMax = 3
216246
217- let client = Client < TokenInitPayload > ( messenger: clientMessenger)
218247 let messageStream = AsyncThrowingStream < String , any Error > { continuation in
219248 client. onConnectionAck { _, client in
220249 try await client. sendStart (
0 commit comments