| Index: pkg/analyzer/test/generated/parser_fasta_test.dart
|
| diff --git a/pkg/analyzer/test/generated/parser_fasta_test.dart b/pkg/analyzer/test/generated/parser_fasta_test.dart
|
| index 6a8c7514a67a6e12e844a1c095e6fb136588dafa..7bce960a181b40d72f29e72a1b05f7764e6a1e75 100644
|
| --- a/pkg/analyzer/test/generated/parser_fasta_test.dart
|
| +++ b/pkg/analyzer/test/generated/parser_fasta_test.dart
|
| @@ -77,7 +77,8 @@ class ComplexParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_assignableExpression_arguments_normal_chain_typeArgumentComments() {
|
| - // TODO(paulberry,ahe): Fasta doesn't support generic method comment syntax.
|
| + // TODO(brianwilkerson) Does not inject generic type arguments following a
|
| + // function-valued expression, returning "a<E>(b)(c).d<G>(e).f".
|
| super
|
| .test_assignableExpression_arguments_normal_chain_typeArgumentComments();
|
| }
|
| @@ -85,22 +86,22 @@ class ComplexParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_assignableExpression_arguments_normal_chain_typeArguments() {
|
| - // TODO(paulberry,ahe): AstBuilder doesn't implement
|
| - // endTypeArguments().
|
| + // TODO(brianwilkerson) Does not parse generic type arguments following a
|
| + // function-valued expression, returning the binary expression "a<E>(b) < F".
|
| super.test_assignableExpression_arguments_normal_chain_typeArguments();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_equalityExpression_normal() {
|
| - // TODO(scheglov) error checking is not implemented
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_equalityExpression_normal();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_equalityExpression_super() {
|
| - // TODO(scheglov) error checking is not implemented
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_equalityExpression_super();
|
| }
|
| }
|
| @@ -114,270 +115,290 @@ class ErrorParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_annotationOnEnumConstant_first() {
|
| + // TODO(brianwilkerson) Does not support annotations on enum constants.
|
| super.test_annotationOnEnumConstant_first();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_annotationOnEnumConstant_middle() {
|
| + // TODO(brianwilkerson) Does not support annotations on enum constants.
|
| super.test_annotationOnEnumConstant_middle();
|
| }
|
|
|
| @override
|
| @failingTest
|
| - void test_breakOutsideOfLoop_breakInDoStatement() {
|
| - super.test_breakOutsideOfLoop_breakInDoStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| - void test_breakOutsideOfLoop_breakInForStatement() {
|
| - super.test_breakOutsideOfLoop_breakInForStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| void test_breakOutsideOfLoop_breakInIfStatement() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.BREAK_OUTSIDE_OF_LOOP, found 0
|
| super.test_breakOutsideOfLoop_breakInIfStatement();
|
| }
|
|
|
| @override
|
| @failingTest
|
| - void test_breakOutsideOfLoop_breakInSwitchStatement() {
|
| - super.test_breakOutsideOfLoop_breakInSwitchStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| - void test_breakOutsideOfLoop_breakInWhileStatement() {
|
| - super.test_breakOutsideOfLoop_breakInWhileStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| void test_breakOutsideOfLoop_functionExpression_inALoop() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.BREAK_OUTSIDE_OF_LOOP, found 0
|
| super.test_breakOutsideOfLoop_functionExpression_inALoop();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_classInClass_abstract() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_classInClass_abstract();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_classInClass_nonAbstract() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_classInClass_nonAbstract();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_classTypeAlias_abstractAfterEq() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_classTypeAlias_abstractAfterEq();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_colonInPlaceOfIn() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_colonInPlaceOfIn();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constAndCovariant() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_constAndCovariant();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constAndFinal() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_constAndFinal();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constAndVar() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| super.test_constAndVar();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constClass() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_CLASS, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 2 (1, 7)
|
| super.test_constClass();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constConstructorWithBody() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_CONSTRUCTOR_WITH_BODY, found 0
|
| super.test_constConstructorWithBody();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constEnum() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_ENUM, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 2 (1, 7)
|
| super.test_constEnum();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constFactory() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_FACTORY, found 0
|
| super.test_constFactory();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constMethod() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_METHOD, found 0
|
| super.test_constMethod();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constructorWithReturnType() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONSTRUCTOR_WITH_RETURN_TYPE, found 0
|
| super.test_constructorWithReturnType();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constructorWithReturnType_var() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONSTRUCTOR_WITH_RETURN_TYPE, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (0)
|
| super.test_constructorWithReturnType_var();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_constTypedef() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONST_TYPEDEF, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 2 (1, 7)
|
| super.test_constTypedef();
|
| }
|
|
|
| @override
|
| @failingTest
|
| - void test_continueOutsideOfLoop_continueInDoStatement() {
|
| - super.test_continueOutsideOfLoop_continueInDoStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| - void test_continueOutsideOfLoop_continueInForStatement() {
|
| - super.test_continueOutsideOfLoop_continueInForStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| void test_continueOutsideOfLoop_continueInIfStatement() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONTINUE_OUTSIDE_OF_LOOP, found 0
|
| super.test_continueOutsideOfLoop_continueInIfStatement();
|
| }
|
|
|
| @override
|
| @failingTest
|
| - void test_continueOutsideOfLoop_continueInSwitchStatement() {
|
| - super.test_continueOutsideOfLoop_continueInSwitchStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| - void test_continueOutsideOfLoop_continueInWhileStatement() {
|
| - super.test_continueOutsideOfLoop_continueInWhileStatement();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| void test_continueOutsideOfLoop_functionExpression_inALoop() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONTINUE_OUTSIDE_OF_LOOP, found 0
|
| super.test_continueOutsideOfLoop_functionExpression_inALoop();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_continueWithoutLabelInCase_error() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.CONTINUE_WITHOUT_LABEL_IN_CASE, found 0
|
| super.test_continueWithoutLabelInCase_error();
|
| }
|
|
|
| @override
|
| @failingTest
|
| - void test_continueWithoutLabelInCase_noError() {
|
| - super.test_continueWithoutLabelInCase_noError();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| - void test_continueWithoutLabelInCase_noError_switchInLoop() {
|
| - super.test_continueWithoutLabelInCase_noError_switchInLoop();
|
| - }
|
| -
|
| - @override
|
| - @failingTest
|
| void test_covariantAfterVar() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_AFTER_VAR, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (4)
|
| super.test_covariantAfterVar();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantAndStatic() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_AND_STATIC, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (10)
|
| super.test_covariantAndStatic();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantConstructor() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_CONSTRUCTOR, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (10)
|
| super.test_covariantConstructor();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantMember_getter_noReturnType() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_MEMBER, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (7)
|
| super.test_covariantMember_getter_noReturnType();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantMember_getter_returnType() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_MEMBER, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (7)
|
| super.test_covariantMember_getter_returnType();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantMember_method() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_MEMBER, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (0)
|
| super.test_covariantMember_method();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantTopLevelDeclaration_class() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| + // type 'FunctionDeclarationImpl' is not a subtype of type 'ClassDeclaration' of 'member' where
|
| + // FunctionDeclarationImpl is from package:analyzer/src/dart/ast/ast.dart
|
| + // ClassDeclaration is from package:analyzer/dart/ast/ast.dart
|
| + //
|
| + // test/generated/parser_test.dart 2418:31 FastaParserTestCase&ErrorParserTestMixin.test_covariantTopLevelDeclaration_class
|
| super.test_covariantTopLevelDeclaration_class();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantTopLevelDeclaration_enum() {
|
| + // TODO(brianwilkerson) Does not recover.
|
| + // type 'FunctionDeclarationImpl' is not a subtype of type 'EnumDeclaration' of 'member' where
|
| + // FunctionDeclarationImpl is from package:analyzer/src/dart/ast/ast.dart
|
| + // EnumDeclaration is from package:analyzer/dart/ast/ast.dart
|
| + //
|
| + // test/generated/parser_test.dart 2426:30 FastaParserTestCase&ErrorParserTestMixin.test_covariantTopLevelDeclaration_enum
|
| super.test_covariantTopLevelDeclaration_enum();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_covariantTopLevelDeclaration_typedef() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.COVARIANT_TOP_LEVEL_DECLARATION, found 0;
|
| + // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 2 (1, 11)
|
| super.test_covariantTopLevelDeclaration_typedef();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_defaultValueInFunctionType_named_colon() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE, found 0
|
| super.test_defaultValueInFunctionType_named_colon();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_defaultValueInFunctionType_named_equal() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE, found 0
|
| super.test_defaultValueInFunctionType_named_equal();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_defaultValueInFunctionType_positional() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE, found 0
|
| super.test_defaultValueInFunctionType_positional();
|
| }
|
|
|
| @override
|
| @failingTest
|
| void test_directiveAfterDeclaration_classBeforeDirective() {
|
| + // TODO(brianwilkerson) Wrong errors:
|
| + // Expected 1 errors of type ParserErrorCode.DIRECTIVE_AFTER_DECLARATION, found 0
|
| super.test_directiveAfterDeclaration_classBeforeDirective();
|
| }
|
|
|
| @@ -2521,7 +2542,7 @@ class FormalParameterParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseNormalFormalParameter_field_const_noType() {
|
| - // TODO(brianwilkerson) Extra error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (1)
|
| super.test_parseNormalFormalParameter_field_const_noType();
|
| }
|
| @@ -2536,7 +2557,7 @@ class FormalParameterParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseNormalFormalParameter_field_const_type() {
|
| - // TODO(brianwilkerson) Extra error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (1)
|
| super.test_parseNormalFormalParameter_field_const_type();
|
| }
|
| @@ -2551,7 +2572,7 @@ class FormalParameterParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseNormalFormalParameter_simple_const_noType() {
|
| - // TODO(brianwilkerson) Extra error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (1)
|
| super.test_parseNormalFormalParameter_simple_const_noType();
|
| }
|
| @@ -2566,7 +2587,7 @@ class FormalParameterParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseNormalFormalParameter_simple_const_type() {
|
| - // TODO(brianwilkerson) Extra error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (1)
|
| super.test_parseNormalFormalParameter_simple_const_type();
|
| }
|
| @@ -2718,6 +2739,15 @@ class ParserProxy implements analyzer.Parser {
|
| }
|
|
|
| @override
|
| + FormalParameterList parseFormalParameterList({bool inFunctionType: false}) {
|
| + return _run((parser) => (token) => parser.parseFormalParameters(
|
| + token,
|
| + inFunctionType
|
| + ? fasta.MemberKind.GeneralizedFunctionType
|
| + : fasta.MemberKind.StaticMethod)) as FormalParameterList;
|
| + }
|
| +
|
| + @override
|
| FunctionBody parseFunctionBody(
|
| bool mayBeEmpty, ParserErrorCode emptyErrorCode, bool inExpression) {
|
| return _run((parser) => (token) =>
|
| @@ -3066,7 +3096,7 @@ class RecoveryParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_declarationBeforeDirective() {
|
| - // TODO(brianwilkerson) Missing error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 1 errors of type ParserErrorCode.DIRECTIVE_AFTER_DECLARATION, found 0
|
| super.test_declarationBeforeDirective();
|
| }
|
| @@ -3137,7 +3167,7 @@ class RecoveryParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_expressionList_multiple_start() {
|
| - // TODO(brianwilkerson) Missing error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 1 errors of type ParserErrorCode.MISSING_IDENTIFIER, found 0
|
| super.test_expressionList_multiple_start();
|
| }
|
| @@ -3212,7 +3242,7 @@ class RecoveryParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_incomplete_constructorInitializers_variable() {
|
| - // TODO(brianwilkerson) Missing error:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 1 errors of type ParserErrorCode.MISSING_ASSIGNMENT_IN_INITIALIZER, found 0
|
| super.test_incomplete_constructorInitializers_variable();
|
| }
|
| @@ -3484,7 +3514,7 @@ class RecoveryParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_missingSemicolon_varialeDeclarationList() {
|
| - // TODO(brianwilkerson) wrong errors:
|
| + // TODO(brianwilkerson) Wrong errors:
|
| // Expected 1 errors of type ParserErrorCode.MISSING_CONST_FINAL_VAR_OR_TYPE, found 0;
|
| // 1 errors of type ParserErrorCode.EXPECTED_TOKEN, found 0;
|
| // 0 errors of type ParserErrorCode.EXTRANEOUS_MODIFIER, found 1 (8)
|
| @@ -4114,8 +4144,6 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseReturnType_void() {
|
| - // TODO(brianwilkerson) Test isn't passing in enough context.
|
| - // Type 'void' can't be used here because it isn't a return type.
|
| super.test_parseReturnType_void();
|
| }
|
|
|
| @@ -4145,7 +4173,6 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseTypeParameterList_parameterizedWithTrailingEquals() {
|
| - // TODO(brianwilkerson) reportUnrecoverableError
|
| super.test_parseTypeParameterList_parameterizedWithTrailingEquals();
|
| }
|
|
|
| @@ -4159,7 +4186,6 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
|
| @override
|
| @failingTest
|
| void test_parseTypeParameterList_withTrailingEquals() {
|
| - // TODO(brianwilkerson) reportUnrecoverableError
|
| super.test_parseTypeParameterList_withTrailingEquals();
|
| }
|
|
|
|
|