OLD | NEW |
| (Empty) |
1 // Copyright (c) 2016, 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 import "package:expect/expect.dart"; | |
6 | |
7 // Testing that, when compiled to JS, Function.apply works correctly for | |
8 // functions with that will be invoked directly vs using .apply(). | |
9 | |
10 class A { | |
11 foo([a = 10, b = 20, c = 30, d = 40, e = 50]) => "$a $b $c $d $e"; | |
12 } | |
13 | |
14 main() { | |
15 var a = new A(); | |
16 var clos = a.foo; | |
17 Expect.equals(Function.apply(clos, []), "10 20 30 40 50"); | |
18 Expect.equals(Function.apply(clos, [11]), "11 20 30 40 50"); | |
19 Expect.equals(Function.apply(clos, [11, 21]), "11 21 30 40 50"); | |
20 Expect.equals(Function.apply(clos, [11, 21, 31]), "11 21 31 40 50"); | |
21 Expect.equals(Function.apply(clos, [11, 21, 31, 41]), "11 21 31 41 50"); | |
22 Expect.equals(Function.apply(clos, [11, 21, 31, 41, 51]), "11 21 31 41 51"); | |
23 } | |
OLD | NEW |