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

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

Issue 3011643002: Fix several failing tests (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
« no previous file with comments | « pkg/analyzer/lib/src/fasta/ast_builder.dart ('k') | pkg/analyzer/test/generated/parser_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 31f1ce3d862b30a97403092baad174669013d698..77c5ceeef6c86d775818373b69c093dc68cd96d0 100644
--- a/pkg/analyzer/test/generated/parser_fasta_test.dart
+++ b/pkg/analyzer/test/generated/parser_fasta_test.dart
@@ -10,6 +10,7 @@ import 'package:analyzer/error/listener.dart' show ErrorReporter;
import 'package:analyzer/src/dart/scanner/scanner.dart';
import 'package:analyzer/src/fasta/ast_builder.dart';
import 'package:analyzer/src/generated/parser.dart' as analyzer;
+import 'package:analyzer/src/generated/parser.dart' show CommentAndMetadata;
import 'package:analyzer/src/generated/utilities_dart.dart';
import 'package:analyzer/src/string_source.dart';
import 'package:front_end/src/fasta/fasta_codes.dart' show Message;
@@ -19,6 +20,7 @@ import 'package:front_end/src/fasta/parser.dart' show IdentifierContext;
import 'package:front_end/src/fasta/parser.dart' as fasta;
import 'package:front_end/src/fasta/scanner/string_scanner.dart';
import 'package:front_end/src/fasta/scanner/token.dart' as fasta;
+import 'package:front_end/src/fasta/source/stack_listener.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';
@@ -2808,6 +2810,26 @@ class ParserProxy implements analyzer.Parser {
}
@override
+ CommentAndMetadata parseCommentAndMetadata() {
+ List metadata = _run((parser) => parser.parseMetadataStar, nodeCount: -1);
Brian Wilkerson 2017/08/30 16:17:03 I think this method is wrong. After looking at the
danrubel 2017/08/30 16:18:17 Smaller CLs are better in general.
+ Comment comment = null;
+ if (metadata.length > 0 && metadata[0] is Comment) {
+ comment = metadata[0];
+ if (metadata.length > 1 && metadata[1] is List) {
+ metadata = metadata[1];
+ } else {
+ metadata = metadata.sublist(1);
+ }
+ }
+ for (Object element in metadata) {
+ if (element is NullValue) {
+ fail('Expected annotation but found $element');
+ }
+ }
+ return new CommentAndMetadata(comment, new List<Annotation>.from(metadata));
+ }
+
+ @override
CompilationUnit parseCompilationUnit2() {
var result = _run(null) as CompilationUnit;
_eventListener.expectEmpty();
@@ -2849,9 +2871,13 @@ class ParserProxy implements analyzer.Parser {
}
/**
- * Runs a single parser function, and returns the result as an analyzer AST.
+ * Runs a single parser function (returned by [getParseFunction]), and returns
+ * the result as an analyzer AST. It checks that the parse consumed all of the
+ * tokens and that there were [nodeCount] AST nodes created (unless the node
+ * count is negative).
*/
- Object _run(ParseFunction getParseFunction(fasta.Parser parser)) {
+ Object _run(ParseFunction getParseFunction(fasta.Parser parser),
+ {int nodeCount: 1}) {
ParseFunction parseFunction;
if (getParseFunction != null) {
parseFunction = getParseFunction(_fastaParser);
@@ -2862,7 +2888,12 @@ class ParserProxy implements analyzer.Parser {
}
_currentFastaToken = parseFunction(_currentFastaToken);
expect(_currentFastaToken.isEof, isTrue);
- expect(_astBuilder.stack, hasLength(1));
+ if (nodeCount >= 0) {
+ expect(_astBuilder.stack, hasLength(nodeCount));
+ }
+ if (nodeCount != 1) {
+ return _astBuilder.stack.values;
+ }
return _astBuilder.pop();
}
}
@@ -3813,7 +3844,6 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
@override
@failingTest
void test_parseCombinator_hide() {
- // TODO(brianwilkerson) exception:
// Uninteresting. Covered by the test_parseCombinators_* methods.
super.test_parseCombinator_hide();
}
@@ -3821,149 +3851,61 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
@override
@failingTest
void test_parseCombinator_show() {
- // TODO(brianwilkerson) exception:
// Uninteresting. Covered by the test_parseCombinators_* methods.
super.test_parseCombinator_show();
}
@override
@failingTest
- void test_parseCombinators_h() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseCombinators_h();
- }
-
- @override
- @failingTest
- void test_parseCombinators_hs() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseCombinators_hs();
- }
-
- @override
- @failingTest
- void test_parseCombinators_hshs() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseCombinators_hshs();
- }
-
- @override
- @failingTest
- void test_parseCombinators_s() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseCombinators_s();
- }
-
- @override
- @failingTest
void test_parseCommentAndMetadata_c() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Metadata
super.test_parseCommentAndMetadata_c();
}
@override
@failingTest
- void test_parseCommentAndMetadata_cmc() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
- super.test_parseCommentAndMetadata_cmc();
- }
-
- @override
- @failingTest
- void test_parseCommentAndMetadata_cmcm() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
- super.test_parseCommentAndMetadata_cmcm();
- }
-
- @override
- @failingTest
- void test_parseCommentAndMetadata_cmm() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
- super.test_parseCommentAndMetadata_cmm();
- }
-
- @override
- @failingTest
void test_parseCommentAndMetadata_m() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Comments
super.test_parseCommentAndMetadata_m();
}
@override
@failingTest
void test_parseCommentAndMetadata_mcm() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Comments
super.test_parseCommentAndMetadata_mcm();
}
@override
@failingTest
void test_parseCommentAndMetadata_mcmc() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Comments
super.test_parseCommentAndMetadata_mcmc();
}
@override
@failingTest
void test_parseCommentAndMetadata_mm() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Comments
super.test_parseCommentAndMetadata_mm();
}
@override
@failingTest
void test_parseCommentAndMetadata_none() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Comments
super.test_parseCommentAndMetadata_none();
}
@override
@failingTest
void test_parseCommentAndMetadata_singleLine() {
- // TODO(brianwilkerson) exception:
- // NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseCommentAndMetadata'.
+ // TODO(brianwilkerson) Expected annotation but found NullValue.Metadata
super.test_parseCommentAndMetadata_singleLine();
}
@override
@failingTest
- void test_parseConfiguration_noOperator_dottedIdentifier() {
- // TODO(brianwilkerson) Missing right parenthesis.
- super.test_parseConfiguration_noOperator_dottedIdentifier();
- }
-
- @override
- @failingTest
- void test_parseConfiguration_noOperator_simpleIdentifier() {
- // TODO(brianwilkerson) Missing right parenthesis.
- super.test_parseConfiguration_noOperator_simpleIdentifier();
- }
-
- @override
- @failingTest
- void test_parseConfiguration_operator_dottedIdentifier() {
- // TODO(brianwilkerson) Missing right parenthesis.
- super.test_parseConfiguration_operator_dottedIdentifier();
- }
-
- @override
- @failingTest
- void test_parseConfiguration_operator_simpleIdentifier() {
- // TODO(brianwilkerson) Missing right parenthesis.
- super.test_parseConfiguration_operator_simpleIdentifier();
- }
-
- @override
- @failingTest
void test_parseConstructorName_named_noPrefix() {
// TODO(brianwilkerson) exception:
// NoSuchMethodError: Class 'ParserProxy' has no instance method 'parseConstructorName'.
@@ -4397,55 +4339,6 @@ class SimpleParserTest_Fasta extends FastaParserTestCase
@override
@failingTest
- void test_parseTypeAnnotation_function_noReturnType_noParameters() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_noReturnType_noParameters();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_function_noReturnType_parameters() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_noReturnType_parameters();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_function_returnType_classFunction() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_returnType_classFunction();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_function_returnType_function() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_returnType_function();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_function_returnType_simple() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_returnType_simple();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_function_returnType_withArguments() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_function_returnType_withArguments();
- }
-
- @override
- @failingTest
- void test_parseTypeAnnotation_named() {
- // TODO(brianwilkerson) Failed to use all tokens.
- super.test_parseTypeAnnotation_named();
- }
-
- @override
- @failingTest
void test_parseTypeArgumentList_empty() {
// TODO(brianwilkerson) reportUnrecoverableErrorWithToken
super.test_parseTypeArgumentList_empty();
« no previous file with comments | « pkg/analyzer/lib/src/fasta/ast_builder.dart ('k') | pkg/analyzer/test/generated/parser_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698