Chromium Code Reviews| Index: tests/language_strong/generic_methods_dynamic_test.dart |
| diff --git a/tests/language_strong/generic_methods_dynamic_test.dart b/tests/language_strong/generic_methods_dynamic_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..4e8f7444b49bbe5def6a9fe7cff6392ab25c6629 |
| --- /dev/null |
| +++ b/tests/language_strong/generic_methods_dynamic_test.dart |
| @@ -0,0 +1,23 @@ |
| +// Copyright (c) 2017, 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. |
| + |
| +library generic_methods_dynamic_test; |
| + |
| +import "package:expect/expect.dart"; |
| + |
| +class A {} |
| + |
| +class B {} |
| + |
| +class C { |
| + T fun<T>(T t) => t; |
| +} |
| + |
| +main() { |
| + B b = new B(); |
| + C c = new C(); |
| + dynamic obj = c; |
| + |
|
karlklose
2017/03/09 09:17:00
Use multi-tests?
c.fun<A>(b); /// 01: compile-ti
Dmitry Stefantsov
2017/03/10 13:21:53
Thanks! I put the checks for both compile-type err
|
| + Expect.throws(() => obj.fun<A>(b), (e) => e is TypeError); |
|
karlklose
2017/03/09 09:17:00
() => obj.fun<A>(b); /// 02: runtime error
eernst
2017/03/09 14:55:02
This tests one of the cases I mentioned above in g
Dmitry Stefantsov
2017/03/10 13:21:53
Probably, it should be 'obj.fun<A>(b);', otherwise
Dmitry Stefantsov
2017/03/10 13:21:53
Done.
|
| +} |