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

Unified Diff: pkg/front_end/test/scanner_replacement_test.dart

Issue 2910583002: improve fasta interpolation recovery (Closed)
Patch Set: remove unnecessary label Created 3 years, 7 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/front_end/test/scanner_replacement_test.dart
diff --git a/pkg/front_end/test/scanner_replacement_test.dart b/pkg/front_end/test/scanner_replacement_test.dart
index e41a4133534e119f457bf8745a4bbd44f3b902d6..b0e39cb4df7d592945fbff5b2e652b76eba304f7 100644
--- a/pkg/front_end/test/scanner_replacement_test.dart
+++ b/pkg/front_end/test/scanner_replacement_test.dart
@@ -30,11 +30,19 @@ main() {
/// These tests help to validate the correctness of the analyzer->Fasta token
/// stream conversion.
@reflectiveTest
-class ScannerTest_Replacement extends ScannerTest {
+class ScannerTest_Replacement extends ScannerTestBase {
+ ScannerTest_Replacement() {
+ usingFasta = true;
+ }
+
@override
analyzer.Token scanWithListener(String source, ErrorListener listener,
{bool genericMethodComments: false,
bool lazyAssignmentOperators: false}) {
+ // Process the source similar to
+ // pkg/analyzer/lib/src/dart/scanner/scanner.dart
+ // to simulate replacing the analyzer scanner
+
fasta.ScannerResult result = fasta.scanString(source,
includeComments: true,
scanGenericMethodComments: genericMethodComments,
@@ -44,6 +52,7 @@ class ScannerTest_Replacement extends ScannerTest {
// so that the token stream can be validated before and after recovery
return tokens;
}));
+
fasta.Token tokens = result.tokens;
assertValidTokenStream(tokens);
assertValidBeginTokens(tokens);
@@ -52,6 +61,10 @@ class ScannerTest_Replacement extends ScannerTest {
tokens = defaultRecoveryStrategy(bytes, tokens, result.lineStarts);
assertValidTokenStream(tokens, errorsFirst: true);
}
+
+ // fasta pretends there is an additional line at EOF
+ result.lineStarts.removeLast();
+
return extractErrors(tokens, listener);
}

Powered by Google App Engine
This is Rietveld 408576698