Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(549)

Unified Diff: pkg/analyzer/test/generated/parser_fasta_test.dart

Issue 3001993002: improve fasta export directive recovery (Closed)
Patch Set: Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 fed2bb4a307d71bc74e85a78572ee11b9626aa32..db4fb0f09e508ae0b3bced02f6563e10de2fea7e 100644
--- a/pkg/analyzer/test/generated/parser_fasta_test.dart
+++ b/pkg/analyzer/test/generated/parser_fasta_test.dart
@@ -632,12 +632,6 @@ class ErrorParserTest_Fasta extends FastaParserTestCase
super.test_expectedToken_parseStatement_afterVoid();
}
- @override
- @failingTest
- void test_expectedToken_semicolonMissingAfterExport() {
- super.test_expectedToken_semicolonMissingAfterExport();
- }
-
@override
@failingTest
void test_expectedToken_semicolonMissingAfterExpression() {
@@ -2370,8 +2364,7 @@ class FastaParserTestCase extends Object
@override
ConstructorInitializer parseConstructorInitializer(String code) {
String source = 'class __Test { __Test() : $code; }';
- var unit =
- _runParser(source, (parser) => parser.parseUnit) as CompilationUnit;
+ var unit = _runParser(source, null) as CompilationUnit;
var clazz = unit.declarations[0] as ClassDeclaration;
var constructor = clazz.members[0] as ConstructorDeclaration;
return constructor.initializers.single;
@@ -2380,7 +2373,7 @@ class FastaParserTestCase extends Object
@override
CompilationUnit parseDirectives(String source,
[List<ErrorCode> errorCodes = const <ErrorCode>[]]) {
- return _runParser(source, (parser) => parser.parseUnit, errorCodes);
+ return _runParser(source, null, errorCodes);
}
@override
@@ -2807,7 +2800,7 @@ class ParserProxy implements analyzer.Parser {
@override
CompilationUnit parseCompilationUnit2() {
- var result = _run((parser) => parser.parseUnit) as CompilationUnit;
+ var result = _run(null) as CompilationUnit;
_eventListener.expectEmpty();
return result;
}
@@ -2830,7 +2823,14 @@ class ParserProxy implements analyzer.Parser {
* Runs a single parser function, and returns the result as an analyzer AST.
*/
Object _run(ParseFunction getParseFunction(fasta.Parser parser)) {
- var parseFunction = getParseFunction(_fastaParser);
+ ParseFunction parseFunction;
+ if (getParseFunction != null) {
+ parseFunction = getParseFunction(_fastaParser);
+ _fastaParser.listener.firstToken = _currentFastaToken;
+ } else {
+ parseFunction = _fastaParser.parseUnit;
+ // firstToken should be set by beginCompilationUnit event.
+ }
_currentFastaToken = parseFunction(_currentFastaToken);
expect(_currentFastaToken.isEof, isTrue);
expect(_astBuilder.stack, hasLength(1));

Powered by Google App Engine
This is Rietveld 408576698