Repository navigation
Commit a99cd95
test(zero-swift): wait out a connect attempt a stalled system service holds up (#128)
TransportProbeTests.clientReconnectsAfterTheServerGoesAwayMidFrame and
AppLifecycleTests.hiddenDisconnectsAndShownReconnects flaked on the iOS
Simulator: a URLSession connect attempt never reached the in-process
server, and the test gave up as the client's connect timeout (10 s) ended
it, before the client's own retry, 250–500 ms later. Freezing the
simulator's configd_sim reproduces both failures line for line, with the
process running: the server sees no connection, the client logs
"Connecting to …" and then the timeout.
The lifecycle test waited 10 s for a connection. The probe waited 15 s,
but URLSession only sees a frame cut by the server's FIN when the client
next writes, its ping 5 s in, so the reconnect had under 10 s. Waits for a
connection now cover one timed-out attempt and the first retry: the connect
timeout, the retry's longest wait, and 2 s, plus the ping interval in the
probe. Under the same freezes both tests failed before and pass now, and the
client connects on its own retry.
The probe's failure output now says how many TCP connections the server
accepted, which tells a reconnect that never reached the server from one
whose request didn't arrive.
Amp-Thread-ID: https://ampcode.com/threads/T-0d2ed206-a5dd-4f42-9b68-c56e6b23e8f6
Co-authored-by: Amp <amp@ampcode.com>1 parent 33712ed commit a99cd95
2 files changed
Lines changed: 28 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
120 | 120 | | |
121 | 121 | | |
122 | 122 | | |
123 | | - | |
| 123 | + | |
124 | 124 | | |
125 | 125 | | |
126 | 126 | | |
| |||
172 | 172 | | |
173 | 173 | | |
174 | 174 | | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
175 | 184 | | |
176 | 185 | | |
177 | 186 | | |
| |||
189 | 198 | | |
190 | 199 | | |
191 | 200 | | |
192 | | - | |
| 201 | + | |
193 | 202 | | |
194 | 203 | | |
195 | 204 | | |
196 | 205 | | |
197 | | - | |
| 206 | + | |
198 | 207 | | |
199 | 208 | | |
200 | 209 | | |
| |||
206 | 215 | | |
207 | 216 | | |
208 | 217 | | |
209 | | - | |
| 218 | + | |
210 | 219 | | |
211 | 220 | | |
212 | 221 | | |
| |||
220 | 229 | | |
221 | 230 | | |
222 | 231 | | |
223 | | - | |
| 232 | + | |
224 | 233 | | |
225 | 234 | | |
226 | 235 | | |
| |||
230 | 239 | | |
231 | 240 | | |
232 | 241 | | |
233 | | - | |
| 242 | + | |
234 | 243 | | |
235 | 244 | | |
236 | 245 | | |
| |||
240 | 249 | | |
241 | 250 | | |
242 | 251 | | |
243 | | - | |
244 | | - | |
245 | | - | |
| 252 | + | |
246 | 253 | | |
247 | 254 | | |
248 | 255 | | |
| |||
261 | 268 | | |
262 | 269 | | |
263 | 270 | | |
264 | | - | |
| 271 | + | |
265 | 272 | | |
266 | 273 | | |
267 | 274 | | |
| |||
282 | 289 | | |
283 | 290 | | |
284 | 291 | | |
285 | | - | |
| 292 | + | |
286 | 293 | | |
287 | 294 | | |
288 | 295 | | |
| |||
300 | 307 | | |
301 | 308 | | |
302 | 309 | | |
303 | | - | |
| 310 | + | |
304 | 311 | | |
305 | 312 | | |
306 | 313 | | |
| |||
317 | 324 | | |
318 | 325 | | |
319 | 326 | | |
320 | | - | |
| 327 | + | |
321 | 328 | | |
322 | 329 | | |
323 | 330 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
268 | 269 | | |
269 | 270 | | |
270 | 271 | | |
271 | | - | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
272 | 276 | | |
273 | 277 | | |
274 | 278 | | |
275 | 279 | | |
276 | 280 | | |
277 | 281 | | |
278 | | - | |
| 282 | + | |
| 283 | + | |
279 | 284 | | |
280 | 285 | | |
281 | 286 | | |
| |||
0 commit comments