Skip to content

Commit 577fc04

Browse files
Dan Rubelcommit-bot@chromium.org
Dan Rubel
authored andcommitted
Update fasta parser recovery tests
Change-Id: Ie2116e9c99c615238199542a147c7240f31fb659 Reviewed-on: https://dart-review.googlesource.com/41101 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Dan Rubel <[email protected]>
1 parent dd0a08a commit 577fc04

File tree

3 files changed

+83
-42
lines changed

3 files changed

+83
-42
lines changed

pkg/analyzer/test/src/fasta/recovery/missing_code_test.dart

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -526,57 +526,51 @@ class C {
526526
''');
527527
}
528528

529-
@failingTest
530529
void test_incorrectlyTerminatedGroup_named_none() {
531530
testRecovery('''
532531
f({a: 0) {}
533-
''', [ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP], '''
532+
''', [ScannerErrorCode.EXPECTED_TOKEN], '''
534533
f({a: 0}) {}
535534
''');
536535
}
537536

538-
@failingTest
539537
void test_incorrectlyTerminatedGroup_named_positional() {
540538
testRecovery('''
541539
f({a: 0]) {}
542-
''', [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP], '''
540+
''', [ScannerErrorCode.EXPECTED_TOKEN, ParserErrorCode.EXPECTED_TOKEN], '''
543541
f({a: 0}) {}
544542
''');
545543
}
546544

547-
@failingTest
548545
void test_incorrectlyTerminatedGroup_none_named() {
549546
testRecovery('''
550547
f(a}) {}
551-
''', [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP], '''
548+
''', [ParserErrorCode.EXPECTED_TOKEN], '''
552549
f(a) {}
553550
''');
554551
}
555552

556-
@failingTest
557553
void test_incorrectlyTerminatedGroup_none_positional() {
558554
testRecovery('''
559555
f(a]) {}
560-
''', [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP], '''
556+
''', [ParserErrorCode.EXPECTED_TOKEN], '''
561557
f(a) {}
562558
''');
563559
}
564560

565-
@failingTest
566561
void test_incorrectlyTerminatedGroup_positional_named() {
567562
testRecovery('''
568563
f([a = 0}) {}
569-
''', [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP], '''
564+
''', [ScannerErrorCode.EXPECTED_TOKEN, ParserErrorCode.EXPECTED_TOKEN], '''
570565
f([a = 0]) {}
571566
''');
572567
}
573568

574-
@failingTest
575569
void test_incorrectlyTerminatedGroup_positional_none() {
576570
// Maybe put in paired_tokens_test.dart.
577571
testRecovery('''
578572
f([a = 0) {}
579-
''', [ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP], '''
573+
''', [ScannerErrorCode.EXPECTED_TOKEN], '''
580574
f([a = 0]) {}
581575
''');
582576
}
@@ -628,12 +622,11 @@ f([a = _s_, b]) {}
628622
''');
629623
}
630624

631-
@failingTest
632625
void test_multipleGroups_mixed() {
633626
// TODO(brianwilkerson) Figure out the best way to recover from this.
634627
testRecovery('''
635628
f([a = 0], {b: 1}) {}
636-
''', [ParserErrorCode.MIXED_PARAMETER_GROUPS], '''
629+
''', [ParserErrorCode.EXPECTED_TOKEN], '''
637630
f([a = 0]) {}
638631
''');
639632
}

