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 // VMOptions=--optimization_counter_threshold=10 --no-background_compilation | |
5 | |
6 import "package:expect/expect.dart"; | |
7 | |
8 main() { | |
9 bar(a) { | |
10 return a is String; | |
11 } | |
12 | |
13 for (var i = 0; i < 20; i++) { | |
14 Expect.isFalse(bar(1)); | |
15 Expect.isTrue(bar.call('foo')); | |
16 } | |
17 | |
18 opt_arg([a = "a"]) => a is String; | |
19 | |
20 for (var i = 0; i < 20; i++) { | |
21 Expect.isFalse(opt_arg(1)); | |
22 Expect.isFalse(opt_arg.call(1)); | |
23 Expect.isTrue(opt_arg()); | |
24 Expect.isTrue(opt_arg.call()); | |
25 Expect.isTrue(opt_arg("b")); | |
26 Expect.isTrue(opt_arg.call("b")); | |
27 } | |
28 | |
29 named_arg({x: 11, y: 22}) => "$x$y"; | |
30 | |
31 for (var i = 0; i < 20; i++) { | |
32 Expect.equals("1122", named_arg()); | |
33 Expect.equals("1122", named_arg.call()); | |
34 Expect.equals("4455", named_arg(y: 55, x: 44)); | |
35 Expect.equals("4455", named_arg.call(y: 55, x: 44)); | |
36 Expect.equals("4455", named_arg(x: 44, y: 55)); | |
37 Expect.equals("4455", named_arg.call(x: 44, y: 55)); | |
38 } | |
39 | |
40 Expect.throws(() => bar.call(), (e) => e is NoSuchMethodError); | |
41 Expect.throws(() => opt_arg.call(x: "p"), (e) => e is NoSuchMethodError); | |
42 Expect.throws(() => named_arg.call("p", "q"), (e) => e is NoSuchMethodError); | |
43 } | |
OLD | NEW |