@@ -235,6 +235,9 @@ void main() {
235235 });
236236 }
237237
238+ Future <Event > waitForBreakpoint () =>
239+ stream.firstWhere ((event) => event.kind == EventKind .kPauseBreakpoint);
240+
238241 test ('after edit and hot reload, breakpoint is in new file' , () async {
239242 final oldString = 'main gen0' ;
240243 final newString = 'main gen1' ;
@@ -244,12 +247,12 @@ void main() {
244247 breakpointMarker: callLogMarker,
245248 );
246249
250+ var breakpointFuture = waitForBreakpoint ();
251+
247252 await callEvaluate ();
248253
249254 // Should break at `callLog`.
250- await stream.firstWhere (
251- (event) => event.kind == EventKind .kPauseBreakpoint,
252- );
255+ await breakpointFuture;
253256 expect (consoleLogs.contains (oldString), false );
254257 await resumeAndExpectLog (oldString);
255258
@@ -262,12 +265,12 @@ void main() {
262265 (file: mainFile, breakpointMarker: callLogMarker, bp: bp),
263266 ]);
264267
268+ breakpointFuture = waitForBreakpoint ();
269+
265270 await callEvaluate ();
266271
267272 // Should break at `callLog`.
268- await stream.firstWhere (
269- (event) => event.kind == EventKind .kPauseBreakpoint,
270- );
273+ await breakpointFuture;
271274 expect (consoleLogs.contains (newString), false );
272275 await resumeAndExpectLog (newString);
273276 });
@@ -281,12 +284,12 @@ void main() {
281284 breakpointMarker: callLogMarker,
282285 );
283286
287+ var breakpointFuture = waitForBreakpoint ();
288+
284289 await callEvaluate ();
285290
286291 // Should break at `callLog`.
287- await stream.firstWhere (
288- (event) => event.kind == EventKind .kPauseBreakpoint,
289- );
292+ await breakpointFuture;
290293 expect (consoleLogs.contains (genLog), false );
291294 await resumeAndExpectLog (genLog);
292295
@@ -303,12 +306,12 @@ void main() {
303306 (file: mainFile, breakpointMarker: callLogMarker, bp: bp),
304307 ])).first;
305308
309+ breakpointFuture = waitForBreakpoint ();
310+
306311 await callEvaluate ();
307312
308313 // Should break at `callLog`.
309- await stream.firstWhere (
310- (event) => event.kind == EventKind .kPauseBreakpoint,
311- );
314+ await breakpointFuture;
312315 expect (consoleLogs.contains (extraLog), true );
313316 await resumeAndExpectLog (genLog);
314317
@@ -321,12 +324,12 @@ void main() {
321324 (file: mainFile, breakpointMarker: callLogMarker, bp: bp),
322325 ]);
323326
327+ breakpointFuture = waitForBreakpoint ();
328+
324329 await callEvaluate ();
325330
326331 // Should break at `callLog`.
327- await stream.firstWhere (
328- (event) => event.kind == EventKind .kPauseBreakpoint,
329- );
332+ await breakpointFuture;
330333 expect (consoleLogs.contains (extraLog), false );
331334 await resumeAndExpectLog (genLog);
332335 });
@@ -342,12 +345,12 @@ void main() {
342345 breakpointMarker: callLogMarker,
343346 );
344347
348+ var breakpointFuture = waitForBreakpoint ();
349+
345350 await callEvaluate ();
346351
347352 // Should break at `callLog`.
348- await stream.firstWhere (
349- (event) => event.kind == EventKind .kPauseBreakpoint,
350- );
353+ await breakpointFuture;
351354 expect (consoleLogs.contains (genLog), false );
352355 await resumeAndExpectLog (genLog);
353356
@@ -377,18 +380,19 @@ void main() {
377380 (file: libFile, breakpointMarker: libValueMarker, bp: null ),
378381 ]);
379382
383+ breakpointFuture = waitForBreakpoint ();
384+
380385 await callEvaluate ();
381386
382387 // Should break at `callLog`.
383- await stream.firstWhere (
384- (event) => event.kind == EventKind .kPauseBreakpoint,
385- );
388+ await breakpointFuture;
386389 expect (consoleLogs.contains (libGenLog), false );
390+
391+ breakpointFuture = waitForBreakpoint ();
392+
387393 await resume ();
388394 // Should break at `libValue`.
389- await stream.firstWhere (
390- (event) => event.kind == EventKind .kPauseBreakpoint,
391- );
395+ await breakpointFuture;
392396 expect (consoleLogs.contains (libGenLog), false );
393397 await resumeAndExpectLog (libGenLog);
394398
@@ -411,12 +415,12 @@ void main() {
411415 (file: mainFile, breakpointMarker: capturedStringMarker, bp: bp),
412416 ])).first;
413417
418+ final breakpointFuture = waitForBreakpoint ();
419+
414420 await callEvaluate ();
415421
416422 // Should break at `capturedString`.
417- await stream.firstWhere (
418- (event) => event.kind == EventKind .kPauseBreakpoint,
419- );
423+ await breakpointFuture;
420424 final oldCapturedString = 'captured closure gen0' ;
421425 expect (consoleLogs.contains (oldCapturedString), false );
422426 // Closure gets evaluated for the first time.
0 commit comments