| // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
 | // for details. All rights reserved. Use of this source code is governed by a | 
 | // BSD-style license that can be found in the LICENSE file. | 
 |  | 
 | // @dart = 2.9 | 
 |  | 
 | library future_delayed_error_test; | 
 |  | 
 | import 'package:async_helper/async_helper.dart'; | 
 | import "package:expect/expect.dart"; | 
 | import 'dart:async'; | 
 |  | 
 | testImmediateError() { | 
 |   asyncStart(); | 
 |   var future = new Future.error("error"); | 
 |   future.catchError((error) { | 
 |     Expect.equals(error, "error"); | 
 |     asyncEnd(); | 
 |   }); | 
 | } | 
 |  | 
 | Future get completedFuture { | 
 |   var completer = new Completer(); | 
 |   completer.completeError("foobar"); | 
 |   return completer.future; | 
 | } | 
 |  | 
 | testDelayedError() { | 
 |   asyncStart(); | 
 |   completedFuture.catchError((error) { | 
 |     Expect.equals(error, "foobar"); | 
 |     asyncEnd(); | 
 |   }); | 
 | } | 
 |  | 
 | main() { | 
 |   testImmediateError(); | 
 |   testDelayedError(); | 
 | } |