| OLD | NEW |
| (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 #library('JsInterop2Test'); |
| 6 #import('../../lib/unittest/unittest.dart'); |
| 7 #import('../../lib/unittest/html_config.dart'); |
| 8 #import('dart:html'); |
| 9 #import('dart:json'); |
| 10 |
| 11 injectSource(code) { |
| 12 final script = new ScriptElement(); |
| 13 script.type = 'text/javascript'; |
| 14 script.innerHTML = code; |
| 15 document.body.nodes.add(script); |
| 16 } |
| 17 |
| 18 isolateTest = """ |
| 19 function test(data) { |
| 20 if (data == 'sent') |
| 21 return 'received'; |
| 22 } |
| 23 |
| 24 var port = new ReceivePortSync(test); |
| 25 window.registerPort('test', port.toSendPort()); |
| 26 """; |
| 27 |
| 28 main() { |
| 29 useHtmlConfiguration(); |
| 30 var callback; |
| 31 test('dart.js', () { |
| 32 callback = expectAsync1((e) { |
| 33 Expect.isTrue(e.data); |
| 34 window.on.message.remove(callback); |
| 35 }); |
| 36 window.on.message.add(callback); |
| 37 injectSource(@"window.postMessage(window._$dart$initialized, '*');"); |
| 38 }); |
| 39 |
| 40 test('isolateTest', () { |
| 41 injectSource(isolateTest); |
| 42 |
| 43 var port = window.lookupPort('test'); |
| 44 var result = port.call('sent'); |
| 45 Expect.equals('received', result); |
| 46 |
| 47 result = port.call('ignore'); |
| 48 Expect.isNull(result); |
| 49 }); |
| 50 } |
| OLD | NEW |