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

Side by Side Diff: dart/tests/compiler/dart2js_foreign/native_wrapping_function3_test.dart

Issue 11293272: Update dart2js_foreign suite as we now validate annotations. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
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 import 'native_metadata.dart';
6
5 typedef void Callback0(); 7 typedef void Callback0();
6 typedef void Callback1(arg1); 8 typedef void Callback1(arg1);
7 typedef void Callback2(arg1, arg2); 9 typedef void Callback2(arg1, arg2);
8 10
9 @native("*A") 11 @Native("*A")
10 class A { 12 class A {
11 @native foo1(Callback1 closure, [arg1 = 0]); 13 @native foo1(Callback1 closure, [arg1 = 0]);
12 @native foo2(Callback2 closure, [arg1 = 0, arg2 = 1]); 14 @native foo2(Callback2 closure, [arg1 = 0, arg2 = 1]);
13 } 15 }
14 16
15 @native makeA(); 17 @native makeA();
16 18
17 @native(""" 19 @Native("""
18 function A() {} 20 function A() {}
19 A.prototype.foo1 = function(closure, arg1) { return closure(arg1); }; 21 A.prototype.foo1 = function(closure, arg1) { return closure(arg1); };
20 A.prototype.foo2 = function(closure, arg1, arg2) { 22 A.prototype.foo2 = function(closure, arg1, arg2) {
21 return closure(arg1, arg2); 23 return closure(arg1, arg2);
22 }; 24 };
23 makeA = function(){return new A;}; 25 makeA = function(){return new A;};
24 """) 26 """)
25 void setup(); 27 void setup();
26 28
27 29
(...skipping 16 matching lines...) Expand all
44 Expect.equals(43, aa.foo1((arg1) => arg1, arg1: 43)); 46 Expect.equals(43, aa.foo1((arg1) => arg1, arg1: 43));
45 Expect.equals(0, aa.foo1((arg1) => arg1)); 47 Expect.equals(0, aa.foo1((arg1) => arg1));
46 48
47 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 + arg2, 21, 23)); 49 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 + arg2, 21, 23));
48 Expect.equals(22, aa.foo2((arg1, arg2) => arg1 + arg2, 21)); 50 Expect.equals(22, aa.foo2((arg1, arg2) => arg1 + arg2, 21));
49 Expect.equals(22, aa.foo2((arg1, arg2) => arg1 + arg2, arg1: 21)); 51 Expect.equals(22, aa.foo2((arg1, arg2) => arg1 + arg2, arg1: 21));
50 Expect.equals(21, aa.foo2((arg1, arg2) => arg1 + arg2, arg2: 21)); 52 Expect.equals(21, aa.foo2((arg1, arg2) => arg1 + arg2, arg2: 21));
51 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 + arg2, arg1: 21, arg2: 23)); 53 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 + arg2, arg1: 21, arg2: 23));
52 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 - arg2, arg2: 22, arg1: 66)); 54 Expect.equals(44, aa.foo2((arg1, arg2) => arg1 - arg2, arg2: 22, arg1: 66));
53 } 55 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698