Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Unified Diff: dart/tests/lib/mirrors/metadata_test.dart

Issue 15861028: Implement MethodMirror.metadata. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Address comments and deal with private members of BoundClosure Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/tests/lib/mirrors/metadata_test.dart
diff --git a/dart/tests/lib/mirrors/metadata_test.dart b/dart/tests/lib/mirrors/metadata_test.dart
index 973bf34ff7906ec952a05aca85f611c0b772f395..b7e9a3b42fbe96e1f85ee3f88765c870796dde79 100644
--- a/dart/tests/lib/mirrors/metadata_test.dart
+++ b/dart/tests/lib/mirrors/metadata_test.dart
@@ -13,6 +13,8 @@ const symbol = const Symbol('fisk');
@symbol @fisk
class MyClass {
+ @fisk @symbol @fisk
+ myMethod() => 1;
}
checkMetadata(DeclarationMirror mirror, List expectedMetadata) {
@@ -34,6 +36,7 @@ checkMetadata(DeclarationMirror mirror, List expectedMetadata) {
print(metadata);
}
+@symbol @fisk @symbol
main() {
if (MirrorSystem.getName(symbol) != 'fisk') {
// This happened in dart2js due to how early library metadata is
@@ -45,4 +48,10 @@ main() {
checkMetadata(mirrors.findLibrary(const Symbol('test.metadata_test')).first,
[fisk, symbol]);
checkMetadata(reflect(new MyClass()).type, [symbol, fisk]);
+ ClosureMirror closure = reflect(main);
+ checkMetadata(closure.function, [symbol, fisk, symbol]);
+ closure = reflect(new MyClass().myMethod);
+ checkMetadata(closure.function, [fisk, symbol, fisk]);
+
+ // TODO(ahe): Test local functions.
}

Powered by Google App Engine
This is Rietveld 408576698