| Index: tests/lib/async/run_zoned3_test.dart
|
| diff --git a/tests/lib/async/catch_errors10_test.dart b/tests/lib/async/run_zoned3_test.dart
|
| similarity index 52%
|
| copy from tests/lib/async/catch_errors10_test.dart
|
| copy to tests/lib/async/run_zoned3_test.dart
|
| index 573ecc80e79f19f90f59fec41e75eb735e4e2b4e..f8802084f56b200477dc040da4d33ddb98754c0d 100644
|
| --- a/tests/lib/async/catch_errors10_test.dart
|
| +++ b/tests/lib/async/run_zoned3_test.dart
|
| @@ -10,21 +10,17 @@ main() {
|
| // We keep a ReceivePort open until all tests are done. This way the VM will
|
| // hang if the callbacks are not invoked and the test will time out.
|
| var port = new ReceivePort();
|
| - bool futureWasExecuted = false;
|
| - // Test that `catchErrors` waits for a future that has been delayed by
|
| - // `Timer.run`.
|
| - catchErrors(() {
|
| - Timer.run(() {
|
| - new Future.value(499).then((x) {
|
| - futureWasExecuted = true;
|
| - });
|
| - });
|
| - return 'allDone';
|
| - }).listen((x) {
|
| - Expect.fail("Unexpected callback");
|
| - },
|
| - onDone: () {
|
| - Expect.isTrue(futureWasExecuted);
|
| - port.close();
|
| - });
|
| + // Ensure that `runZoned` is done when a synchronous call throws.
|
| + bool sawException = false;
|
| + try {
|
| + runZonedExperimental(() { throw 0; },
|
| + onDone: () {
|
| + // onDone is executed synchronously.
|
| + Expect.isFalse(sawException);
|
| + port.close();
|
| + });
|
| + } catch (e) {
|
| + sawException = true;
|
| + }
|
| + Expect.isTrue(sawException);
|
| }
|
|
|