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

Side by Side Diff: test/ports_test.dart

Issue 955053002: adding codereview file, formatting, adding gitignore (Closed) Base URL: https://github.com/dart-lang/isolate.git@master
Patch Set: Created 5 years, 10 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
OLDNEW
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 library dart.pkg.isolate.isolaterunner_test; 5 library dart.pkg.isolate.isolaterunner_test;
6 6
7 import "package:isolate/ports.dart"; 7 import "package:isolate/ports.dart";
8 import "package:unittest/unittest.dart"; 8 import "package:unittest/unittest.dart";
9 import "dart:async"; 9 import "dart:async";
10 import "dart:isolate"; 10 import "dart:isolate";
(...skipping 30 matching lines...) Expand all
41 Completer completer = new Completer.sync(); 41 Completer completer = new Completer.sync();
42 SendPort p = singleCallbackPort(completer.complete); 42 SendPort p = singleCallbackPort(completer.complete);
43 p.send(42); 43 p.send(42);
44 return completer.future.then((v) { 44 return completer.future.then((v) {
45 expect(v, 42); 45 expect(v, 42);
46 }); 46 });
47 }); 47 });
48 48
49 test("singleCallbackValueBeforeTimeout", () { 49 test("singleCallbackValueBeforeTimeout", () {
50 Completer completer = new Completer.sync(); 50 Completer completer = new Completer.sync();
51 SendPort p = singleCallbackPort(completer.complete, 51 SendPort p = singleCallbackPort(completer.complete, timeout: MS * 500);
52 timeout: MS * 500);
53 p.send(42); 52 p.send(42);
54 return completer.future.then((v) { 53 return completer.future.then((v) {
55 expect(v, 42); 54 expect(v, 42);
56 }); 55 });
57 }); 56 });
58 57
59 test("singleCallbackTimeout", () { 58 test("singleCallbackTimeout", () {
60 Completer completer = new Completer.sync(); 59 Completer completer = new Completer.sync();
61 singleCallbackPort(completer.complete, 60 singleCallbackPort(completer.complete, timeout: MS * 100, timeoutValue: 37);
62 timeout: MS * 100,
63 timeoutValue: 37);
64 return completer.future.then((v) { 61 return completer.future.then((v) {
65 expect(v, 37); 62 expect(v, 37);
66 }); 63 });
67 }); 64 });
68 65
69 test("singleCallbackTimeoutFirst", () { 66 test("singleCallbackTimeoutFirst", () {
70 Completer completer = new Completer.sync(); 67 Completer completer = new Completer.sync();
71 SendPort p = singleCallbackPort(completer.complete, 68 SendPort p = singleCallbackPort(completer.complete,
72 timeout: MS * 100, 69 timeout: MS * 100, timeoutValue: 37);
Lasse Reichstein Nielsen 2015/02/26 10:59:15 Indent to after '(' or put completer.complete on n
73 timeoutValue: 37);
74 new Timer(MS * 500, () => p.send(42)); 70 new Timer(MS * 500, () => p.send(42));
75 return completer.future.then((v) { 71 return completer.future.then((v) {
76 expect(v, 37); 72 expect(v, 37);
77 }); 73 });
78 }); 74 });
79 } 75 }
80 76
81
82 void testSingleCompletePort() { 77 void testSingleCompletePort() {
83 test("singleCompleteValue", () { 78 test("singleCompleteValue", () {
84 Completer completer = new Completer.sync(); 79 Completer completer = new Completer.sync();
85 SendPort p = singleCompletePort(completer); 80 SendPort p = singleCompletePort(completer);
86 p.send(42); 81 p.send(42);
87 return completer.future.then((v) { 82 return completer.future.then((v) {
88 expect(v, 42); 83 expect(v, 42);
89 }); 84 });
90 }); 85 });
91 86
92 test("singleCompleteValueCallback", () { 87 test("singleCompleteValueCallback", () {
93 Completer completer = new Completer.sync(); 88 Completer completer = new Completer.sync();
94 SendPort p = singleCompletePort(completer, 89 SendPort p = singleCompletePort(completer, callback: (v) {
95 callback: (v) { 90 expect(42, v);
96 expect(42, v); 91 return 87;
97 return 87; 92 });
Lasse Reichstein Nielsen 2015/02/26 10:59:15 This is much better!
98 });
99 p.send(42); 93 p.send(42);
100 return completer.future.then((v) { 94 return completer.future.then((v) {
101 expect(v, 87); 95 expect(v, 87);
102 }); 96 });
103 }); 97 });
104 98
105 test("singleCompleteValueCallbackFuture", () { 99 test("singleCompleteValueCallbackFuture", () {
106 Completer completer = new Completer.sync(); 100 Completer completer = new Completer.sync();
107 SendPort p = singleCompletePort(completer, 101 SendPort p = singleCompletePort(completer, callback: (v) {
108 callback: (v) { 102 expect(42, v);
109 expect(42, v); 103 return new Future.delayed(MS * 500, () => 88);
110 return new Future.delayed(MS * 500, 104 });
111 () => 88);
112 });
113 p.send(42); 105 p.send(42);
114 return completer.future.then((v) { 106 return completer.future.then((v) {
115 expect(v, 88); 107 expect(v, 88);
116 }); 108 });
117 }); 109 });
118 110
119 test("singleCompleteValueCallbackThrows", () { 111 test("singleCompleteValueCallbackThrows", () {
120 Completer completer = new Completer.sync(); 112 Completer completer = new Completer.sync();
121 SendPort p = singleCompletePort(completer, 113 SendPort p = singleCompletePort(completer, callback: (v) {
122 callback: (v) { 114 expect(42, v);
123 expect(42, v); 115 throw 89;
124 throw 89; 116 });
125 });
126 p.send(42); 117 p.send(42);
127 return completer.future.then((v) { 118 return completer.future.then((v) {
128 fail("unreachable"); 119 fail("unreachable");
129 }, onError: (e, s) { 120 }, onError: (e, s) {
130 expect(e, 89); 121 expect(e, 89);
131 }); 122 });
132 }); 123 });
133 124
134 test("singleCompleteValueCallbackThrowsFuture", () { 125 test("singleCompleteValueCallbackThrowsFuture", () {
135 Completer completer = new Completer.sync(); 126 Completer completer = new Completer.sync();
136 SendPort p = singleCompletePort(completer, 127 SendPort p = singleCompletePort(completer, callback: (v) {
137 callback: (v) { 128 expect(42, v);
138 expect(42, v); 129 return new Future.error(90);
139 return new Future.error(90); 130 });
140 });
141 p.send(42); 131 p.send(42);
142 return completer.future.then((v) { 132 return completer.future.then((v) {
143 fail("unreachable"); 133 fail("unreachable");
144 }, onError: (e, s) { 134 }, onError: (e, s) {
145 expect(e, 90); 135 expect(e, 90);
146 }); 136 });
147 }); 137 });
148 138
149 test("singleCompleteFirstValue", () { 139 test("singleCompleteFirstValue", () {
150 Completer completer = new Completer.sync(); 140 Completer completer = new Completer.sync();
151 SendPort p = singleCompletePort(completer); 141 SendPort p = singleCompletePort(completer);
152 p.send(42); 142 p.send(42);
153 p.send(37); 143 p.send(37);
154 return completer.future.then((v) { 144 return completer.future.then((v) {
155 expect(v, 42); 145 expect(v, 42);
156 }); 146 });
157 }); 147 });
158 148
159 test("singleCompleteFirstValueCallback", () { 149 test("singleCompleteFirstValueCallback", () {
160 Completer completer = new Completer.sync(); 150 Completer completer = new Completer.sync();
161 SendPort p = singleCompletePort(completer, callback: (v) { 151 SendPort p = singleCompletePort(completer, callback: (v) {
162 expect(v, 42); 152 expect(v, 42);
163 return 87; 153 return 87;
164 }); 154 });
165 p.send(42); 155 p.send(42);
166 p.send(37); 156 p.send(37);
167 return completer.future.then((v) { 157 return completer.future.then((v) {
168 expect(v, 87); 158 expect(v, 87);
169 }); 159 });
170 }); 160 });
171 161
172 test("singleCompleteValueBeforeTimeout", () { 162 test("singleCompleteValueBeforeTimeout", () {
173 Completer completer = new Completer.sync(); 163 Completer completer = new Completer.sync();
174 SendPort p = singleCompletePort(completer, 164 SendPort p = singleCompletePort(completer, timeout: MS * 500);
175 timeout: MS * 500);
176 p.send(42); 165 p.send(42);
177 return completer.future.then((v) { 166 return completer.future.then((v) {
178 expect(v, 42); 167 expect(v, 42);
179 }); 168 });
180 }); 169 });
181 170
182 test("singleCompleteTimeout", () { 171 test("singleCompleteTimeout", () {
183 Completer completer = new Completer.sync(); 172 Completer completer = new Completer.sync();
184 singleCompletePort(completer, 173 singleCompletePort(completer, timeout: MS * 100);
185 timeout: MS * 100);
186 return completer.future.then((v) { 174 return completer.future.then((v) {
187 fail("unreachable"); 175 fail("unreachable");
188 }, onError: (e, s) { 176 }, onError: (e, s) {
189 expect(e is TimeoutException, isTrue); 177 expect(e is TimeoutException, isTrue);
190 }); 178 });
191 }); 179 });
192 180
193 test("singleCompleteTimeoutCallback", () { 181 test("singleCompleteTimeoutCallback", () {
194 Completer completer = new Completer.sync(); 182 Completer completer = new Completer.sync();
195 singleCompletePort(completer, 183 singleCompletePort(completer, timeout: MS * 100, onTimeout: () => 87);
196 timeout: MS * 100,
197 onTimeout: () => 87);
198 return completer.future.then((v) { 184 return completer.future.then((v) {
199 expect(v, 87); 185 expect(v, 87);
200 }); 186 });
201 }); 187 });
202 188
203 test("singleCompleteTimeoutCallbackThrows", () { 189 test("singleCompleteTimeoutCallbackThrows", () {
204 Completer completer = new Completer.sync(); 190 Completer completer = new Completer.sync();
205 singleCompletePort(completer, 191 singleCompletePort(completer, timeout: MS * 100, onTimeout: () => throw 91);
206 timeout: MS * 100,
207 onTimeout: () => throw 91);
208 return completer.future.then((v) { 192 return completer.future.then((v) {
209 fail("unreachable"); 193 fail("unreachable");
210 }, onError: (e, s) { 194 }, onError: (e, s) {
211 expect(e, 91); 195 expect(e, 91);
212 }); 196 });
213 }); 197 });
214 198
215 test("singleCompleteTimeoutCallbackFuture", () { 199 test("singleCompleteTimeoutCallbackFuture", () {
216 Completer completer = new Completer.sync(); 200 Completer completer = new Completer.sync();
217 singleCompletePort(completer, 201 singleCompletePort(completer,
218 timeout: MS * 100, 202 timeout: MS * 100, onTimeout: () => new Future.value(87));
219 onTimeout: () => new Future.value(87));
220 return completer.future.then((v) { 203 return completer.future.then((v) {
221 expect(v, 87); 204 expect(v, 87);
222 }); 205 });
223 }); 206 });
224 207
225 test("singleCompleteTimeoutCallbackThrowsFuture", () { 208 test("singleCompleteTimeoutCallbackThrowsFuture", () {
226 Completer completer = new Completer.sync(); 209 Completer completer = new Completer.sync();
227 singleCompletePort(completer, 210 singleCompletePort(completer,
228 timeout: MS * 100, 211 timeout: MS * 100, onTimeout: () => new Future.error(92));
229 onTimeout: () => new Future.error(92));
230 return completer.future.then((v) { 212 return completer.future.then((v) {
231 fail("unreachable"); 213 fail("unreachable");
232 }, onError: (e, s) { 214 }, onError: (e, s) {
233 expect(e, 92); 215 expect(e, 92);
234 }); 216 });
235 }); 217 });
236 218
237 test("singleCompleteTimeoutCallbackSLow", () { 219 test("singleCompleteTimeoutCallbackSLow", () {
238 Completer completer = new Completer.sync(); 220 Completer completer = new Completer.sync();
239 singleCompletePort( 221 singleCompletePort(completer,
240 completer,
241 timeout: MS * 100, 222 timeout: MS * 100,
242 onTimeout: () => new Future.delayed(MS * 500, () => 87)); 223 onTimeout: () => new Future.delayed(MS * 500, () => 87));
243 return completer.future.then((v) { 224 return completer.future.then((v) {
244 expect(v, 87); 225 expect(v, 87);
245 }); 226 });
246 }); 227 });
247 228
248 test("singleCompleteTimeoutCallbackThrowsSlow", () { 229 test("singleCompleteTimeoutCallbackThrowsSlow", () {
249 Completer completer = new Completer.sync(); 230 Completer completer = new Completer.sync();
250 singleCompletePort( 231 singleCompletePort(completer,
251 completer,
252 timeout: MS * 100, 232 timeout: MS * 100,
253 onTimeout: () => new Future.delayed(MS * 500, () => throw 87)); 233 onTimeout: () => new Future.delayed(MS * 500, () => throw 87));
254 return completer.future.then((v) { 234 return completer.future.then((v) {
255 fail("unreachable"); 235 fail("unreachable");
256 }, onError: (e, s) { 236 }, onError: (e, s) {
257 expect(e, 87); 237 expect(e, 87);
258 }); 238 });
259 }); 239 });
260 240
261 test("singleCompleteTimeoutFirst", () { 241 test("singleCompleteTimeoutFirst", () {
262 Completer completer = new Completer.sync(); 242 Completer completer = new Completer.sync();
263 SendPort p = singleCompletePort(completer, 243 SendPort p =
264 timeout: MS * 100, 244 singleCompletePort(completer, timeout: MS * 100, onTimeout: () => 37);
265 onTimeout: () => 37);
266 new Timer(MS * 500, () => p.send(42)); 245 new Timer(MS * 500, () => p.send(42));
267 return completer.future.then((v) { 246 return completer.future.then((v) {
268 expect(v, 37); 247 expect(v, 37);
269 }); 248 });
270 }); 249 });
271 } 250 }
272 251
273 void testSingleResponseFuture() { 252 void testSingleResponseFuture() {
274 test("singleResponseFutureValue", () { 253 test("singleResponseFutureValue", () {
275 return singleResponseFuture((SendPort p) { 254 return singleResponseFuture((SendPort p) {
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 test("singleResultFutureTimeoutError", () { 364 test("singleResultFutureTimeoutError", () {
386 return singleResultFuture((SendPort p) { 365 return singleResultFuture((SendPort p) {
387 // no-op. 366 // no-op.
388 }, timeout: MS * 100, onTimeout: () => throw 97).then((v) { 367 }, timeout: MS * 100, onTimeout: () => throw 97).then((v) {
389 expect(v, 42); 368 expect(v, 42);
390 }, onError: (e, s) { 369 }, onError: (e, s) {
391 expect(e, 97); 370 expect(e, 97);
392 }); 371 });
393 }); 372 });
394 } 373 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698