pkg/analyzer/test/src/fasta/recovery/partial_code/field_declaration_test.dart

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,19 +31,26 @@ class MethodTest extends PartialCodeTest {
3131
new TestDescriptor(
3232
'const_noName',
3333
'const',
34-
[ParserErrorCode.MISSING_IDENTIFIER, ParserErrorCode.EXPECTED_TOKEN],
34+
[
35+
ParserErrorCode.MISSING_IDENTIFIER,
36+
ParserErrorCode.EXPECTED_TOKEN,
37+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
38+
],
3539
'const _s_;',
36-
allFailing: true,
40+
failing: allExceptEof,
3741
expectedErrorsInValidCode: [
3842
CompileTimeErrorCode.CONST_NOT_INITIALIZED
3943
],
4044
),
4145
new TestDescriptor(
4246
'const_name',
4347
'const f',
44-
[ParserErrorCode.EXPECTED_TOKEN],
48+
[
49+
ParserErrorCode.EXPECTED_TOKEN,
50+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
51+
],
4552
'const f;',
46-
allFailing: true,
53+
failing: ['methodNonVoid', 'getter', 'setter'],
4754
expectedErrorsInValidCode: [
4855
CompileTimeErrorCode.CONST_NOT_INITIALIZED
4956
],
@@ -159,19 +166,26 @@ class MethodTest extends PartialCodeTest {
159166
new TestDescriptor(
160167
'static_const_noName',
161168
'static const',
162-
[ParserErrorCode.MISSING_IDENTIFIER, ParserErrorCode.EXPECTED_TOKEN],
169+
[
170+
ParserErrorCode.MISSING_IDENTIFIER,
171+
ParserErrorCode.EXPECTED_TOKEN,
172+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
173+
],
163174
'static const _s_;',
164-
allFailing: true,
175+
failing: allExceptEof,
165176
expectedErrorsInValidCode: [
166177
CompileTimeErrorCode.CONST_NOT_INITIALIZED
167178
],
168179
),
169180
new TestDescriptor(
170181
'static_const_name',
171182
'static const f',
172-
[ParserErrorCode.EXPECTED_TOKEN],
183+
[
184+
ParserErrorCode.EXPECTED_TOKEN,
185+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
186+
],
173187
'static const f;',
174-
allFailing: true,
188+
failing: ['methodNonVoid', 'getter', 'setter'],
175189
expectedErrorsInValidCode: [
176190
CompileTimeErrorCode.CONST_NOT_INITIALIZED
177191
],

pkg/analyzer/test/src/fasta/recovery/partial_code/top_level_variable_test.dart

Lines changed: 54 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -32,30 +32,36 @@ class TopLevelVariableTest extends PartialCodeTest {
3232
'const',
3333
[
3434
ParserErrorCode.MISSING_IDENTIFIER,
35-
ParserErrorCode.EXPECTED_TOKEN
35+
ParserErrorCode.EXPECTED_TOKEN,
36+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
3637
],
3738
"const _s_;",
38-
allFailing: true,
39+
failing: allExceptEof,
3940
expectedErrorsInValidCode: [
4041
CompileTimeErrorCode.CONST_NOT_INITIALIZED
4142
],
4243
),
4344
new TestDescriptor(
4445
'constName',
4546
'const a',
46-
[ParserErrorCode.EXPECTED_TOKEN],
47+
[
48+
ParserErrorCode.EXPECTED_TOKEN,
49+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
50+
],
4751
"const a;",
48-
allFailing: true,
52+
failing: ['typedef', 'functionNonVoid', 'getter', 'setter'],
4953
expectedErrorsInValidCode: [
5054
CompileTimeErrorCode.CONST_NOT_INITIALIZED
5155
],
5256
),
5357
new TestDescriptor(
5458
'constTypeName',
5559
'const int a',
56-
[ParserErrorCode.EXPECTED_TOKEN],
60+
[
61+
ParserErrorCode.EXPECTED_TOKEN,
62+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
63+
],
5764
"const int a;",
58-
allFailing: true,
5965
expectedErrorsInValidCode: [
6066
CompileTimeErrorCode.CONST_NOT_INITIALIZED
6167
],
@@ -65,10 +71,18 @@ class TopLevelVariableTest extends PartialCodeTest {
6571
'const a,',
6672
[
6773
ParserErrorCode.MISSING_IDENTIFIER,
68-
ParserErrorCode.EXPECTED_TOKEN
74+
ParserErrorCode.EXPECTED_TOKEN,
75+
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
76+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
6977
],
7078
"const a, _s_;",
71-
allFailing: true,
79+
failing: [
80+
'typedef',
81+
'functionVoid',
82+
'functionNonVoid',
83+
'getter',
84+
'setter'
85+
],
7286
expectedErrorsInValidCode: [
7387
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
7488
CompileTimeErrorCode.CONST_NOT_INITIALIZED
@@ -79,10 +93,18 @@ class TopLevelVariableTest extends PartialCodeTest {
7993
'const int a,',
8094
[
8195
ParserErrorCode.MISSING_IDENTIFIER,
82-
ParserErrorCode.EXPECTED_TOKEN
96+
ParserErrorCode.EXPECTED_TOKEN,
97+
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
98+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
8399
],
84100
"const int a, _s_;",
85-
allFailing: true,
101+
failing: [
102+
'typedef',
103+
'functionVoid',
104+
'functionNonVoid',
105+
'getter',
106+
'setter'
107+
],
86108
expectedErrorsInValidCode: [
87109
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
88110
CompileTimeErrorCode.CONST_NOT_INITIALIZED
@@ -91,9 +113,12 @@ class TopLevelVariableTest extends PartialCodeTest {
91113
new TestDescriptor(
92114
'constNameCommaName',
93115
'const a, b',
94-
[ParserErrorCode.EXPECTED_TOKEN],
116+
[
117+
ParserErrorCode.EXPECTED_TOKEN,
118+
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
119+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
120+
],
95121
"const a, b;",
96-
allFailing: true,
97122
expectedErrorsInValidCode: [
98123
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
99124
CompileTimeErrorCode.CONST_NOT_INITIALIZED
@@ -102,9 +127,12 @@ class TopLevelVariableTest extends PartialCodeTest {
102127
new TestDescriptor(
103128
'constTypeNameCommaName',
104129
'const int a, b',
105-
[ParserErrorCode.EXPECTED_TOKEN],
130+
[
131+
ParserErrorCode.EXPECTED_TOKEN,
132+
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
133+
CompileTimeErrorCode.CONST_NOT_INITIALIZED
134+
],
106135
"const int a, b;",
107-
allFailing: true,
108136
expectedErrorsInValidCode: [
109137
CompileTimeErrorCode.CONST_NOT_INITIALIZED,
110138
CompileTimeErrorCode.CONST_NOT_INITIALIZED
@@ -115,30 +143,36 @@ class TopLevelVariableTest extends PartialCodeTest {
115143
'final',
116144
[
117145
ParserErrorCode.MISSING_IDENTIFIER,
118-
ParserErrorCode.EXPECTED_TOKEN
146+
ParserErrorCode.EXPECTED_TOKEN,
147+
StaticWarningCode.FINAL_NOT_INITIALIZED
119148
],
120149
"final _s_;",
121-
allFailing: true,
150+
failing: allExceptEof,
122151
expectedErrorsInValidCode: [
123152
StaticWarningCode.FINAL_NOT_INITIALIZED
124153
],
125154
),
126155
new TestDescriptor(
127156
'finalName',
128157
'final a',
129-
[ParserErrorCode.EXPECTED_TOKEN],
158+
[
159+
ParserErrorCode.EXPECTED_TOKEN,
160+
StaticWarningCode.FINAL_NOT_INITIALIZED
161+
],
130162
"final a;",
131-
allFailing: true,
163+
failing: ['typedef', 'functionNonVoid', 'getter', 'setter'],
132164
expectedErrorsInValidCode: [
133165
StaticWarningCode.FINAL_NOT_INITIALIZED
134166
],
135167
),
136168
new TestDescriptor(
137169
'finalTypeName',
138170
'final int a',
139-
[ParserErrorCode.EXPECTED_TOKEN],
171+
[
172+
ParserErrorCode.EXPECTED_TOKEN,
173+
StaticWarningCode.FINAL_NOT_INITIALIZED
174+
],
140175
"final int a;",
141-
allFailing: true,
142176
expectedErrorsInValidCode: [
143177
StaticWarningCode.FINAL_NOT_INITIALIZED
144178
],

0 commit comments

Comments
 (0)