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

Side by Side Diff: pkg/analysis_server/test/analysis/notification_overrides_test.dart

Issue 1478513002: Use async/await in all analysis domain tests. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years 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.analysis.notification.overrides; 5 library test.analysis.notification.overrides;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 8
9 import 'package:analysis_server/plugin/protocol/protocol.dart'; 9 import 'package:analysis_server/plugin/protocol/protocol.dart';
10 import 'package:analysis_server/src/constants.dart'; 10 import 'package:analysis_server/src/constants.dart';
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 overridesList = params.overrides; 114 overridesList = params.overrides;
115 } 115 }
116 } 116 }
117 } 117 }
118 118
119 void setUp() { 119 void setUp() {
120 super.setUp(); 120 super.setUp();
121 createProject(); 121 createProject();
122 } 122 }
123 123
124 test_afterAnalysis() { 124 test_afterAnalysis() async {
125 addTestFile(''' 125 addTestFile('''
126 class A { 126 class A {
127 m() {} // in A 127 m() {} // in A
128 } 128 }
129 class B implements A { 129 class B implements A {
130 m() {} // in B 130 m() {} // in B
131 } 131 }
132 '''); 132 ''');
133 return waitForTasksFinished().then((_) { 133 await waitForTasksFinished();
134 return prepareOverrides().then((_) { 134 await prepareOverrides();
135 assertHasOverride('m() {} // in B'); 135 assertHasOverride('m() {} // in B');
136 assertNoSuperMember(); 136 assertNoSuperMember();
137 assertHasInterfaceMember('m() {} // in A'); 137 assertHasInterfaceMember('m() {} // in A');
138 });
139 });
140 } 138 }
141 139
142 test_definedInInterface_ofInterface() { 140 test_definedInInterface_ofInterface() async {
143 addTestFile(''' 141 addTestFile('''
144 class A { 142 class A {
145 m() {} // in A 143 m() {} // in A
146 } 144 }
147 class B implements A {} 145 class B implements A {}
148 class C implements B { 146 class C implements B {
149 m() {} // in C 147 m() {} // in C
150 } 148 }
151 '''); 149 ''');
152 return prepareOverrides().then((_) { 150 await prepareOverrides();
153 assertHasOverride('m() {} // in C'); 151 assertHasOverride('m() {} // in C');
154 assertNoSuperMember(); 152 assertNoSuperMember();
155 assertHasInterfaceMember('m() {} // in A'); 153 assertHasInterfaceMember('m() {} // in A');
156 });
157 } 154 }
158 155
159 test_definedInInterface_ofSuper() { 156 test_definedInInterface_ofSuper() async {
160 addTestFile(''' 157 addTestFile('''
161 class A { 158 class A {
162 m() {} // in A 159 m() {} // in A
163 } 160 }
164 class B implements A {} 161 class B implements A {}
165 class C extends B { 162 class C extends B {
166 m() {} // in C 163 m() {} // in C
167 } 164 }
168 '''); 165 ''');
169 return prepareOverrides().then((_) { 166 await prepareOverrides();
170 assertHasOverride('m() {} // in C'); 167 assertHasOverride('m() {} // in C');
171 assertNoSuperMember(); 168 assertNoSuperMember();
172 assertHasInterfaceMember('m() {} // in A'); 169 assertHasInterfaceMember('m() {} // in A');
173 });
174 } 170 }
175 171
176 test_interface_method_direct_multiple() { 172 test_interface_method_direct_multiple() async {
177 addTestFile(''' 173 addTestFile('''
178 class IA { 174 class IA {
179 m() {} // in IA 175 m() {} // in IA
180 } 176 }
181 class IB { 177 class IB {
182 m() {} // in IB 178 m() {} // in IB
183 } 179 }
184 class A implements IA, IB { 180 class A implements IA, IB {
185 m() {} // in A 181 m() {} // in A
186 } 182 }
187 '''); 183 ''');
188 return prepareOverrides().then((_) { 184 await prepareOverrides();
189 assertHasOverride('m() {} // in A'); 185 assertHasOverride('m() {} // in A');
190 assertNoSuperMember(); 186 assertNoSuperMember();
191 assertHasInterfaceMember('m() {} // in IA'); 187 assertHasInterfaceMember('m() {} // in IA');
192 assertHasInterfaceMember('m() {} // in IB'); 188 assertHasInterfaceMember('m() {} // in IB');
193 });
194 } 189 }
195 190
196 test_interface_method_direct_single() { 191 test_interface_method_direct_single() async {
197 addTestFile(''' 192 addTestFile('''
198 class A { 193 class A {
199 m() {} // in A 194 m() {} // in A
200 } 195 }
201 class B implements A { 196 class B implements A {
202 m() {} // in B 197 m() {} // in B
203 } 198 }
204 '''); 199 ''');
205 return prepareOverrides().then((_) { 200 await prepareOverrides();
206 assertHasOverride('m() {} // in B'); 201 assertHasOverride('m() {} // in B');
207 assertNoSuperMember(); 202 assertNoSuperMember();
208 assertHasInterfaceMember('m() {} // in A'); 203 assertHasInterfaceMember('m() {} // in A');
209 });
210 } 204 }
211 205
212 test_interface_method_indirect_single() { 206 test_interface_method_indirect_single() async {
213 addTestFile(''' 207 addTestFile('''
214 class A { 208 class A {
215 m() {} // in A 209 m() {} // in A
216 } 210 }
217 class B extends A { 211 class B extends A {
218 } 212 }
219 class C implements B { 213 class C implements B {
220 m() {} // in C 214 m() {} // in C
221 } 215 }
222 '''); 216 ''');
223 return prepareOverrides().then((_) { 217 await prepareOverrides();
224 assertHasOverride('m() {} // in C'); 218 assertHasOverride('m() {} // in C');
225 assertNoSuperMember(); 219 assertNoSuperMember();
226 assertHasInterfaceMember('m() {} // in A'); 220 assertHasInterfaceMember('m() {} // in A');
227 });
228 } 221 }
229 222
230 test_interface_stopWhenFound() { 223 test_interface_stopWhenFound() async {
231 addTestFile(''' 224 addTestFile('''
232 class A { 225 class A {
233 m() {} // in A 226 m() {} // in A
234 } 227 }
235 class B extends A { 228 class B extends A {
236 m() {} // in B 229 m() {} // in B
237 } 230 }
238 class C implements B { 231 class C implements B {
239 m() {} // in C 232 m() {} // in C
240 } 233 }
241 '''); 234 ''');
242 return prepareOverrides().then((_) { 235 await prepareOverrides();
243 assertHasOverride('m() {} // in C'); 236 assertHasOverride('m() {} // in C');
244 expect(override.interfaceMembers, hasLength(1)); 237 expect(override.interfaceMembers, hasLength(1));
245 assertHasInterfaceMember('m() {} // in B'); 238 assertHasInterfaceMember('m() {} // in B');
246 });
247 } 239 }
248 240
249 test_mix_sameMethod() { 241 test_mix_sameMethod() async {
250 addTestFile(''' 242 addTestFile('''
251 class A { 243 class A {
252 m() {} // in A 244 m() {} // in A
253 } 245 }
254 abstract class B extends A { 246 abstract class B extends A {
255 } 247 }
256 class C extends A implements A { 248 class C extends A implements A {
257 m() {} // in C 249 m() {} // in C
258 } 250 }
259 '''); 251 ''');
260 return prepareOverrides().then((_) { 252 await prepareOverrides();
261 assertHasOverride('m() {} // in C'); 253 assertHasOverride('m() {} // in C');
262 assertHasSuperElement('m() {} // in A'); 254 assertHasSuperElement('m() {} // in A');
263 assertNoInterfaceMembers(); 255 assertNoInterfaceMembers();
264 });
265 } 256 }
266 257
267 test_mix_sameMethod_Object_hashCode() { 258 test_mix_sameMethod_Object_hashCode() async {
268 addTestFile(''' 259 addTestFile('''
269 class A {} 260 class A {}
270 abstract class B {} 261 abstract class B {}
271 class C extends A implements A { 262 class C extends A implements A {
272 int get hashCode => 42; 263 int get hashCode => 42;
273 } 264 }
274 '''); 265 ''');
275 return prepareOverrides().then((_) { 266 await prepareOverrides();
276 assertHasOverride('hashCode => 42;'); 267 assertHasOverride('hashCode => 42;');
277 expect(override.superclassMember, isNotNull); 268 expect(override.superclassMember, isNotNull);
278 expect(override.interfaceMembers, isNull); 269 expect(override.interfaceMembers, isNull);
279 });
280 } 270 }
281 271
282 test_staticMembers() { 272 test_staticMembers() async {
283 addTestFile(''' 273 addTestFile('''
284 class A { 274 class A {
285 static int F = 0; 275 static int F = 0;
286 static void M() {} 276 static void M() {}
287 static int get G => 0; 277 static int get G => 0;
288 static void set S(int v) {} 278 static void set S(int v) {}
289 } 279 }
290 class B extends A { 280 class B extends A {
291 static int F = 0; 281 static int F = 0;
292 static void M() {} 282 static void M() {}
293 static int get G => 0; 283 static int get G => 0;
294 static void set S(int v) {} 284 static void set S(int v) {}
295 } 285 }
296 '''); 286 ''');
297 return prepareOverrides().then((_) { 287 await prepareOverrides();
298 expect(overridesList, isEmpty); 288 expect(overridesList, isEmpty);
299 });
300 } 289 }
301 290
302 test_super_fieldByField() { 291 test_super_fieldByField() async {
303 addTestFile(''' 292 addTestFile('''
304 class A { 293 class A {
305 int fff; // in A 294 int fff; // in A
306 } 295 }
307 class B extends A { 296 class B extends A {
308 int fff; // in B 297 int fff; // in B
309 } 298 }
310 '''); 299 ''');
311 return prepareOverrides().then((_) { 300 await prepareOverrides();
312 assertHasOverride('fff; // in B'); 301 assertHasOverride('fff; // in B');
313 assertHasSuperElement('fff; // in A'); 302 assertHasSuperElement('fff; // in A');
314 assertNoInterfaceMembers(); 303 assertNoInterfaceMembers();
315 });
316 } 304 }
317 305
318 test_super_fieldByGetter() { 306 test_super_fieldByGetter() async {
319 addTestFile(''' 307 addTestFile('''
320 class A { 308 class A {
321 int fff; // in A 309 int fff; // in A
322 } 310 }
323 class B extends A { 311 class B extends A {
324 get fff => 0; // in B 312 get fff => 0; // in B
325 } 313 }
326 '''); 314 ''');
327 return prepareOverrides().then((_) { 315 await prepareOverrides();
328 assertHasOverride('fff => 0; // in B'); 316 assertHasOverride('fff => 0; // in B');
329 assertHasSuperElement('fff; // in A'); 317 assertHasSuperElement('fff; // in A');
330 assertNoInterfaceMembers(); 318 assertNoInterfaceMembers();
331 });
332 } 319 }
333 320
334 test_super_fieldByMethod() { 321 test_super_fieldByMethod() async {
335 addTestFile(''' 322 addTestFile('''
336 class A { 323 class A {
337 int fff; // in A 324 int fff; // in A
338 } 325 }
339 class B extends A { 326 class B extends A {
340 fff() {} // in B 327 fff() {} // in B
341 } 328 }
342 '''); 329 ''');
343 return prepareOverrides().then((_) { 330 await prepareOverrides();
344 assertHasOverride('fff() {} // in B'); 331 assertHasOverride('fff() {} // in B');
345 assertHasSuperElement('fff; // in A'); 332 assertHasSuperElement('fff; // in A');
346 assertNoInterfaceMembers(); 333 assertNoInterfaceMembers();
347 });
348 } 334 }
349 335
350 test_super_fieldBySetter() { 336 test_super_fieldBySetter() async {
351 addTestFile(''' 337 addTestFile('''
352 class A { 338 class A {
353 int fff; // in A 339 int fff; // in A
354 } 340 }
355 class B extends A { 341 class B extends A {
356 set fff(x) {} // in B 342 set fff(x) {} // in B
357 } 343 }
358 '''); 344 ''');
359 return prepareOverrides().then((_) { 345 await prepareOverrides();
360 assertHasOverride('fff(x) {} // in B'); 346 assertHasOverride('fff(x) {} // in B');
361 assertHasSuperElement('fff; // in A'); 347 assertHasSuperElement('fff; // in A');
362 assertNoInterfaceMembers(); 348 assertNoInterfaceMembers();
363 });
364 } 349 }
365 350
366 test_super_getterByField() { 351 test_super_getterByField() async {
367 addTestFile(''' 352 addTestFile('''
368 class A { 353 class A {
369 get fff => 0; // in A 354 get fff => 0; // in A
370 set fff(x) {} // in A 355 set fff(x) {} // in A
371 } 356 }
372 class B extends A { 357 class B extends A {
373 int fff; // in B 358 int fff; // in B
374 } 359 }
375 '''); 360 ''');
376 return prepareOverrides().then((_) { 361 await prepareOverrides();
377 assertHasOverride('fff; // in B'); 362 assertHasOverride('fff; // in B');
378 assertHasSuperElement('fff => 0; // in A'); 363 assertHasSuperElement('fff => 0; // in A');
379 assertNoInterfaceMembers(); 364 assertNoInterfaceMembers();
380 });
381 } 365 }
382 366
383 test_super_getterByGetter() { 367 test_super_getterByGetter() async {
384 addTestFile(''' 368 addTestFile('''
385 class A { 369 class A {
386 get fff => 0; // in A 370 get fff => 0; // in A
387 } 371 }
388 class B extends A { 372 class B extends A {
389 get fff => 0; // in B 373 get fff => 0; // in B
390 } 374 }
391 '''); 375 ''');
392 return prepareOverrides().then((_) { 376 await prepareOverrides();
393 assertHasOverride('fff => 0; // in B'); 377 assertHasOverride('fff => 0; // in B');
394 assertHasSuperElement('fff => 0; // in A'); 378 assertHasSuperElement('fff => 0; // in A');
395 assertNoInterfaceMembers(); 379 assertNoInterfaceMembers();
396 });
397 } 380 }
398 381
399 test_super_method_direct() { 382 test_super_method_direct() async {
400 addTestFile(''' 383 addTestFile('''
401 class A { 384 class A {
402 m() {} // in A 385 m() {} // in A
403 } 386 }
404 class B extends A { 387 class B extends A {
405 m() {} // in B 388 m() {} // in B
406 } 389 }
407 '''); 390 ''');
408 return prepareOverrides().then((_) { 391 await prepareOverrides();
409 assertHasOverride('m() {} // in B'); 392 assertHasOverride('m() {} // in B');
410 assertHasSuperElement('m() {} // in A'); 393 assertHasSuperElement('m() {} // in A');
411 assertNoInterfaceMembers(); 394 assertNoInterfaceMembers();
412 });
413 } 395 }
414 396
415 test_super_method_indirect() { 397 test_super_method_indirect() async {
416 addTestFile(''' 398 addTestFile('''
417 class A { 399 class A {
418 m() {} // in A 400 m() {} // in A
419 } 401 }
420 class B extends A { 402 class B extends A {
421 } 403 }
422 class C extends B { 404 class C extends B {
423 m() {} // in C 405 m() {} // in C
424 } 406 }
425 '''); 407 ''');
426 return prepareOverrides().then((_) { 408 await prepareOverrides();
427 assertHasOverride('m() {} // in C'); 409 assertHasOverride('m() {} // in C');
428 assertHasSuperElement('m() {} // in A'); 410 assertHasSuperElement('m() {} // in A');
429 assertNoInterfaceMembers(); 411 assertNoInterfaceMembers();
430 });
431 } 412 }
432 413
433 test_super_method_superTypeCycle() { 414 test_super_method_superTypeCycle() async {
434 addTestFile(''' 415 addTestFile('''
435 class A extends B { 416 class A extends B {
436 m() {} // in A 417 m() {} // in A
437 } 418 }
438 class B extends A { 419 class B extends A {
439 m() {} // in B 420 m() {} // in B
440 } 421 }
441 '''); 422 ''');
442 return prepareOverrides().then((_) { 423 await prepareOverrides();
443 // must finish 424 // must finish
444 });
445 } 425 }
446 426
447 test_super_setterBySetter() { 427 test_super_setterBySetter() async {
448 addTestFile(''' 428 addTestFile('''
449 class A { 429 class A {
450 set fff(x) {} // in A 430 set fff(x) {} // in A
451 } 431 }
452 class B extends A { 432 class B extends A {
453 set fff(x) {} // in B 433 set fff(x) {} // in B
454 } 434 }
455 '''); 435 ''');
456 return prepareOverrides().then((_) { 436 await prepareOverrides();
457 assertHasOverride('fff(x) {} // in B'); 437 assertHasOverride('fff(x) {} // in B');
458 assertHasSuperElement('fff(x) {} // in A'); 438 assertHasSuperElement('fff(x) {} // in A');
459 assertNoInterfaceMembers(); 439 assertNoInterfaceMembers();
460 });
461 } 440 }
462 } 441 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698