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

Side by Side Diff: tests/html/js_interop_4_test.dart

Issue 11275054: Modified unittest to use new argument syntax. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 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 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('JsInterop4Test'); 5 #library('JsInterop4Test');
6 #import('../../pkg/unittest/unittest.dart'); 6 #import('../../pkg/unittest/unittest.dart');
7 #import('../../pkg/unittest/html_config.dart'); 7 #import('../../pkg/unittest/html_config.dart');
8 #import('dart:html'); 8 #import('dart:html');
9 #import('dart:isolate'); 9 #import('dart:isolate');
10 10
11 const testData = const [1, '2', 'true']; 11 const testData = const [1, '2', 'true'];
12 12
13 void testIsolateEntry() { 13 void testIsolateEntry() {
14 var fun1 = window.lookupPort('fun1'); 14 var fun1 = window.lookupPort('fun1');
15 var result = fun1.callSync(testData); 15 var result = fun1.callSync(testData);
16 16
17 var fun2 = window.lookupPort('fun2'); 17 var fun2 = window.lookupPort('fun2');
18 fun2.callSync(result); 18 fun2.callSync(result);
19 } 19 }
20 20
21 main() { 21 main() {
22 useHtmlConfiguration(); 22 useHtmlConfiguration();
23 23
24 // Test that our interop scheme also works from Dart to Dart. 24 // Test that our interop scheme also works from Dart to Dart.
25 test('dart-to-dart-same-isolate', () { 25 test('dart-to-dart-same-isolate', () {
26 var fun = expectAsync1((message) { 26 var fun = expectAsync1((message) {
27 Expect.listEquals(testData, message); 27 expect(message, orderedEquals(testData));
28 return message.length; 28 return message.length;
29 }); 29 });
30 30
31 var port1 = new ReceivePortSync(); 31 var port1 = new ReceivePortSync();
32 port1.receive(fun); 32 port1.receive(fun);
33 window.registerPort('fun', port1.toSendPort()); 33 window.registerPort('fun', port1.toSendPort());
34 34
35 var port2 = window.lookupPort('fun'); 35 var port2 = window.lookupPort('fun');
36 var result = port2.callSync(testData); 36 var result = port2.callSync(testData);
37 Expect.equals(3, result); 37 expect(result, 3);
38 }); 38 });
39 39
40 // Test across isolate boundary. 40 // Test across isolate boundary.
41 test('dart-to-dart-cross-isolate', () { 41 test('dart-to-dart-cross-isolate', () {
42 var fun1 = (message) { 42 var fun1 = (message) {
43 Expect.listEquals(testData, message); 43 expect(message, orderedEquals(testData));
44 return message.length; 44 return message.length;
45 }; 45 };
46 46
47 var port1 = new ReceivePortSync(); 47 var port1 = new ReceivePortSync();
48 port1.receive(fun1); 48 port1.receive(fun1);
49 window.registerPort('fun1', port1.toSendPort()); 49 window.registerPort('fun1', port1.toSendPort());
50 50
51 // TODO(vsm): Investigate why this needs to be called asynchronously. 51 // TODO(vsm): Investigate why this needs to be called asynchronously.
52 var done = expectAsync0(() {}); 52 var done = expectAsync0(() {});
53 var fun2 = (message) { 53 var fun2 = (message) {
54 Expect.equals(3, message); 54 expect(message, 3);
55 window.setTimeout(done, 0); 55 window.setTimeout(done, 0);
56 }; 56 };
57 57
58 var port2 = new ReceivePortSync(); 58 var port2 = new ReceivePortSync();
59 port2.receive(fun2); 59 port2.receive(fun2);
60 window.registerPort('fun2', port2.toSendPort()); 60 window.registerPort('fun2', port2.toSendPort());
61 61
62 spawnDomFunction(testIsolateEntry); 62 spawnDomFunction(testIsolateEntry);
63 }); 63 });
64 } 64 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698