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

Side by Side Diff: tests/corelib/reg_exp_all_matches_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/reg_exp5_test.dart ('k') | tests/corelib/reg_exp_start_end_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
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 // Dart test program for RegExp.allMatches. 5 // Dart test program for RegExp.allMatches.
6 6
7 class RegExpAllMatchesTest { 7 class RegExpAllMatchesTest {
8 static testIterator() { 8 static testIterator() {
9 var matches = new RegExp("foo").allMatches("foo foo"); 9 var matches = new RegExp("foo").allMatches("foo foo");
10 Iterator it = matches.iterator(); 10 Iterator it = matches.iterator;
11 Expect.equals(true, it.hasNext); 11 Expect.isTrue(it.moveNext());
12 Expect.equals('foo', it.next().group(0)); 12 Expect.equals('foo', it.current.group(0));
13 Expect.equals(true, it.hasNext); 13 Expect.isTrue(it.moveNext());
14 Expect.equals('foo', it.next().group(0)); 14 Expect.equals('foo', it.current.group(0));
15 Expect.equals(false, it.hasNext); 15 Expect.isFalse(it.moveNext());
16 16
17 // Run two iterators over the same results. 17 // Run two iterators over the same results.
18 it = matches.iterator(); 18 it = matches.iterator;
19 Iterator it2 = matches.iterator(); 19 Iterator it2 = matches.iterator;
20 Expect.equals(true, it.hasNext); 20 Expect.isTrue(it.moveNext());
21 Expect.equals(true, it2.hasNext); 21 Expect.isTrue(it2.moveNext());
22 Expect.equals('foo', it.next().group(0)); 22 Expect.equals('foo', it.current.group(0));
23 Expect.equals('foo', it2.next().group(0)); 23 Expect.equals('foo', it2.current.group(0));
24 Expect.equals(true, it.hasNext); 24 Expect.isTrue(it.moveNext());
25 Expect.equals(true, it2.hasNext); 25 Expect.isTrue(it2.moveNext());
26 Expect.equals('foo', it.next().group(0)); 26 Expect.equals('foo', it.current.group(0));
27 Expect.equals('foo', it2.next().group(0)); 27 Expect.equals('foo', it2.current.group(0));
28 Expect.equals(false, it.hasNext); 28 Expect.equals(false, it.moveNext());
29 Expect.equals(false, it2.hasNext); 29 Expect.equals(false, it2.moveNext());
30 } 30 }
31 31
32 static testForEach() { 32 static testForEach() {
33 var matches = new RegExp("foo").allMatches("foo foo"); 33 var matches = new RegExp("foo").allMatches("foo foo");
34 var strbuf = new StringBuffer(); 34 var strbuf = new StringBuffer();
35 matches.forEach((Match m) { 35 matches.forEach((Match m) {
36 strbuf.add(m.group(0)); 36 strbuf.add(m.group(0));
37 }); 37 });
38 Expect.equals("foofoo", strbuf.toString()); 38 Expect.equals("foofoo", strbuf.toString());
39 } 39 }
40 40
41 static testMap() { 41 static testMap() {
42 var matches = new RegExp("foo?").allMatches("foo fo foo fo"); 42 var matches = new RegExp("foo?").allMatches("foo fo foo fo");
43 var mapped = matches.map((Match m) => "${m.group(0)}bar"); 43 var mapped = matches.mappedBy((Match m) => "${m.group(0)}bar");
44 Expect.equals(4, mapped.length); 44 Expect.equals(4, mapped.length);
45 var strbuf = new StringBuffer(); 45 var strbuf = new StringBuffer();
46 for (String s in mapped) { 46 for (String s in mapped) {
47 strbuf.add(s); 47 strbuf.add(s);
48 } 48 }
49 Expect.equals("foobarfobarfoobarfobar", strbuf.toString()); 49 Expect.equals("foobarfobarfoobarfobar", strbuf.toString());
50 } 50 }
51 51
52 static testFilter() { 52 static testFilter() {
53 var matches = new RegExp("foo?").allMatches("foo fo foo fo"); 53 var matches = new RegExp("foo?").allMatches("foo fo foo fo");
54 var filtered = matches.filter((Match m) { 54 var filtered = matches.where((Match m) {
55 return m.group(0) == 'foo'; 55 return m.group(0) == 'foo';
56 }); 56 });
57 Expect.equals(2, filtered.length); 57 Expect.equals(2, filtered.length);
58 var strbuf = new StringBuffer(); 58 var strbuf = new StringBuffer();
59 for (Match m in filtered) { 59 for (Match m in filtered) {
60 strbuf.add(m.group(0)); 60 strbuf.add(m.group(0));
61 } 61 }
62 Expect.equals("foofoo", strbuf.toString()); 62 Expect.equals("foofoo", strbuf.toString());
63 } 63 }
64 64
65 static testEvery() { 65 static testEvery() {
66 var matches = new RegExp("foo?").allMatches("foo fo foo fo"); 66 var matches = new RegExp("foo?").allMatches("foo fo foo fo");
67 Expect.equals(true, matches.every((Match m) { 67 Expect.equals(true, matches.every((Match m) {
68 return m.group(0).startsWith("fo"); 68 return m.group(0).startsWith("fo");
69 })); 69 }));
70 Expect.equals(false, matches.every((Match m) { 70 Expect.equals(false, matches.every((Match m) {
71 return m.group(0).startsWith("foo"); 71 return m.group(0).startsWith("foo");
72 })); 72 }));
73 } 73 }
74 74
75 static testSome() { 75 static testSome() {
76 var matches = new RegExp("foo?").allMatches("foo fo foo fo"); 76 var matches = new RegExp("foo?").allMatches("foo fo foo fo");
77 Expect.equals(true, matches.some((Match m) { 77 Expect.equals(true, matches.any((Match m) {
78 return m.group(0).startsWith("fo"); 78 return m.group(0).startsWith("fo");
79 })); 79 }));
80 Expect.equals(true, matches.some((Match m) { 80 Expect.equals(true, matches.any((Match m) {
81 return m.group(0).startsWith("foo"); 81 return m.group(0).startsWith("foo");
82 })); 82 }));
83 Expect.equals(false, matches.some((Match m) { 83 Expect.equals(false, matches.any((Match m) {
84 return m.group(0).startsWith("fooo"); 84 return m.group(0).startsWith("fooo");
85 })); 85 }));
86 } 86 }
87 87
88 static testIsEmpty() { 88 static testIsEmpty() {
89 var matches = new RegExp("foo?").allMatches("foo fo foo fo"); 89 var matches = new RegExp("foo?").allMatches("foo fo foo fo");
90 Expect.equals(false, matches.isEmpty); 90 Expect.equals(false, matches.isEmpty);
91 matches = new RegExp("fooo").allMatches("foo fo foo fo"); 91 matches = new RegExp("fooo").allMatches("foo fo foo fo");
92 Expect.equals(true, matches.isEmpty); 92 Expect.equals(true, matches.isEmpty);
93 } 93 }
(...skipping 13 matching lines...) Expand all
107 testEvery(); 107 testEvery();
108 testSome(); 108 testSome();
109 testIsEmpty(); 109 testIsEmpty();
110 testGetCount(); 110 testGetCount();
111 } 111 }
112 } 112 }
113 113
114 main() { 114 main() {
115 RegExpAllMatchesTest.testMain(); 115 RegExpAllMatchesTest.testMain();
116 } 116 }
OLDNEW
« no previous file with comments | « tests/corelib/reg_exp5_test.dart ('k') | tests/corelib/reg_exp_start_end_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698