Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(663)

Side by Side Diff: tests/lib/async/stream_periodic6_test.dart

Issue 1415533015: If computation of Stream.periodic throws, forward the error to the stream. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Now ith actual change too. Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « sdk/lib/async/stream.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 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 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 // Test merging streams. 5 // Test merging streams.
6 library dart.test.stream_from_iterable; 6 library dart.test.stream_from_iterable;
7 7
8 import "dart:async"; 8 import "dart:async";
9 import 'package:unittest/unittest.dart'; 9 import 'package:unittest/unittest.dart';
10 10
11 main() { 11 main() {
12 test("stream-periodic1", () { 12 test("stream-periodic1", () {
13 Stream stream = new Stream.periodic(const Duration(milliseconds: 1)); 13 Stream stream = new Stream.periodic(const Duration(milliseconds: 1),
14 int receivedCount = 0; 14 (i) {
15 if (i == 3) throw 42;
16 return i;
17 });
18 int expected = 0;
15 var subscription; 19 var subscription;
16 subscription = stream.listen(expectAsync((data) { 20 subscription = stream.listen(expectAsync((data) {
17 expect(data, isNull); 21 expect(data, expected++);
18 receivedCount++; 22 if (expected == 5) subscription.cancel();
19 if (receivedCount == 5) subscription.cancel(); 23 }, count: 4),
20 }, count: 5)); 24 onError: expectAsync((e, s) {
25 expect(e, 42);
floitsch 2015/10/31 00:10:08 maybe also check, that expected == 3. Not necessar
Lasse Reichstein Nielsen 2015/10/31 11:09:10 I think the expectAsync ensures that the function
floitsch 2015/10/31 19:51:30 Right. Missed that one...
26 expected++;
27 }));
21 }); 28 });
22 } 29 }
OLDNEW
« no previous file with comments | « sdk/lib/async/stream.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698