| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 // Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file | 
|  | 2 // for details. All rights reserved. Use of this source code is governed by a | 
|  | 3 // BSD-style license that can be found in the LICENSE file. | 
|  | 4 | 
|  | 5 import 'package:async_helper/async_helper.dart'; | 
|  | 6 import "package:expect/expect.dart"; | 
|  | 7 import 'dart:async'; | 
|  | 8 import 'catch_errors.dart'; | 
|  | 9 | 
|  | 10 main() { | 
|  | 11   asyncStart(); | 
|  | 12   Completer done = new Completer(); | 
|  | 13 | 
|  | 14   var events = []; | 
|  | 15   StreamController controller; | 
|  | 16   // Test that errors do not cross zone boundaries. | 
|  | 17   catchErrors(() { | 
|  | 18     catchErrors(() { | 
|  | 19       controller = new StreamController(); | 
|  | 20       controller.stream | 
|  | 21         .map((x) { | 
|  | 22           events.add("map $x"); | 
|  | 23           return x + 100; | 
|  | 24         }) | 
|  | 25         .transform(new StreamTransformer.fromHandlers( | 
|  | 26             handleError: (e, st, sink) { sink.add("error $e"); })) | 
|  | 27         .listen((x) { events.add("stream $x"); }); | 
|  | 28     }).listen((x) { events.add(x); }); | 
|  | 29     controller.add(1); | 
|  | 30     controller.addError(2); | 
|  | 31     new Future.error("outer error"); | 
|  | 32     controller.close(); | 
|  | 33   }).listen((x) { | 
|  | 34               events.add("outer: $x"); | 
|  | 35               if (x == "outer error") done.complete(true); | 
|  | 36             }, onDone: () { Expect.fail("Unexpected callback"); }); | 
|  | 37 | 
|  | 38   done.future.whenComplete(() { | 
|  | 39     Timer.run(() { | 
|  | 40       Expect.listEquals(["map 1", | 
|  | 41                          "stream 101", | 
|  | 42                          "stream error 2", | 
|  | 43                          "outer: outer error", | 
|  | 44                         ], | 
|  | 45                         events); | 
|  | 46       asyncEnd(); | 
|  | 47     }); | 
|  | 48   }); | 
|  | 49 } | 
| OLD | NEW | 
|---|