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

Side by Side Diff: pkg/analysis_server/test/services/search/hierarchy_test.dart

Issue 2614033003: Make subclasses of AbstractContextTest asynchronous. (Closed)
Patch Set: Created 3 years, 11 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
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 library test.services.src.search.hierarchy; 5 library test.services.src.search.hierarchy;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 8
9 import 'package:analysis_server/src/services/index/index.dart'; 9 import 'package:analysis_server/src/services/index/index.dart';
10 import 'package:analysis_server/src/services/search/hierarchy.dart'; 10 import 'package:analysis_server/src/services/search/hierarchy.dart';
(...skipping 14 matching lines...) Expand all
25 class HierarchyTest extends AbstractSingleUnitTest { 25 class HierarchyTest extends AbstractSingleUnitTest {
26 Index index; 26 Index index;
27 SearchEngineImpl searchEngine; 27 SearchEngineImpl searchEngine;
28 28
29 void setUp() { 29 void setUp() {
30 super.setUp(); 30 super.setUp();
31 index = createMemoryIndex(); 31 index = createMemoryIndex();
32 searchEngine = new SearchEngineImpl(index); 32 searchEngine = new SearchEngineImpl(index);
33 } 33 }
34 34
35 void test_getClassMembers() { 35 test_getClassMembers() async {
36 _indexTestUnit(''' 36 await _indexTestUnit('''
37 class A { 37 class A {
38 A() {} 38 A() {}
39 var ma1; 39 var ma1;
40 ma2() {} 40 ma2() {}
41 } 41 }
42 class B extends A { 42 class B extends A {
43 B() {} 43 B() {}
44 B.named() {} 44 B.named() {}
45 var mb1; 45 var mb1;
46 mb2() {} 46 mb2() {}
47 } 47 }
48 '''); 48 ''');
49 { 49 {
50 ClassElement classA = findElement('A'); 50 ClassElement classA = findElement('A');
51 List<Element> members = getClassMembers(classA); 51 List<Element> members = getClassMembers(classA);
52 expect(members.map((e) => e.name), unorderedEquals(['ma1', 'ma2'])); 52 expect(members.map((e) => e.name), unorderedEquals(['ma1', 'ma2']));
53 } 53 }
54 { 54 {
55 ClassElement classB = findElement('B'); 55 ClassElement classB = findElement('B');
56 List<Element> members = getClassMembers(classB); 56 List<Element> members = getClassMembers(classB);
57 expect(members.map((e) => e.name), unorderedEquals(['mb1', 'mb2'])); 57 expect(members.map((e) => e.name), unorderedEquals(['mb1', 'mb2']));
58 } 58 }
59 } 59 }
60 60
61 Future test_getHierarchyMembers_constructors() { 61 test_getHierarchyMembers_constructors() async {
62 _indexTestUnit(''' 62 await _indexTestUnit('''
63 class A { 63 class A {
64 A() {} 64 A() {}
65 } 65 }
66 class B extends A { 66 class B extends A {
67 B() {} 67 B() {}
68 } 68 }
69 '''); 69 ''');
70 ClassElement classA = findElement("A"); 70 ClassElement classA = findElement("A");
71 ClassElement classB = findElement("B"); 71 ClassElement classB = findElement("B");
72 ClassMemberElement memberA = classA.constructors[0]; 72 ClassMemberElement memberA = classA.constructors[0];
73 ClassMemberElement memberB = classB.constructors[0]; 73 ClassMemberElement memberB = classB.constructors[0];
74 var futureA = getHierarchyMembers(searchEngine, memberA).then((members) { 74 var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
75 expect(members, unorderedEquals([memberA])); 75 expect(members, unorderedEquals([memberA]));
76 }); 76 });
77 var futureB = getHierarchyMembers(searchEngine, memberB).then((members) { 77 var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
78 expect(members, unorderedEquals([memberB])); 78 expect(members, unorderedEquals([memberB]));
79 }); 79 });
80 return Future.wait([futureA, futureB]); 80 return Future.wait([futureA, futureB]);
81 } 81 }
82 82
83 Future test_getHierarchyMembers_fields() { 83 test_getHierarchyMembers_fields() async {
84 _indexTestUnit(''' 84 await _indexTestUnit('''
85 class A { 85 class A {
86 int foo; 86 int foo;
87 } 87 }
88 class B extends A { 88 class B extends A {
89 get foo => null; 89 get foo => null;
90 } 90 }
91 class C extends B { 91 class C extends B {
92 set foo(x) {} 92 set foo(x) {}
93 } 93 }
94 class D { 94 class D {
(...skipping 16 matching lines...) Expand all
111 }); 111 });
112 var futureC = getHierarchyMembers(searchEngine, memberC).then((members) { 112 var futureC = getHierarchyMembers(searchEngine, memberC).then((members) {
113 expect(members, unorderedEquals([memberA, memberB, memberC])); 113 expect(members, unorderedEquals([memberA, memberB, memberC]));
114 }); 114 });
115 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) { 115 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
116 expect(members, unorderedEquals([memberD])); 116 expect(members, unorderedEquals([memberD]));
117 }); 117 });
118 return Future.wait([futureA, futureB, futureC, futureD]); 118 return Future.wait([futureA, futureB, futureC, futureD]);
119 } 119 }
120 120
121 Future test_getHierarchyMembers_fields_static() async { 121 test_getHierarchyMembers_fields_static() async {
122 _indexTestUnit(''' 122 await _indexTestUnit('''
123 class A { 123 class A {
124 static int foo; 124 static int foo;
125 } 125 }
126 class B extends A { 126 class B extends A {
127 static get foo => null; 127 static get foo => null;
128 } 128 }
129 class C extends B { 129 class C extends B {
130 static set foo(x) {} 130 static set foo(x) {}
131 } 131 }
132 '''); 132 ''');
(...skipping 13 matching lines...) Expand all
146 await getHierarchyMembers(searchEngine, memberB); 146 await getHierarchyMembers(searchEngine, memberB);
147 expect(members, unorderedEquals([memberB])); 147 expect(members, unorderedEquals([memberB]));
148 } 148 }
149 { 149 {
150 Set<ClassMemberElement> members = 150 Set<ClassMemberElement> members =
151 await getHierarchyMembers(searchEngine, memberC); 151 await getHierarchyMembers(searchEngine, memberC);
152 expect(members, unorderedEquals([memberC])); 152 expect(members, unorderedEquals([memberC]));
153 } 153 }
154 } 154 }
155 155
156 Future test_getHierarchyMembers_methods() { 156 test_getHierarchyMembers_methods() async {
157 _indexTestUnit(''' 157 await _indexTestUnit('''
158 class A { 158 class A {
159 foo() {} 159 foo() {}
160 } 160 }
161 class B extends A { 161 class B extends A {
162 foo() {} 162 foo() {}
163 } 163 }
164 class C extends B { 164 class C extends B {
165 foo() {} 165 foo() {}
166 } 166 }
167 class D { 167 class D {
(...skipping 24 matching lines...) Expand all
192 }); 192 });
193 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) { 193 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
194 expect(members, unorderedEquals([memberD, memberE])); 194 expect(members, unorderedEquals([memberD, memberE]));
195 }); 195 });
196 var futureE = getHierarchyMembers(searchEngine, memberE).then((members) { 196 var futureE = getHierarchyMembers(searchEngine, memberE).then((members) {
197 expect(members, unorderedEquals([memberD, memberE])); 197 expect(members, unorderedEquals([memberD, memberE]));
198 }); 198 });
199 return Future.wait([futureA, futureB, futureC, futureD, futureE]); 199 return Future.wait([futureA, futureB, futureC, futureD, futureE]);
200 } 200 }
201 201
202 Future test_getHierarchyMembers_methods_static() async { 202 test_getHierarchyMembers_methods_static() async {
203 _indexTestUnit(''' 203 await _indexTestUnit('''
204 class A { 204 class A {
205 static foo() {} 205 static foo() {}
206 } 206 }
207 class B extends A { 207 class B extends A {
208 static foo() {} 208 static foo() {}
209 } 209 }
210 '''); 210 ''');
211 ClassElement classA = findElement('A'); 211 ClassElement classA = findElement('A');
212 ClassElement classB = findElement('B'); 212 ClassElement classB = findElement('B');
213 ClassMemberElement memberA = classA.methods[0]; 213 ClassMemberElement memberA = classA.methods[0];
214 ClassMemberElement memberB = classB.methods[0]; 214 ClassMemberElement memberB = classB.methods[0];
215 { 215 {
216 Set<ClassMemberElement> members = 216 Set<ClassMemberElement> members =
217 await getHierarchyMembers(searchEngine, memberA); 217 await getHierarchyMembers(searchEngine, memberA);
218 expect(members, unorderedEquals([memberA])); 218 expect(members, unorderedEquals([memberA]));
219 } 219 }
220 { 220 {
221 Set<ClassMemberElement> members = 221 Set<ClassMemberElement> members =
222 await getHierarchyMembers(searchEngine, memberB); 222 await getHierarchyMembers(searchEngine, memberB);
223 expect(members, unorderedEquals([memberB])); 223 expect(members, unorderedEquals([memberB]));
224 } 224 }
225 } 225 }
226 226
227 Future test_getHierarchyMembers_withInterfaces() { 227 test_getHierarchyMembers_withInterfaces() async {
228 _indexTestUnit(''' 228 await _indexTestUnit('''
229 class A { 229 class A {
230 foo() {} 230 foo() {}
231 } 231 }
232 class B implements A { 232 class B implements A {
233 foo() {} 233 foo() {}
234 } 234 }
235 abstract class C implements A { 235 abstract class C implements A {
236 } 236 }
237 class D extends C { 237 class D extends C {
238 foo() {} 238 foo() {}
(...skipping 13 matching lines...) Expand all
252 }); 252 });
253 var futureB = getHierarchyMembers(searchEngine, memberB).then((members) { 253 var futureB = getHierarchyMembers(searchEngine, memberB).then((members) {
254 expect(members, unorderedEquals([memberA, memberB, memberD])); 254 expect(members, unorderedEquals([memberA, memberB, memberD]));
255 }); 255 });
256 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) { 256 var futureD = getHierarchyMembers(searchEngine, memberD).then((members) {
257 expect(members, unorderedEquals([memberA, memberB, memberD])); 257 expect(members, unorderedEquals([memberA, memberB, memberD]));
258 }); 258 });
259 return Future.wait([futureA, futureB, futureD]); 259 return Future.wait([futureA, futureB, futureD]);
260 } 260 }
261 261
262 void test_getMembers() { 262 test_getMembers() async {
263 _indexTestUnit(''' 263 await _indexTestUnit('''
264 class A { 264 class A {
265 A() {} 265 A() {}
266 var ma1; 266 var ma1;
267 ma2() {} 267 ma2() {}
268 } 268 }
269 class B extends A { 269 class B extends A {
270 B() {} 270 B() {}
271 B.named() {} 271 B.named() {}
272 var mb1; 272 var mb1;
273 mb2() {} 273 mb2() {}
(...skipping 26 matching lines...) Expand all
300 'ma2', 300 'ma2',
301 '==', 301 '==',
302 'toString', 302 'toString',
303 'hashCode', 303 'hashCode',
304 'noSuchMethod', 304 'noSuchMethod',
305 'runtimeType' 305 'runtimeType'
306 ])); 306 ]));
307 } 307 }
308 } 308 }
309 309
310 void test_getSuperClasses() { 310 test_getSuperClasses() async {
311 _indexTestUnit(''' 311 await _indexTestUnit('''
312 class A {} 312 class A {}
313 class B extends A {} 313 class B extends A {}
314 class C extends B {} 314 class C extends B {}
315 class D extends B implements A {} 315 class D extends B implements A {}
316 class M {} 316 class M {}
317 class E extends A with M {} 317 class E extends A with M {}
318 class F implements A {} 318 class F implements A {}
319 '''); 319 ''');
320 ClassElement classA = findElement("A"); 320 ClassElement classA = findElement("A");
321 ClassElement classB = findElement("B"); 321 ClassElement classB = findElement("B");
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
354 Set<ClassElement> supers = getSuperClasses(classE); 354 Set<ClassElement> supers = getSuperClasses(classE);
355 expect(supers, unorderedEquals([objectElement, classA])); 355 expect(supers, unorderedEquals([objectElement, classA]));
356 } 356 }
357 // F 357 // F
358 { 358 {
359 Set<ClassElement> supers = getSuperClasses(classF); 359 Set<ClassElement> supers = getSuperClasses(classF);
360 expect(supers, unorderedEquals([objectElement, classA])); 360 expect(supers, unorderedEquals([objectElement, classA]));
361 } 361 }
362 } 362 }
363 363
364 void _indexTestUnit(String code) { 364 Future<Null> _indexTestUnit(String code) async {
365 resolveTestUnit(code); 365 await resolveTestUnit(code);
366 index.indexUnit(testUnit); 366 index.indexUnit(testUnit);
367 } 367 }
368 } 368 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698