OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 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. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 // Ensure that classes handled specially by dart2js can be reflected on. | 5 // Ensure that classes handled specially by dart2js can be reflected on. |
6 | 6 |
7 library test.intercepted_class_test; | 7 library test.intercepted_class_test; |
8 | 8 |
9 import 'dart:mirrors'; | 9 import 'dart:mirrors'; |
10 | 10 |
11 import 'stringify.dart' show stringify, expect; | 11 import 'stringify.dart' show stringify, expect; |
12 | 12 |
13 checkClassMirror(ClassMirror cls, String name) { | 13 checkClassMirror(ClassMirror cls, String name) { |
14 expect('s($name)', cls.simpleName); | 14 expect('s($name)', cls.simpleName); |
15 var variables = new Map(); | 15 var variables = new Map(); |
16 cls.variables.forEach((Symbol key, VariableMirror value) { | 16 cls.declarations.forEach((Symbol key, DeclarationMirror value) { |
17 if (!value.isStatic && !value.isPrivate) { | 17 if (value is VariableMirror && !value.isStatic && !value.isPrivate) { |
18 variables[key] = value; | 18 variables[key] = value; |
19 } | 19 } |
20 }); | 20 }); |
21 expect('{}', variables); | 21 expect('{}', variables); |
22 } | 22 } |
23 | 23 |
24 main() { | 24 main() { |
25 checkClassMirror(reflectClass(String), 'String'); | 25 checkClassMirror(reflectClass(String), 'String'); |
26 checkClassMirror(reflectClass(int), 'int'); | 26 checkClassMirror(reflectClass(int), 'int'); |
27 checkClassMirror(reflectClass(double), 'double'); | 27 checkClassMirror(reflectClass(double), 'double'); |
28 checkClassMirror(reflectClass(num), 'num'); | 28 checkClassMirror(reflectClass(num), 'num'); |
29 checkClassMirror(reflectClass(bool), 'bool'); | 29 checkClassMirror(reflectClass(bool), 'bool'); |
30 checkClassMirror(reflectClass(List), 'List'); | 30 checkClassMirror(reflectClass(List), 'List'); |
31 } | 31 } |
OLD | NEW |