Index: tests/compiler/dart2js_native/native_wrapping_function3_frog_test.dart |
diff --git a/tests/compiler/dart2js_native/native_wrapping_function3_frog_test.dart b/tests/compiler/dart2js_native/native_wrapping_function3_frog_test.dart |
index 4e828386e48495a03283f0fb7abad25e1e34cb60..a331521081a72ca800e0ab7178e3a43f518ff4d6 100644 |
--- a/tests/compiler/dart2js_native/native_wrapping_function3_frog_test.dart |
+++ b/tests/compiler/dart2js_native/native_wrapping_function3_frog_test.dart |
@@ -2,8 +2,7 @@ |
// for details. All rights reserved. Use of this source code is governed by a |
// BSD-style license that can be found in the LICENSE file. |
-import "package:expect/expect.dart"; |
-import "dart:_js_helper"; |
+import "native_testing.dart"; |
typedef void Callback0(); |
typedef void Callback1(arg1); |
@@ -15,7 +14,7 @@ class A { |
foo2(Callback2 closure, [arg1 = 0, arg2 = 1]) native ; |
} |
-makeA() native ; |
+A makeA() native ; |
void setup() native """ |
function A() {} |
@@ -24,21 +23,24 @@ A.prototype.foo2 = function(closure, arg1, arg2) { |
return closure(arg1, arg2); |
}; |
makeA = function(){return new A;}; |
+self.nativeConstructor(A); |
"""; |
main() { |
+ nativeTesting(); |
setup(); |
var a = makeA(); |
+ // Statically known receiver type calls. |
Expect.equals(43, a.foo1((arg1) => arg1, 43)); |
Expect.equals(0, a.foo1((arg1) => arg1)); |
Expect.equals(44, a.foo2((arg1, arg2) => arg1 + arg2, 21, 23)); |
Expect.equals(22, a.foo2((arg1, arg2) => arg1 + arg2, 21)); |
- A aa = a; |
- Expect.equals(43, aa.foo1((arg1) => arg1, 43)); |
- Expect.equals(0, aa.foo1((arg1) => arg1)); |
+ // Dynamic calls. |
+ Expect.equals(43, confuse(a).foo1((arg1) => arg1, 43)); |
+ Expect.equals(0, confuse(a).foo1((arg1) => arg1)); |
- Expect.equals(44, aa.foo2((arg1, arg2) => arg1 + arg2, 21, 23)); |
- Expect.equals(22, aa.foo2((arg1, arg2) => arg1 + arg2, 21)); |
+ Expect.equals(44, confuse(a).foo2((arg1, arg2) => arg1 + arg2, 21, 23)); |
+ Expect.equals(22, confuse(a).foo2((arg1, arg2) => arg1 + arg2, 21)); |
} |