| Index: pkg/analyzer/test/dart/element/builder_test.dart
|
| diff --git a/pkg/analyzer/test/dart/element/builder_test.dart b/pkg/analyzer/test/dart/element/builder_test.dart
|
| index ecbb202490568b8adf81e82bc918a13e6eba51ca..31883ccdf83616d606f89f3bc8f0c9aad37bedcd 100644
|
| --- a/pkg/analyzer/test/dart/element/builder_test.dart
|
| +++ b/pkg/analyzer/test/dart/element/builder_test.dart
|
| @@ -11,6 +11,7 @@ import 'package:analyzer/dart/element/element.dart';
|
| import 'package:analyzer/src/dart/ast/ast.dart';
|
| import 'package:analyzer/src/dart/element/builder.dart';
|
| import 'package:analyzer/src/dart/element/element.dart';
|
| +import 'package:analyzer/src/dart/error/syntactic_errors.dart';
|
| import 'package:analyzer/src/generated/engine.dart';
|
| import 'package:analyzer/src/generated/resolver.dart';
|
| import 'package:analyzer/src/generated/source.dart';
|
| @@ -1139,6 +1140,43 @@ main() {
|
| expect(f.parameters[0].initializer, isNotNull);
|
| }
|
|
|
| + void test_visitFieldFormalParameter() {
|
| + CompilationUnit unit = parseCompilationUnit(
|
| + r'''
|
| +main() {
|
| + f(a, this.b) {}
|
| +}
|
| +''',
|
| + [ParserErrorCode.FIELD_INITIALIZER_OUTSIDE_CONSTRUCTOR]);
|
| + var main = unit.declarations[0] as FunctionDeclaration;
|
| + var mainBody = main.functionExpression.body as BlockFunctionBody;
|
| + var mainBlock = mainBody.block;
|
| + var statement = mainBlock.statements[0] as FunctionDeclarationStatement;
|
| + FunctionDeclaration f = statement.functionDeclaration;
|
| +
|
| + // Build API elements.
|
| + {
|
| + ElementHolder holder = new ElementHolder();
|
| + unit.accept(new ApiElementBuilder(holder, compilationUnitElement));
|
| + }
|
| +
|
| + // Build local elements.
|
| + ElementHolder holder = new ElementHolder();
|
| + var builder = new LocalElementBuilder(holder, compilationUnitElement);
|
| + f.accept(builder);
|
| +
|
| + List<FormalParameter> parameters =
|
| + f.functionExpression.parameters.parameters;
|
| +
|
| + ParameterElement a = parameters[0].element;
|
| + expect(a, isNotNull);
|
| + expect(a.name, 'a');
|
| +
|
| + ParameterElement b = parameters[1].element;
|
| + expect(b, isNotNull);
|
| + expect(b.name, 'b');
|
| + }
|
| +
|
| void test_visitVariableDeclaration_local() {
|
| var holder = buildElementsForText('class C { m() { T v = null; } }');
|
| List<LocalVariableElement> variableElements = holder.localVariables;
|
|
|