OLD | NEW |
| (Empty) |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 // Test that parameters in native methods are not mangled. This test is needed | |
6 // until we change all libraries to using the JS foreign element. | |
7 | |
8 class A native "*A" { | |
9 returnNull() native "return null;"; | |
10 returnUndefined() native "return undefined;"; | |
11 returnEmptyString() native "return '';"; | |
12 returnZero() native "return 0;"; | |
13 } | |
14 | |
15 A makeA() native; | |
16 | |
17 void setup() native """ | |
18 function A() {} | |
19 makeA = function(){return new A;}; | |
20 """; | |
21 | |
22 | |
23 main() { | |
24 setup(); | |
25 A a = makeA(); | |
26 Expect.equals(null, a.returnNull()); | |
27 Expect.equals(null, a.returnUndefined()); | |
28 | |
29 Expect.equals('', a.returnEmptyString()); | |
30 Expect.isTrue(a.returnEmptyString().isEmpty()); | |
31 Expect.isTrue(a.returnEmptyString() is String); | |
32 | |
33 Expect.isTrue(a.returnZero() is int); | |
34 Expect.equals(0, a.returnZero()); | |
35 } | |
OLD | NEW |