Skip to content

Commit 40351b4

Browse files
committed
Fix slightly flaky test
1 parent 350488f commit 40351b4

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

pkgs/ffigen/test/native_objc_test/block_test.dart

+12-12
Original file line numberDiff line numberDiff line change
@@ -879,10 +879,10 @@ void main() {
879879
}
880880
});
881881

882-
var isExited = false;
882+
final isExited = Completer<void>();
883883
late final RawReceivePort exitPort;
884884
exitPort = RawReceivePort((_) {
885-
isExited = true;
885+
isExited.complete();
886886
exitPort.close();
887887
});
888888

@@ -912,7 +912,7 @@ void main() {
912912
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
913913

914914
// Both blocks are still alive.
915-
expect(isExited, isFalse);
915+
expect(isExited.isCompleted, isFalse);
916916

917917
(await isolateSendPort.future).send('Destroy blkKeepAlive');
918918
await blkKeepAliveDestroyed.future;
@@ -923,7 +923,7 @@ void main() {
923923
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
924924

925925
// Only blkDontKeepAlive is alive.
926-
expect(isExited, isTrue);
926+
await isExited;
927927

928928
receivePort.close();
929929
}, skip: !canDoGC);
@@ -942,10 +942,10 @@ void main() {
942942
}
943943
});
944944

945-
var isExited = false;
945+
final isExited = Completer<void>();
946946
late final RawReceivePort exitPort;
947947
exitPort = RawReceivePort((_) {
948-
isExited = true;
948+
isExited.complete();
949949
exitPort.close();
950950
});
951951

@@ -974,7 +974,7 @@ void main() {
974974
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
975975

976976
// Both blocks are still alive.
977-
expect(isExited, isFalse);
977+
expect(isExited.isCompleted, isFalse);
978978

979979
(await isolateSendPort.future).send('Destroy blkKeepAlive');
980980
await blkKeepAliveDestroyed.future;
@@ -985,7 +985,7 @@ void main() {
985985
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
986986

987987
// Only blkDontKeepAlive is alive.
988-
expect(isExited, isTrue);
988+
await isExited;
989989

990990
receivePort.close();
991991
}, skip: !canDoGC);
@@ -1004,10 +1004,10 @@ void main() {
10041004
}
10051005
});
10061006

1007-
var isExited = false;
1007+
final isExited = Completer<void>();
10081008
late final RawReceivePort exitPort;
10091009
exitPort = RawReceivePort((_) {
1010-
isExited = true;
1010+
isExited.complete();
10111011
exitPort.close();
10121012
});
10131013

@@ -1036,7 +1036,7 @@ void main() {
10361036
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
10371037

10381038
// Both blocks are still alive.
1039-
expect(isExited, isFalse);
1039+
expect(isExited.isCompleted, isFalse);
10401040

10411041
(await isolateSendPort.future).send('Destroy blkKeepAlive');
10421042
await blkKeepAliveDestroyed.future;
@@ -1047,7 +1047,7 @@ void main() {
10471047
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
10481048

10491049
// Only blkDontKeepAlive is alive.
1050-
expect(isExited, isTrue);
1050+
await isExited;
10511051

10521052
receivePort.close();
10531053
}, skip: !canDoGC);

pkgs/ffigen/test/native_objc_test/protocol_test.dart

+4-4
Original file line numberDiff line numberDiff line change
@@ -558,10 +558,10 @@ void main() {
558558
}
559559
});
560560

561-
var isExited = false;
561+
final isExited = Completer<void>();
562562
late final RawReceivePort exitPort;
563563
exitPort = RawReceivePort((_) {
564-
isExited = true;
564+
isExited.complete();
565565
exitPort.close();
566566
});
567567

@@ -591,7 +591,7 @@ void main() {
591591
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
592592

593593
// Both blocks are still alive.
594-
expect(isExited, isFalse);
594+
expect(isExited.isCompleted, isFalse);
595595

596596
(await isolateSendPort.future).send('Destroy protoKeepAlive');
597597
await protoKeepAliveDestroyed.future;
@@ -602,7 +602,7 @@ void main() {
602602
await Future<void>.delayed(Duration.zero); // Let exit message arrive.
603603

604604
// Only protoDontKeepAlive is alive.
605-
expect(isExited, isTrue);
605+
await isExited;
606606

607607
receivePort.close();
608608
}, skip: !canDoGC);

0 commit comments

Comments
 (0)