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

Side by Side Diff: test_reflectable/test/implicit_getter_setter_test.dart

Issue 1297503006: Clarifies the status of implicit accessors; fixed several related bugs. (Closed) Base URL: https://github.com/dart-lang/reflectable.git@master
Patch Set: Review response. Created 5 years, 4 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 unified diff | Download patch
« no previous file with comments | « test_reflectable/pubspec.yaml ('k') | test_reflectable/test/parameter_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2015, the Dart Team. All rights reserved. Use of this
2 // source code is governed by a BSD-style license that can be found in
3 // the LICENSE file.
4
5 // File being transformed by the reflectable transformer.
6 // Explores properties of implicit getters and setters.
7
8 library test_reflectable.test.implicit_getter_setter_test;
9
10 import 'package:reflectable/reflectable.dart';
11 import 'package:unittest/unittest.dart';
12
13 class Reflector extends Reflectable {
14 const Reflector() : super(declarationsCapability, typeCapability,
15 const InvokingCapability("f"));
16 }
17
18 const reflector = const Reflector();
19
20 @reflector
21 class A {
22 A f1;
23 final A f2;
24 static A f3;
25 static final A f4 = new A(null);
26 static const f5 = 542;
27 A(this.f2);
28 }
29
30 main() {
31 ClassMirror classMirror = reflector.reflectType(A);
32
33 test("implicit getter properties", () {
34 MethodMirror f1GetterMirror = classMirror.instanceMembers["f1"];
35 expect(f1GetterMirror.simpleName, "f1");
36 expect(f1GetterMirror.qualifiedName,
37 "test_reflectable.test.implicit_getter_setter_test.A.f1");
38 expect(f1GetterMirror.isPrivate, isFalse);
39 expect(f1GetterMirror.isTopLevel, isFalse);
40 expect(f1GetterMirror.returnType.reflectedType, A);
41 expect(f1GetterMirror.isStatic, isFalse);
42 expect(f1GetterMirror.isAbstract, isFalse);
43 expect(f1GetterMirror.isSynthetic, isTrue);
44 expect(f1GetterMirror.isRegularMethod, isFalse);
45 expect(f1GetterMirror.isOperator, isFalse);
46 expect(f1GetterMirror.isGetter, isTrue);
47 expect(f1GetterMirror.isSetter, isFalse);
48 expect(f1GetterMirror.isConstructor, isFalse);
49 expect(f1GetterMirror.constructorName, "");
50 expect(f1GetterMirror.isConstConstructor, isFalse);
51 expect(f1GetterMirror.isGenerativeConstructor, isFalse);
52 expect(f1GetterMirror.isRedirectingConstructor, isFalse);
53 expect(f1GetterMirror.isFactoryConstructor, isFalse);
54 expect(f1GetterMirror.parameters.length, 0);
55 expect(f1GetterMirror.owner, classMirror);
56
57 MethodMirror f2getterMirror = classMirror.instanceMembers["f2"];
58 expect(f2getterMirror.simpleName, "f2");
59 expect(f2getterMirror.qualifiedName,
60 "test_reflectable.test.implicit_getter_setter_test.A.f2");
61 expect(f2getterMirror.isPrivate, isFalse);
62 expect(f2getterMirror.isTopLevel, isFalse);
63 expect(f2getterMirror.returnType.reflectedType, A);
64 expect(f2getterMirror.isStatic, isFalse);
65 expect(f2getterMirror.isAbstract, isFalse);
66 expect(f2getterMirror.isSynthetic, isTrue);
67 expect(f2getterMirror.isRegularMethod, isFalse);
68 expect(f2getterMirror.isOperator, isFalse);
69 expect(f2getterMirror.isGetter, isTrue);
70 expect(f2getterMirror.isSetter, isFalse);
71 expect(f2getterMirror.isConstructor, isFalse);
72 expect(f2getterMirror.constructorName, "");
73 expect(f2getterMirror.isConstConstructor, isFalse);
74 expect(f2getterMirror.isGenerativeConstructor, isFalse);
75 expect(f2getterMirror.isRedirectingConstructor, isFalse);
76 expect(f2getterMirror.isFactoryConstructor, isFalse);
77 expect(f2getterMirror.parameters.length, 0);
78 expect(f2getterMirror.owner, classMirror);
79
80 MethodMirror f3GetterMirror = classMirror.staticMembers["f3"];
81 expect(f3GetterMirror.simpleName, "f3");
82 expect(f3GetterMirror.qualifiedName,
83 "test_reflectable.test.implicit_getter_setter_test.A.f3");
84 expect(f3GetterMirror.isPrivate, isFalse);
85 expect(f3GetterMirror.isTopLevel, isFalse);
86 expect(f3GetterMirror.returnType.reflectedType, A);
87 expect(f3GetterMirror.isStatic, isTrue);
88 expect(f3GetterMirror.isAbstract, isFalse);
89 expect(f3GetterMirror.isSynthetic, isTrue);
90 expect(f3GetterMirror.isRegularMethod, isFalse);
91 expect(f3GetterMirror.isOperator, isFalse);
92 expect(f3GetterMirror.isGetter, isTrue);
93 expect(f3GetterMirror.isSetter, isFalse);
94 expect(f3GetterMirror.isConstructor, isFalse);
95 expect(f3GetterMirror.constructorName, "");
96 expect(f3GetterMirror.isConstConstructor, isFalse);
97 expect(f3GetterMirror.isGenerativeConstructor, isFalse);
98 expect(f3GetterMirror.isRedirectingConstructor, isFalse);
99 expect(f3GetterMirror.isFactoryConstructor, isFalse);
100 expect(f3GetterMirror.parameters.length, 0);
101 expect(f3GetterMirror.owner, classMirror);
102
103 MethodMirror f4GetterMirror = classMirror.staticMembers["f4"];
104 expect(f4GetterMirror.simpleName, "f4");
105 expect(f4GetterMirror.qualifiedName,
106 "test_reflectable.test.implicit_getter_setter_test.A.f4");
107 expect(f4GetterMirror.isPrivate, isFalse);
108 expect(f4GetterMirror.isTopLevel, isFalse);
109 expect(f4GetterMirror.returnType.reflectedType, A);
110 expect(f4GetterMirror.isStatic, isTrue);
111 expect(f4GetterMirror.isAbstract, isFalse);
112 expect(f4GetterMirror.isSynthetic, isTrue);
113 expect(f4GetterMirror.isRegularMethod, isFalse);
114 expect(f4GetterMirror.isOperator, isFalse);
115 expect(f4GetterMirror.isGetter, isTrue);
116 expect(f4GetterMirror.isSetter, isFalse);
117 expect(f4GetterMirror.isConstructor, isFalse);
118 expect(f4GetterMirror.constructorName, "");
119 expect(f4GetterMirror.isConstConstructor, isFalse);
120 expect(f4GetterMirror.isGenerativeConstructor, isFalse);
121 expect(f4GetterMirror.isRedirectingConstructor, isFalse);
122 expect(f4GetterMirror.isFactoryConstructor, isFalse);
123 expect(f4GetterMirror.parameters.length, 0);
124 expect(f4GetterMirror.owner, classMirror);
125
126 MethodMirror f5GetterMirror = classMirror.staticMembers["f5"];
127 expect(f5GetterMirror.simpleName, "f5");
128 expect(f5GetterMirror.qualifiedName,
129 "test_reflectable.test.implicit_getter_setter_test.A.f5");
130 expect(f5GetterMirror.isPrivate, isFalse);
131 expect(f5GetterMirror.isTopLevel, isFalse);
132 expect(f5GetterMirror.returnType.reflectedType, dynamic);
133 expect(f5GetterMirror.isStatic, isTrue);
134 expect(f5GetterMirror.isAbstract, isFalse);
135 expect(f5GetterMirror.isSynthetic, isTrue);
136 expect(f5GetterMirror.isRegularMethod, isFalse);
137 expect(f5GetterMirror.isOperator, isFalse);
138 expect(f5GetterMirror.isGetter, isTrue);
139 expect(f5GetterMirror.isSetter, isFalse);
140 expect(f5GetterMirror.isConstructor, isFalse);
141 expect(f5GetterMirror.constructorName, "");
142 expect(f5GetterMirror.isConstConstructor, isFalse);
143 expect(f5GetterMirror.isGenerativeConstructor, isFalse);
144 expect(f5GetterMirror.isRedirectingConstructor, isFalse);
145 expect(f5GetterMirror.isFactoryConstructor, isFalse);
146 expect(f5GetterMirror.parameters.length, 0);
147 expect(f5GetterMirror.owner, classMirror);
148 });
149
150 test("implicit setter properties", () {
151 MethodMirror f1SetterMirror = classMirror.instanceMembers["f1="];
152 expect(f1SetterMirror.simpleName, "f1=");
153 expect(f1SetterMirror.qualifiedName,
154 "test_reflectable.test.implicit_getter_setter_test.A.f1=");
155 expect(f1SetterMirror.isPrivate, isFalse);
156 expect(f1SetterMirror.isTopLevel, isFalse);
157 expect(f1SetterMirror.returnType.reflectedType, A);
158 expect(f1SetterMirror.isStatic, isFalse);
159 expect(f1SetterMirror.isAbstract, isFalse);
160 expect(f1SetterMirror.isSynthetic, isTrue);
161 expect(f1SetterMirror.isRegularMethod, isFalse);
162 expect(f1SetterMirror.isOperator, isFalse);
163 expect(f1SetterMirror.isGetter, isFalse);
164 expect(f1SetterMirror.isSetter, isTrue);
165 expect(f1SetterMirror.isConstructor, isFalse);
166 expect(f1SetterMirror.constructorName, "");
167 expect(f1SetterMirror.isConstConstructor, isFalse);
168 expect(f1SetterMirror.isGenerativeConstructor, isFalse);
169 expect(f1SetterMirror.isRedirectingConstructor, isFalse);
170 expect(f1SetterMirror.isFactoryConstructor, isFalse);
171 expect(f1SetterMirror.owner, classMirror);
172 expect(f1SetterMirror.parameters.length, 1);
173 expect(f1SetterMirror.parameters[0].simpleName, "f1");
174 expect(f1SetterMirror.parameters[0].type.reflectedType, A);
175 expect(f1SetterMirror.parameters[0].owner, f1SetterMirror);
176
177 expect(classMirror.instanceMembers["f2="], null);
178
179 MethodMirror f3SetterMirror = classMirror.staticMembers["f3="];
180 expect(f3SetterMirror.simpleName, "f3=");
181 expect(f3SetterMirror.qualifiedName,
182 "test_reflectable.test.implicit_getter_setter_test.A.f3=");
183 expect(f3SetterMirror.isPrivate, isFalse);
184 expect(f3SetterMirror.isTopLevel, isFalse);
185 expect(f3SetterMirror.returnType.reflectedType, A);
186 expect(f3SetterMirror.isStatic, isTrue);
187 expect(f3SetterMirror.isAbstract, isFalse);
188 expect(f3SetterMirror.isSynthetic, isTrue);
189 expect(f3SetterMirror.isRegularMethod, isFalse);
190 expect(f3SetterMirror.isOperator, isFalse);
191 expect(f3SetterMirror.isGetter, isFalse);
192 expect(f3SetterMirror.isSetter, isTrue);
193 expect(f3SetterMirror.isConstructor, isFalse);
194 expect(f3SetterMirror.constructorName, "");
195 expect(f3SetterMirror.isConstConstructor, isFalse);
196 expect(f3SetterMirror.isGenerativeConstructor, isFalse);
197 expect(f3SetterMirror.isRedirectingConstructor, isFalse);
198 expect(f3SetterMirror.isFactoryConstructor, isFalse);
199 expect(f3SetterMirror.owner, classMirror);
200 expect(f3SetterMirror.parameters.length, 1);
201 expect(f3SetterMirror.parameters[0].type.reflectedType, A);
202 expect(f3SetterMirror.parameters[0].owner, f3SetterMirror);
203
204 expect(classMirror.staticMembers["f4="], null);
205
206 expect(classMirror.staticMembers["f5="], null);
207 });
208 }
OLDNEW
« no previous file with comments | « test_reflectable/pubspec.yaml ('k') | test_reflectable/test/parameter_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698