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

Side by Side Diff: tests/corelib/iterable_first_matching_test.dart

Issue 11783009: Big merge from experimental to bleeding edge. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 11 months 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 | Annotate | Revision Log
« no previous file with comments | « tests/corelib/iterable_element_at_test.dart ('k') | tests/corelib/iterable_first_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2012, 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 main() {
6 List<int> list1 = <int>[1, 2, 3];
7 List<int> list2 = const <int>[4, 5];
8 List<String> list3 = <String>[];
9 Set<int> set1 = new Set<int>();
10 set1..add(11)
11 ..add(12)
12 ..add(13);
13 Set set2 = new Set();
14
15 Expect.equals(2, list1.firstMatching((x) => x.isEven));
16 Expect.equals(1, list1.firstMatching((x) => x.isOdd));
17 Expect.throws(() => list1.firstMatching((x) => x > 3),
18 (e) => e is StateError);
19 Expect.equals(null, list1.firstMatching((x) => x > 3, orElse: () => null));
20 Expect.equals(499, list1.firstMatching((x) => x > 3, orElse: () => 499));
21
22 Expect.equals(4, list2.firstMatching((x) => x.isEven));
23 Expect.equals(5, list2.firstMatching((x) => x.isOdd));
24 Expect.throws(() => list2.firstMatching((x) => x == 0),
25 (e) => e is StateError);
26 Expect.equals(null, list2.firstMatching((x) => false, orElse: () => null));
27 Expect.equals(499, list2.firstMatching((x) => false, orElse: () => 499));
28
29 Expect.throws(() => list3.firstMatching((x) => x == 0),
30 (e) => e is StateError);
31 Expect.throws(() => list3.firstMatching((x) => true), (e) => e is StateError);
32 Expect.equals(null, list3.firstMatching((x) => true, orElse: () => null));
33 Expect.equals("str", list3.firstMatching((x) => false, orElse: () => "str"));
34
35 Expect.equals(12, set1.firstMatching((x) => x.isEven));
36 var odd = set1.firstMatching((x) => x.isOdd);
37 Expect.isTrue(odd == 11 || odd == 13);
38 Expect.throws(() => set1.firstMatching((x) => false), (e) => e is StateError);
39 Expect.equals(null, set1.firstMatching((x) => false, orElse: () => null));
40 Expect.equals(499, set1.firstMatching((x) => false, orElse: () => 499));
41
42 Expect.throws(() => set2.firstMatching((x) => false), (e) => e is StateError);
43 Expect.throws(() => set2.firstMatching((x) => true), (e) => e is StateError);
44 Expect.equals(null, set2.firstMatching((x) => true, orElse: () => null));
45 Expect.equals(499, set2.firstMatching((x) => false, orElse: () => 499));
46 }
OLDNEW
« no previous file with comments | « tests/corelib/iterable_element_at_test.dart ('k') | tests/corelib/iterable_first_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698