| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 import "dart:async"; | 5 import "dart:async"; |
| 6 | 6 |
| 7 import "package:async/async.dart" show StreamCompleter; | 7 import "package:async/async.dart" show StreamCompleter; |
| 8 import "package:test/test.dart"; | 8 import "package:test/test.dart"; |
| 9 | 9 |
| 10 import "utils.dart"; | 10 import "utils.dart"; |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 123 completer.stream.listen( | 123 completer.stream.listen( |
| 124 unreachable("data"), | 124 unreachable("data"), |
| 125 onError: unreachable("error"), | 125 onError: unreachable("error"), |
| 126 onDone: done.complete); | 126 onDone: done.complete); |
| 127 completer.setEmpty(); | 127 completer.setEmpty(); |
| 128 await done.future; | 128 await done.future; |
| 129 }); | 129 }); |
| 130 | 130 |
| 131 test("source stream isn't listened to until completer stream is", () async { | 131 test("source stream isn't listened to until completer stream is", () async { |
| 132 var completer = new StreamCompleter(); | 132 var completer = new StreamCompleter(); |
| 133 var controller; | 133 StreamController controller; |
| 134 controller = new StreamController(onListen: () { | 134 controller = new StreamController(onListen: () { |
| 135 scheduleMicrotask(controller.close); | 135 scheduleMicrotask(controller.close); |
| 136 }); | 136 }); |
| 137 | 137 |
| 138 completer.setSourceStream(controller.stream); | 138 completer.setSourceStream(controller.stream); |
| 139 await flushMicrotasks(); | 139 await flushMicrotasks(); |
| 140 expect(controller.hasListener, isFalse); | 140 expect(controller.hasListener, isFalse); |
| 141 var subscription = completer.stream.listen(null); | 141 var subscription = completer.stream.listen(null); |
| 142 expect(controller.hasListener, isTrue); | 142 expect(controller.hasListener, isTrue); |
| 143 await subscription.asFuture(); | 143 await subscription.asFuture(); |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 274 test("listening more than once before setting stream", () async { | 274 test("listening more than once before setting stream", () async { |
| 275 var completer = new StreamCompleter(); | 275 var completer = new StreamCompleter(); |
| 276 completer.stream.toList(); | 276 completer.stream.toList(); |
| 277 expect(() => completer.stream.toList(), throwsStateError); | 277 expect(() => completer.stream.toList(), throwsStateError); |
| 278 }); | 278 }); |
| 279 | 279 |
| 280 test("setting onData etc. before and after setting stream", () async { | 280 test("setting onData etc. before and after setting stream", () async { |
| 281 var completer = new StreamCompleter(); | 281 var completer = new StreamCompleter(); |
| 282 var controller = new StreamController(); | 282 var controller = new StreamController(); |
| 283 var subscription = completer.stream.listen(null); | 283 var subscription = completer.stream.listen(null); |
| 284 var lastEvent = 0; | 284 Object lastEvent = 0; |
| 285 subscription.onData((value) => lastEvent = value); | 285 subscription.onData((value) => lastEvent = value); |
| 286 subscription.onError((value) => lastEvent = "$value"); | 286 subscription.onError((value) => lastEvent = "$value"); |
| 287 subscription.onDone(() => lastEvent = -1); | 287 subscription.onDone(() => lastEvent = -1); |
| 288 completer.setSourceStream(controller.stream); | 288 completer.setSourceStream(controller.stream); |
| 289 await flushMicrotasks(); | 289 await flushMicrotasks(); |
| 290 controller.add(1); | 290 controller.add(1); |
| 291 await flushMicrotasks(); | 291 await flushMicrotasks(); |
| 292 expect(lastEvent, 1); | 292 expect(lastEvent, 1); |
| 293 controller.addError(2); | 293 controller.addError(2); |
| 294 await flushMicrotasks(); | 294 await flushMicrotasks(); |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 369 | 369 |
| 370 Stream<int> createStream() async* { | 370 Stream<int> createStream() async* { |
| 371 yield 1; | 371 yield 1; |
| 372 await flushMicrotasks(); | 372 await flushMicrotasks(); |
| 373 yield 2; | 373 yield 2; |
| 374 await flushMicrotasks(); | 374 await flushMicrotasks(); |
| 375 yield 3; | 375 yield 3; |
| 376 await flushMicrotasks(); | 376 await flushMicrotasks(); |
| 377 yield 4; | 377 yield 4; |
| 378 } | 378 } |
| OLD | NEW |