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'; |
11 import 'package:analyzer/dart/element/type.dart'; | 11 import 'package:analyzer/dart/element/type.dart'; |
12 import 'package:analyzer/src/context/cache.dart'; | 12 import 'package:analyzer/src/context/cache.dart'; |
13 import 'package:analyzer/src/dart/element/element.dart'; | 13 import 'package:analyzer/src/dart/element/element.dart'; |
14 import 'package:analyzer/src/generated/constant.dart'; | 14 import 'package:analyzer/src/generated/constant.dart'; |
15 import 'package:analyzer/src/generated/engine.dart' | 15 import 'package:analyzer/src/generated/engine.dart' |
16 show AnalysisOptions, AnalysisOptionsImpl, CacheState; | 16 show AnalysisOptions, AnalysisOptionsImpl, CacheState; |
17 import 'package:analyzer/src/generated/error.dart'; | 17 import 'package:analyzer/src/generated/error.dart'; |
18 import 'package:analyzer/src/generated/resolver.dart'; | 18 import 'package:analyzer/src/generated/resolver.dart'; |
19 import 'package:analyzer/src/generated/sdk.dart'; | 19 import 'package:analyzer/src/generated/sdk.dart'; |
20 import 'package:analyzer/src/generated/source.dart'; | 20 import 'package:analyzer/src/generated/source.dart'; |
21 import 'package:analyzer/src/services/lint.dart'; | 21 import 'package:analyzer/src/services/lint.dart'; |
22 import 'package:analyzer/src/task/dart.dart'; | 22 import 'package:analyzer/src/task/dart.dart'; |
23 import 'package:analyzer/src/task/html.dart'; | 23 import 'package:analyzer/src/task/html.dart'; |
24 import 'package:analyzer/src/task/strong/info.dart'; | 24 import 'package:analyzer/src/task/strong/ast_properties.dart' as strong_ast; |
25 import 'package:analyzer/task/dart.dart'; | 25 import 'package:analyzer/task/dart.dart'; |
26 import 'package:analyzer/task/general.dart'; | 26 import 'package:analyzer/task/general.dart'; |
27 import 'package:analyzer/task/model.dart'; | 27 import 'package:analyzer/task/model.dart'; |
28 import 'package:unittest/unittest.dart'; | 28 import 'package:unittest/unittest.dart'; |
29 | 29 |
30 import '../../generated/resolver_test_case.dart'; | 30 import '../../generated/resolver_test_case.dart'; |
31 import '../../generated/test_support.dart'; | 31 import '../../generated/test_support.dart'; |
32 import '../../reflective_tests.dart'; | 32 import '../../reflective_tests.dart'; |
33 import '../../utils.dart'; | 33 import '../../utils.dart'; |
34 import '../context/abstract_context.dart'; | 34 import '../context/abstract_context.dart'; |
(...skipping 5048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5083 CompilationUnit unit = outputs[RESOLVED_UNIT]; | 5083 CompilationUnit unit = outputs[RESOLVED_UNIT]; |
5084 | 5084 |
5085 // validate | 5085 // validate |
5086 _fillErrorListener(STRONG_MODE_ERRORS); | 5086 _fillErrorListener(STRONG_MODE_ERRORS); |
5087 expect(errorListener.errors, isEmpty); | 5087 expect(errorListener.errors, isEmpty); |
5088 | 5088 |
5089 List<Statement> statements = | 5089 List<Statement> statements = |
5090 AstFinder.getStatementsInTopLevelFunction(unit, "main"); | 5090 AstFinder.getStatementsInTopLevelFunction(unit, "main"); |
5091 ExpressionStatement statement = statements[1]; | 5091 ExpressionStatement statement = statements[1]; |
5092 IndexExpression idx = statement.expression; | 5092 IndexExpression idx = statement.expression; |
5093 expect(DynamicInvoke.get(idx.target), isNotNull); | 5093 expect(strong_ast.isDynamicInvoke(idx.target), isTrue); |
5094 expect(DynamicInvoke.get(idx.target), isNotNull); | |
5095 expect(DynamicInvoke.get(idx.target), isTrue); | |
5096 } | 5094 } |
5097 | 5095 |
5098 void test_perform_verifyError() { | 5096 void test_perform_verifyError() { |
5099 enableStrongMode(); | 5097 enableStrongMode(); |
5100 AnalysisTarget source = newSource( | 5098 AnalysisTarget source = newSource( |
5101 '/test.dart', | 5099 '/test.dart', |
5102 ''' | 5100 ''' |
5103 class A {} | 5101 class A {} |
5104 class B extends A {} | 5102 class B extends A {} |
5105 B b = new A(); | 5103 B b = new A(); |
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5376 /** | 5374 /** |
5377 * Fill [errorListener] with [result] errors in the current [task]. | 5375 * Fill [errorListener] with [result] errors in the current [task]. |
5378 */ | 5376 */ |
5379 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { | 5377 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { |
5380 List<AnalysisError> errors = task.outputs[result] as List<AnalysisError>; | 5378 List<AnalysisError> errors = task.outputs[result] as List<AnalysisError>; |
5381 expect(errors, isNotNull, reason: result.name); | 5379 expect(errors, isNotNull, reason: result.name); |
5382 errorListener = new GatheringErrorListener(); | 5380 errorListener = new GatheringErrorListener(); |
5383 errorListener.addAll(errors); | 5381 errorListener.addAll(errors); |
5384 } | 5382 } |
5385 } | 5383 } |
OLD | NEW |