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

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

Issue 2713553011: Split parser tests that exercise class members to their own class. (Closed)
Patch Set: Created 3 years, 10 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 | « no previous file | 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 f62baf874f312d5360cb796fe7dc91eca3d4c266..acedb13438fd5730321fd7d640c2bccd42de6487 100644
--- a/pkg/analyzer/test/generated/parser_fasta_test.dart
+++ b/pkg/analyzer/test/generated/parser_fasta_test.dart
@@ -13,6 +13,7 @@ import 'package:front_end/src/fasta/builder/scope.dart';
import 'package:front_end/src/fasta/kernel/kernel_builder.dart';
import 'package:front_end/src/fasta/kernel/kernel_library_builder.dart';
import 'package:front_end/src/fasta/parser/parser.dart' as fasta;
+import 'package:front_end/src/fasta/scanner/precedence.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:test/test.dart';
@@ -22,6 +23,7 @@ import 'parser_test.dart';
main() {
defineReflectiveSuite(() {
+ defineReflectiveTests(ClassMemberParserTest_Fasta);
defineReflectiveTests(ComplexParserTest_Fasta);
defineReflectiveTests(FormalParameterParserTest_Fasta);
defineReflectiveTests(TopLevelParserTest_Fasta);
@@ -43,6 +45,360 @@ class BuilderProxy implements Builder {
noSuchMethod(Invocation invocation) => super.noSuchMethod(invocation);
}
+@reflectiveTest
+class ClassMemberParserTest_Fasta extends FastaParserTestCase
+ with ClassMemberParserTestMixin {
+ @override
+ @failingTest
+ void test_constFactory() {
+ // TODO(paulberry): Unhandled event: ConstructorReference
+ super.test_constFactory();
+ }
+
+ @override
+ @failingTest
+ void test_parseAwaitExpression_asStatement_inAsync() {
+ // TODO(paulberry): Add support for async
+ super.test_parseAwaitExpression_asStatement_inAsync();
+ }
+
+ @override
+ @failingTest
+ void test_parseAwaitExpression_asStatement_inSync() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseAwaitExpression_asStatement_inSync();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_constructor_withInitializers() {
+ // TODO(paulberry): 'this' can't be used here.
+ super.test_parseClassMember_constructor_withInitializers();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_covariant() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_covariant();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_instance_prefixedType() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_instance_prefixedType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_namedGet() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_namedGet();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_namedOperator() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_namedOperator();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_namedOperator_withAssignment() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_namedOperator_withAssignment();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_namedSet() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_namedSet();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_field_static() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseClassMember_field_static();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_getter_functionType() {
+ // TODO(paulberry): InputError: ErrorKind.ExpectedFunctionBody {actual: get}
+ super.test_parseClassMember_getter_functionType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_getter_void() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_getter_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_external() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_external();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_external_withTypeAndArgs() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_external_withTypeAndArgs();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_comment_noReturnType() {
+ // TODO(paulberry): Fasta doesn't support generic comment syntax
+ super.test_parseClassMember_method_generic_comment_noReturnType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_comment_returnType() {
+ // TODO(paulberry): Fasta doesn't support generic comment syntax
+ super.test_parseClassMember_method_generic_comment_returnType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_comment_returnType_bound() {
+ // TODO(paulberry): Fasta doesn't support generic comment syntax
+ super.test_parseClassMember_method_generic_comment_returnType_bound();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_comment_void() {
+ // TODO(paulberry): Fasta doesn't support generic comment syntax
+ super.test_parseClassMember_method_generic_comment_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_noReturnType() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_generic_noReturnType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_returnType() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_generic_returnType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_generic_void() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_generic_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_get_noType() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_get_noType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_get_type() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_get_type();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_get_void() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_get_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_operator_noType() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_operator_noType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_operator_type() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_operator_type();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_operator_void() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_operator_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_returnType_functionType() {
+ // TODO(paulberry): InputError: ErrorKind.ExpectedFunctionBody {actual: m}
+ super.test_parseClassMember_method_returnType_functionType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_returnType_parameterized() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_returnType_parameterized();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_set_noType() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_set_noType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_set_type() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_set_type();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_set_void() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_set_void();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_method_trailing_commas() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseClassMember_method_trailing_commas();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_operator_functionType() {
+ // TODO(paulberry): InputError: ErrorKind.ExpectedFunctionBody {actual: operator}
+ super.test_parseClassMember_operator_functionType();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_operator_index() {
+ // TODO(paulberry): Unhandled event: OperatorName
+ super.test_parseClassMember_operator_index();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_operator_indexAssign() {
+ // TODO(paulberry): Unhandled event: OperatorName
+ super.test_parseClassMember_operator_indexAssign();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_redirectingFactory_const() {
+ // TODO(paulberry): Unhandled event: ConstructorReference
+ super.test_parseClassMember_redirectingFactory_const();
+ }
+
+ @override
+ @failingTest
+ void test_parseClassMember_redirectingFactory_nonConst() {
+ // TODO(paulberry): Unhandled event: ConstructorReference
+ super.test_parseClassMember_redirectingFactory_nonConst();
+ }
+
+ @override
+ @failingTest
+ void test_parseConstructor_assert() {
+ // TODO(paulberry): Fasta doesn't support asserts in initializers
+ super.test_parseConstructor_assert();
+ }
+
+ @override
+ @failingTest
+ void test_parseConstructor_with_pseudo_function_literal() {
+ // TODO(paulberry): Expected: an object with length of <1>
+ super.test_parseConstructor_with_pseudo_function_literal();
+ }
+
+ @override
+ @failingTest
+ void test_parseConstructorFieldInitializer_qualified() {
+ // TODO(paulberry): Unhandled event: ThisExpression
+ super.test_parseConstructorFieldInitializer_qualified();
+ }
+
+ @override
+ @failingTest
+ void test_parseConstructorFieldInitializer_unqualified() {
+ // TODO(paulberry): Expected: an object with length of <1>
+ super.test_parseConstructorFieldInitializer_unqualified();
+ }
+
+ @override
+ @failingTest
+ void test_parseGetter_nonStatic() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseGetter_nonStatic();
+ }
+
+ @override
+ @failingTest
+ void test_parseGetter_static() {
+ // TODO(paulberry): Invalid modifier (static). Report an error.
+ super.test_parseGetter_static();
+ }
+
+ @override
+ @failingTest
+ void test_parseInitializedIdentifierList_type() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseInitializedIdentifierList_type();
+ }
+
+ @override
+ @failingTest
+ void test_parseInitializedIdentifierList_var() {
+ // TODO(paulberry): Unhandled event: Fields
+ super.test_parseInitializedIdentifierList_var();
+ }
+
+ @override
+ @failingTest
+ void test_parseOperator() {
+ // TODO(paulberry): Unhandled event: OperatorName
+ super.test_parseOperator();
+ }
+
+ @override
+ @failingTest
+ void test_parseSetter_nonStatic() {
+ // TODO(paulberry): Add support for method declarations
+ super.test_parseSetter_nonStatic();
+ }
+
+ @override
+ @failingTest
+ void test_parseSetter_static() {
+ // TODO(paulberry): Invalid modifier (static). Report an error.
+ super.test_parseSetter_static();
+ }
+}
+
/**
* Tests of the fasta parser based on [ComplexParserTestMixin].
*/
@@ -257,6 +613,15 @@ class FastaParserTestCase extends Object
ParserProxy _parserProxy;
@override
+ set enableAssertInitializer(bool value) {
+ if (value == true) {
+ // TODO(paulberry,ahe): it looks like asserts in initializer lists are not
+ // supported by Fasta.
+ throw new UnimplementedError();
+ }
+ }
+
+ @override
set enableGenericMethodComments(bool value) {
if (value == true) {
// TODO(paulberry,ahe): generic method comment syntax is not supported by
@@ -778,10 +1143,28 @@ class ParserProxy implements analyzer.Parser {
noSuchMethod(Invocation invocation) => super.noSuchMethod(invocation);
@override
+ ClassMember parseClassMember(String className) {
+ _astBuilder.className = className;
+ var result = _run((parser) => parser.parseMember) as ClassMember;
+ _astBuilder.className = null;
+ return result;
+ }
+
+ @override
CompilationUnit parseCompilationUnit2() {
return _run((parser) => parser.parseUnit) as CompilationUnit;
}
+ @override
+ ConstructorFieldInitializer parseConstructorFieldInitializer(bool hasThis) {
+ // Fasta's parser doesn't need the [hasThis] hint, so we ignore it.
+ var colon = new fasta.SymbolToken(fasta.COLON_INFO, 0);
+ colon.next = _currentFastaToken;
+ _currentFastaToken = colon;
+ var initializers = _run((parser) => parser.parseInitializers) as List;
+ return initializers[0] as ConstructorFieldInitializer;
+ }
+
/**
* Runs a single parser function, and returns the result as an analyzer AST.
*/
« no previous file with comments | « no previous file | pkg/analyzer/test/generated/parser_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698