Chromium Code Reviews| Index: tests/lib/mirrors/reflect_class_test.dart |
| diff --git a/tests/lib/mirrors/reflect_class_test.dart b/tests/lib/mirrors/reflect_class_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..de9a691c00e6e1cbc277e5325e4a1d51ce84b3f6 |
| --- /dev/null |
| +++ b/tests/lib/mirrors/reflect_class_test.dart |
| @@ -0,0 +1,29 @@ |
| +// Copyright (c) 2013, 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. |
| + |
| +// This test uses the multi-test "ok" feature. |
| +// none: Tests as specified in the spec/API. Pass in the VM. |
| +// 01: dart2js version that expects NSM instead of ArgumentError. |
| +// |
| +// TODO(ahe,rmacnak): When both implementations agree, remove the multi-test |
| +// parts. |
| + |
| +import "dart:mirrors"; |
| + |
| +import "package:expect/expect.dart"; |
| + |
| +typedef void FooFunction(int a, double b); |
| + |
| +main() { |
| + var expectedError = (e) => e is ArgumentError; |
| + expectedError = (e) => e is NoSuchMethodError; /// 01: ok |
| + |
| + Expect.throws(() => reflectClass(dynamic), expectedError); |
| + Expect.throws(() => reflectClass(1), expectedError); |
| + Expect.throws(() => reflectClass("string"), expectedError); |
| + |
| + // reflectClass() on a function type should fail once typedefs are typemirrors |
|
rmacnak
2013/09/10 19:59:00
typedefmirrors
Michael Lippautz (Google)
2013/09/10 20:05:39
Done.
|
| + // instead of classmirrors. |
| + // Expect.throws(() => reflectClass(FooFunction), expectedError); |
| +} |