@@ -138,73 +138,67 @@ final class DistributedReceptionistTests: ClusterSystemXCTestCase {
138138 }
139139 }
140140
141- // FIXME: don't use runAsyncAndBlock [#953](https://github.com/apple/swift-distributed-actors/issues/953)
142- func test_receptionist_listing_shouldRespondWithRegisteredRefsForKey( ) throws {
143- try runAsyncAndBlock {
144- let receptionist = system. receptionist
145- let probe : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
141+ func test_receptionist_listing_shouldRespondWithRegisteredRefsForKey( ) async throws {
142+ let receptionist = system. receptionist
143+ let probe : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
146144
147- let forwarderA = Forwarder ( probe: probe, name: " A " , actorSystem: system)
148- let forwarderB = Forwarder ( probe: probe, name: " B " , actorSystem: system)
145+ let forwarderA = Forwarder ( probe: probe, name: " A " , actorSystem: system)
146+ let forwarderB = Forwarder ( probe: probe, name: " B " , actorSystem: system)
149147
150- await receptionist. checkIn ( forwarderA, with: . forwarders)
151- await receptionist. checkIn ( forwarderB, with: . forwarders)
148+ await receptionist. checkIn ( forwarderA, with: . forwarders)
149+ await receptionist. checkIn ( forwarderB, with: . forwarders)
152150
153- var i = 0
154- for await forwarder in await receptionist. listing ( of: . forwarders) {
155- i += 1
156- try await forwarder. forward ( message: " test " )
151+ var i = 0
152+ for await forwarder in await receptionist. listing ( of: . forwarders) {
153+ i += 1
154+ try await forwarder. forward ( message: " test " )
157155
158- if i == 2 {
159- break
160- }
156+ if i == 2 {
157+ break
161158 }
162-
163- try probe. expectMessagesInAnyOrder ( [
164- " \( forwarderA. id) A forwarded: test " ,
165- " \( forwarderB. id) B forwarded: test " ,
166- ] )
167159 }
160+
161+ try probe. expectMessagesInAnyOrder ( [
162+ " \( forwarderA. id) A forwarded: test " ,
163+ " \( forwarderB. id) B forwarded: test " ,
164+ ] )
168165 }
169166
170- // FIXME: don't use runAsyncAndBlock [#953](https://github.com/apple/swift-distributed-actors/issues/953)
171- func test_receptionist_listing_shouldEndAfterTaskIsCancelled( ) throws {
172- try runAsyncAndBlock {
173- let receptionist = self . system. receptionist
174- let probeA : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
175- let probeB : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
167+ func test_receptionist_listing_shouldEndAfterTaskIsCancelled( ) async throws {
168+ let receptionist = self . system. receptionist
169+ let probeA : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
170+ let probeB : ActorTestProbe < String > = self . testKit. makeTestProbe ( )
176171
177- let bossA = Boss ( probe: probeA, name: " A " , actorSystem: self . system)
178- let bossB = Boss ( probe: probeB, name: " B " , actorSystem: self . system)
172+ let bossA = Boss ( probe: probeA, name: " A " , actorSystem: self . system)
173+ let bossB = Boss ( probe: probeB, name: " B " , actorSystem: self . system)
179174
180- let workerA = Worker ( name: " A " , actorSystem: self . system)
181- let workerB = Worker ( name: " B " , actorSystem: self . system)
182- let workerC = Worker ( name: " C " , actorSystem: self . system)
175+ let workerA = Worker ( name: " A " , actorSystem: self . system)
176+ let workerB = Worker ( name: " B " , actorSystem: self . system)
177+ let workerC = Worker ( name: " C " , actorSystem: self . system)
183178
184- try await bossA. findWorkers ( )
185- try await bossB. findWorkers ( )
179+ try await bossA. findWorkers ( )
180+ try await bossB. findWorkers ( )
186181
187- await receptionist. checkIn ( workerA, with: . workers)
182+ await receptionist. checkIn ( workerA, with: . workers)
188183
189- try probeA. expectMessage ( " \( bossA. id) A found \( workerA. id) " )
190- try probeB. expectMessage ( " \( bossB. id) B found \( workerA. id) " )
184+ try probeA. expectMessage ( " \( bossA. id) A found \( workerA. id) " )
185+ try probeB. expectMessage ( " \( bossB. id) B found \( workerA. id) " )
191186
192- try await bossB. done ( )
193- try probeB. expectMessage ( " B done " )
187+ try await bossB. done ( )
188+ try probeB. expectMessage ( " B done " )
194189
195- await receptionist. checkIn ( workerB, with: . workers)
190+ await receptionist. checkIn ( workerB, with: . workers)
196191
197- try probeA. expectMessage ( " \( bossA. id) A found \( workerB. id) " )
198- try probeB. expectNoMessage ( for: . milliseconds( 500 ) )
192+ try probeA. expectMessage ( " \( bossA. id) A found \( workerB. id) " )
193+ try probeB. expectNoMessage ( for: . milliseconds( 500 ) )
199194
200- try await bossA. done ( )
201- try probeA. expectMessage ( " A done " )
195+ try await bossA. done ( )
196+ try probeA. expectMessage ( " A done " )
202197
203- await receptionist. checkIn ( workerC, with: . workers)
198+ await receptionist. checkIn ( workerC, with: . workers)
204199
205- try probeA. expectNoMessage ( for: . milliseconds( 500 ) )
206- try probeB. expectNoMessage ( for: . milliseconds( 500 ) )
207- }
200+ try probeA. expectNoMessage ( for: . milliseconds( 500 ) )
201+ try probeB. expectNoMessage ( for: . milliseconds( 500 ) )
208202 }
209203
210204 func test_receptionist_shouldRespondWithEmptyRefForUnknownKey( ) throws {
0 commit comments