| Index: tests/kernel/unsorted/nsm_dispatcher_test.dart
|
| diff --git a/tests/kernel/unsorted/nsm_dispatcher_test.dart b/tests/kernel/unsorted/nsm_dispatcher_test.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..d08b2ec2100c9c2d8d03d864558992500135263f
|
| --- /dev/null
|
| +++ b/tests/kernel/unsorted/nsm_dispatcher_test.dart
|
| @@ -0,0 +1,32 @@
|
| +// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
|
| +// 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 'expect.dart';
|
| +
|
| +class A {
|
| + noSuchMethod(Invocation invocation) {
|
| + var s = '|${invocation.memberName}|';
|
| + for (var a in invocation.positionalArguments) {
|
| + s = '$s$a|';
|
| + }
|
| + invocation.namedArguments.forEach((Symbol k, v) {
|
| + s = '$s$k/$v|';
|
| + });
|
| + print(s);
|
| + return s;
|
| + }
|
| +}
|
| +
|
| +main() {
|
| + var o = new A();
|
| + Expect.isTrue(o.fun() == '|Symbol("fun")|');
|
| + Expect.isTrue(o.fun(1) == '|Symbol("fun")|1|');
|
| + Expect.isTrue(o.fun(1, 2) == '|Symbol("fun")|1|2|');
|
| + Expect.isTrue(o.fun(1, b: 2) ==
|
| + '|Symbol("fun")|1|Symbol("b")/2|');
|
| + Expect.isTrue(o.fun(1, a: 1, b: 2) ==
|
| + '|Symbol("fun")|1|Symbol("a")/1|Symbol("b")/2|');
|
| + Expect.isTrue(o.fun(1, b: 2, a: 1) ==
|
| + '|Symbol("fun")|1|Symbol("a")/1|Symbol("b")/2|');
|
| +}
|
|
|