| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 analyzer.test.src.task.dart_test; | 5 library analyzer.test.src.task.dart_test; |
| 6 | 6 |
| 7 import 'package:analyzer/dart/ast/ast.dart'; | 7 import 'package:analyzer/dart/ast/ast.dart'; |
| 8 import 'package:analyzer/dart/ast/token.dart'; | 8 import 'package:analyzer/dart/ast/token.dart'; |
| 9 import 'package:analyzer/dart/ast/visitor.dart'; | 9 import 'package:analyzer/dart/ast/visitor.dart'; |
| 10 import 'package:analyzer/dart/element/element.dart'; | 10 import 'package:analyzer/dart/element/element.dart'; |
| (...skipping 2249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2260 LibrarySpecificUnit target = new LibrarySpecificUnit(source, source); | 2260 LibrarySpecificUnit target = new LibrarySpecificUnit(source, source); |
| 2261 computeResult(target, USED_IMPORTED_ELEMENTS, | 2261 computeResult(target, USED_IMPORTED_ELEMENTS, |
| 2262 matcher: isGatherUsedImportedElementsTask); | 2262 matcher: isGatherUsedImportedElementsTask); |
| 2263 usedElements = outputs[USED_IMPORTED_ELEMENTS]; | 2263 usedElements = outputs[USED_IMPORTED_ELEMENTS]; |
| 2264 usedElementNames = usedElements.elements.map((e) => e.name).toSet(); | 2264 usedElementNames = usedElements.elements.map((e) => e.name).toSet(); |
| 2265 } | 2265 } |
| 2266 } | 2266 } |
| 2267 | 2267 |
| 2268 @reflectiveTest | 2268 @reflectiveTest |
| 2269 class GatherUsedLocalElementsTaskTest extends _AbstractDartTaskTest { | 2269 class GatherUsedLocalElementsTaskTest extends _AbstractDartTaskTest { |
| 2270 List<Element> definedElements; | |
| 2271 Set<String> definedElementNames; | |
| 2272 UsedLocalElements usedElements; | 2270 UsedLocalElements usedElements; |
| 2273 Set<String> usedElementNames; | 2271 Set<String> usedElementNames; |
| 2274 | 2272 |
| 2275 test_perform_forPart_afterLibraryUpdate() { | 2273 test_perform_forPart_afterLibraryUpdate() { |
| 2276 Source libSource = newSource( | 2274 Source libSource = newSource( |
| 2277 '/my_lib.dart', | 2275 '/my_lib.dart', |
| 2278 ''' | 2276 ''' |
| 2279 library my_lib; | 2277 library my_lib; |
| 2280 part 'my_part.dart'; | 2278 part 'my_part.dart'; |
| 2281 foo() => null; | 2279 foo() => null; |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2326 Source source = newSource( | 2324 Source source = newSource( |
| 2327 '/test.dart', | 2325 '/test.dart', |
| 2328 r''' | 2326 r''' |
| 2329 main() { | 2327 main() { |
| 2330 var v1 = 1; | 2328 var v1 = 1; |
| 2331 var v2 = 2; | 2329 var v2 = 2; |
| 2332 print(v2); | 2330 print(v2); |
| 2333 }'''); | 2331 }'''); |
| 2334 _computeUsedElements(source); | 2332 _computeUsedElements(source); |
| 2335 // validate | 2333 // validate |
| 2336 expect(definedElementNames, unorderedEquals(['main', 'v1', 'v2'])); | |
| 2337 expect(usedElementNames, unorderedEquals(['v2'])); | 2334 expect(usedElementNames, unorderedEquals(['v2'])); |
| 2338 } | 2335 } |
| 2339 | 2336 |
| 2340 test_perform_method() { | 2337 test_perform_method() { |
| 2341 Source source = newSource( | 2338 Source source = newSource( |
| 2342 '/test.dart', | 2339 '/test.dart', |
| 2343 r''' | 2340 r''' |
| 2344 class A { | 2341 class A { |
| 2345 _m1() {} | 2342 _m1() {} |
| 2346 _m2() {} | 2343 _m2() {} |
| 2347 } | 2344 } |
| 2348 | 2345 |
| 2349 main(A a, p) { | 2346 main(A a, p) { |
| 2350 a._m2(); | 2347 a._m2(); |
| 2351 p._m3(); | 2348 p._m3(); |
| 2352 } | 2349 } |
| 2353 '''); | 2350 '''); |
| 2354 _computeUsedElements(source); | 2351 _computeUsedElements(source); |
| 2355 // validate | 2352 // validate |
| 2356 expect(definedElementNames, | |
| 2357 unorderedEquals(['A', '_m1', '_m2', 'main', 'a', 'p'])); | |
| 2358 expect(usedElementNames, unorderedEquals(['A', 'a', 'p', '_m2'])); | 2353 expect(usedElementNames, unorderedEquals(['A', 'a', 'p', '_m2'])); |
| 2359 expect(usedElements.members, unorderedEquals(['_m2', '_m3'])); | 2354 expect(usedElements.members, unorderedEquals(['_m2', '_m3'])); |
| 2360 } | 2355 } |
| 2361 | 2356 |
| 2362 test_perform_unresolvedImportWithPrefix() { | |
| 2363 Source source = newSource( | |
| 2364 '/test.dart', | |
| 2365 r''' | |
| 2366 import 'x' as p; | |
| 2367 '''); | |
| 2368 _computeUsedElements(source); | |
| 2369 // validate | |
| 2370 expect(definedElementNames, isEmpty); | |
| 2371 expect(usedElementNames, isEmpty); | |
| 2372 } | |
| 2373 | |
| 2374 void _computeUsedElements(Source source) { | 2357 void _computeUsedElements(Source source) { |
| 2375 LibrarySpecificUnit target = new LibrarySpecificUnit(source, source); | 2358 LibrarySpecificUnit target = new LibrarySpecificUnit(source, source); |
| 2376 computeResult(target, USED_LOCAL_ELEMENTS, | 2359 computeResult(target, USED_LOCAL_ELEMENTS, |
| 2377 matcher: isGatherUsedLocalElementsTask); | 2360 matcher: isGatherUsedLocalElementsTask); |
| 2378 definedElements = outputs[DEFINED_ELEMENTS]; | |
| 2379 definedElementNames = definedElements.map((e) => e.name).toSet(); | |
| 2380 usedElements = outputs[USED_LOCAL_ELEMENTS]; | 2361 usedElements = outputs[USED_LOCAL_ELEMENTS]; |
| 2381 usedElementNames = usedElements.elements.map((e) => e.name).toSet(); | 2362 usedElementNames = usedElements.elements.map((e) => e.name).toSet(); |
| 2382 } | 2363 } |
| 2383 } | 2364 } |
| 2384 | 2365 |
| 2385 @reflectiveTest | 2366 @reflectiveTest |
| 2386 class GenerateHintsTaskTest extends _AbstractDartTaskTest { | 2367 class GenerateHintsTaskTest extends _AbstractDartTaskTest { |
| 2387 test_perform_bestPractices_missingReturn() { | 2368 test_perform_bestPractices_missingReturn() { |
| 2388 Source source = newSource( | 2369 Source source = newSource( |
| 2389 '/test.dart', | 2370 '/test.dart', |
| (...skipping 2598 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4988 /** | 4969 /** |
| 4989 * Fill [errorListener] with [result] errors in the current [task]. | 4970 * Fill [errorListener] with [result] errors in the current [task]. |
| 4990 */ | 4971 */ |
| 4991 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { | 4972 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { |
| 4992 List<AnalysisError> errors = task.outputs[result]; | 4973 List<AnalysisError> errors = task.outputs[result]; |
| 4993 expect(errors, isNotNull, reason: result.name); | 4974 expect(errors, isNotNull, reason: result.name); |
| 4994 errorListener = new GatheringErrorListener(); | 4975 errorListener = new GatheringErrorListener(); |
| 4995 errorListener.addAll(errors); | 4976 errorListener.addAll(errors); |
| 4996 } | 4977 } |
| 4997 } | 4978 } |
| OLD | NEW |