| OLD | NEW |
| 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 analyzer.test.generated.parser_test; | 5 library analyzer.test.generated.parser_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/standard_ast_factory.dart'; | 8 import 'package:analyzer/dart/ast/standard_ast_factory.dart'; |
| 9 import 'package:analyzer/dart/ast/token.dart'; | 9 import 'package:analyzer/dart/ast/token.dart'; |
| 10 import 'package:analyzer/dart/ast/visitor.dart'; | 10 import 'package:analyzer/dart/ast/visitor.dart'; |
| (...skipping 1901 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1912 } | 1912 } |
| 1913 | 1913 |
| 1914 void test_missingIdentifier_beforeClosingCurly() { | 1914 void test_missingIdentifier_beforeClosingCurly() { |
| 1915 createParser('int}'); | 1915 createParser('int}'); |
| 1916 ClassMember member = parser.parseClassMember('C'); | 1916 ClassMember member = parser.parseClassMember('C'); |
| 1917 expectNotNullIfNoErrors(member); | 1917 expectNotNullIfNoErrors(member); |
| 1918 listener.assertErrorsWithCodes( | 1918 listener.assertErrorsWithCodes( |
| 1919 [ParserErrorCode.MISSING_IDENTIFIER, ParserErrorCode.EXPECTED_TOKEN]); | 1919 [ParserErrorCode.MISSING_IDENTIFIER, ParserErrorCode.EXPECTED_TOKEN]); |
| 1920 } | 1920 } |
| 1921 | 1921 |
| 1922 void test_missingIdentifier_functionDeclaration_returnTypeWithoutName() { | |
| 1923 createParser('A<T> () {}'); | |
| 1924 Statement statement = parser.parseFunctionDeclarationStatement(); | |
| 1925 expectNotNullIfNoErrors(statement); | |
| 1926 listener.assertErrorsWithCodes([ParserErrorCode.MISSING_IDENTIFIER]); | |
| 1927 } | |
| 1928 | |
| 1929 void test_missingIdentifier_inEnum() { | 1922 void test_missingIdentifier_inEnum() { |
| 1930 createParser('enum E {, TWO}'); | 1923 createParser('enum E {, TWO}'); |
| 1931 EnumDeclaration declaration = | 1924 EnumDeclaration declaration = |
| 1932 parser.parseEnumDeclaration(emptyCommentAndMetadata()); | 1925 parser.parseEnumDeclaration(emptyCommentAndMetadata()); |
| 1933 expectNotNullIfNoErrors(declaration); | 1926 expectNotNullIfNoErrors(declaration); |
| 1934 listener.assertErrorsWithCodes([ParserErrorCode.MISSING_IDENTIFIER]); | 1927 listener.assertErrorsWithCodes([ParserErrorCode.MISSING_IDENTIFIER]); |
| 1935 } | 1928 } |
| 1936 | 1929 |
| 1937 void test_missingIdentifier_inSymbol_afterPeriod() { | 1930 void test_missingIdentifier_inSymbol_afterPeriod() { |
| 1938 createParser('#a.'); | 1931 createParser('#a.'); |
| (...skipping 7613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9552 createParser('E f<E>(E p) => p * 2;'); | 9545 createParser('E f<E>(E p) => p * 2;'); |
| 9553 FunctionDeclarationStatement statement = | 9546 FunctionDeclarationStatement statement = |
| 9554 parser.parseFunctionDeclarationStatement(); | 9547 parser.parseFunctionDeclarationStatement(); |
| 9555 expectNotNullIfNoErrors(statement); | 9548 expectNotNullIfNoErrors(statement); |
| 9556 listener.assertNoErrors(); | 9549 listener.assertNoErrors(); |
| 9557 expect(statement.functionDeclaration, isNotNull); | 9550 expect(statement.functionDeclaration, isNotNull); |
| 9558 expect(statement.functionDeclaration.functionExpression.typeParameters, | 9551 expect(statement.functionDeclaration.functionExpression.typeParameters, |
| 9559 isNotNull); | 9552 isNotNull); |
| 9560 } | 9553 } |
| 9561 | 9554 |
| 9555 void test_parseFunctionDeclarationStatement_typeParameters_noReturnType() { |
| 9556 createParser('f<E>(E p) => p * 2;'); |
| 9557 FunctionDeclarationStatement statement = |
| 9558 parser.parseFunctionDeclarationStatement(); |
| 9559 expectNotNullIfNoErrors(statement); |
| 9560 listener.assertNoErrors(); |
| 9561 expect(statement.functionDeclaration, isNotNull); |
| 9562 expect(statement.functionDeclaration.functionExpression.typeParameters, |
| 9563 isNotNull); |
| 9564 } |
| 9565 |
| 9562 void test_parseFunctionExpression_body_inExpression() { | 9566 void test_parseFunctionExpression_body_inExpression() { |
| 9563 createParser('(int i) => i++'); | 9567 createParser('(int i) => i++'); |
| 9564 FunctionExpression expression = parser.parseFunctionExpression(); | 9568 FunctionExpression expression = parser.parseFunctionExpression(); |
| 9565 expectNotNullIfNoErrors(expression); | 9569 expectNotNullIfNoErrors(expression); |
| 9566 listener.assertNoErrors(); | 9570 listener.assertNoErrors(); |
| 9567 expect(expression.body, isNotNull); | 9571 expect(expression.body, isNotNull); |
| 9568 expect(expression.typeParameters, isNull); | 9572 expect(expression.typeParameters, isNull); |
| 9569 expect(expression.parameters, isNotNull); | 9573 expect(expression.parameters, isNotNull); |
| 9570 expect((expression.body as ExpressionFunctionBody).semicolon, isNull); | 9574 expect((expression.body as ExpressionFunctionBody).semicolon, isNull); |
| 9571 } | 9575 } |
| (...skipping 2288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11860 Statement statement = parser.parseStatement2(); | 11864 Statement statement = parser.parseStatement2(); |
| 11861 expectNotNullIfNoErrors(statement); | 11865 expectNotNullIfNoErrors(statement); |
| 11862 listener.assertNoErrors(); | 11866 listener.assertNoErrors(); |
| 11863 expect(statement, new isInstanceOf<FunctionDeclarationStatement>()); | 11867 expect(statement, new isInstanceOf<FunctionDeclarationStatement>()); |
| 11864 FunctionDeclarationStatement declaration = statement; | 11868 FunctionDeclarationStatement declaration = statement; |
| 11865 expect(declaration.functionDeclaration, isNotNull); | 11869 expect(declaration.functionDeclaration, isNotNull); |
| 11866 expect(declaration.functionDeclaration.functionExpression.typeParameters, | 11870 expect(declaration.functionDeclaration.functionExpression.typeParameters, |
| 11867 isNotNull); | 11871 isNotNull); |
| 11868 } | 11872 } |
| 11869 | 11873 |
| 11870 @failingTest | |
| 11871 void test_parseStatement_functionDeclaration_noReturnType_typeParameters() { | 11874 void test_parseStatement_functionDeclaration_noReturnType_typeParameters() { |
| 11872 createParser('f<E>(a, b) {};'); | 11875 createParser('f<E>(a, b) {};'); |
| 11873 Statement statement = parser.parseStatement2(); | 11876 Statement statement = parser.parseStatement2(); |
| 11874 expectNotNullIfNoErrors(statement); | 11877 expectNotNullIfNoErrors(statement); |
| 11875 listener.assertNoErrors(); | 11878 listener.assertNoErrors(); |
| 11876 expect(statement, new isInstanceOf<FunctionDeclarationStatement>()); | 11879 expect(statement, new isInstanceOf<FunctionDeclarationStatement>()); |
| 11877 FunctionDeclarationStatement declaration = statement; | 11880 FunctionDeclarationStatement declaration = statement; |
| 11878 expect(declaration.functionDeclaration, isNotNull); | 11881 expect(declaration.functionDeclaration, isNotNull); |
| 11879 } | 11882 } |
| 11880 | 11883 |
| (...skipping 1577 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13458 CompilationUnit _parseDirectives(String source, | 13461 CompilationUnit _parseDirectives(String source, |
| 13459 [List<ErrorCode> errorCodes = const <ErrorCode>[]]) { | 13462 [List<ErrorCode> errorCodes = const <ErrorCode>[]]) { |
| 13460 createParser(source); | 13463 createParser(source); |
| 13461 CompilationUnit unit = parser.parseDirectives2(); | 13464 CompilationUnit unit = parser.parseDirectives2(); |
| 13462 expect(unit, isNotNull); | 13465 expect(unit, isNotNull); |
| 13463 expect(unit.declarations, hasLength(0)); | 13466 expect(unit.declarations, hasLength(0)); |
| 13464 listener.assertErrorsWithCodes(errorCodes); | 13467 listener.assertErrorsWithCodes(errorCodes); |
| 13465 return unit; | 13468 return unit; |
| 13466 } | 13469 } |
| 13467 } | 13470 } |
| OLD | NEW |