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

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

Issue 1839443002: Fix for labels and the 'inDeclarationContext' flag. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 9 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/generated/parser.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/test/generated/parser_test.dart
diff --git a/pkg/analyzer/test/generated/parser_test.dart b/pkg/analyzer/test/generated/parser_test.dart
index ea028578a4c1281ac1bf3a9668722c1a4c22e807..9fc01e2f679cacd8396356c1dcf7f1619c680482 100644
--- a/pkg/analyzer/test/generated/parser_test.dart
+++ b/pkg/analyzer/test/generated/parser_test.dart
@@ -9743,6 +9743,7 @@ void''');
void test_parseStatement_singleLabel() {
LabeledStatement statement = parse4("parseStatement", "l: return x;");
expect(statement.labels, hasLength(1));
+ expect(statement.labels[0].label.inDeclarationContext(), isTrue);
expect(statement.statement, isNotNull);
}
@@ -10013,7 +10014,32 @@ void''');
expect(statement.rightParenthesis, isNotNull);
expect(statement.leftBracket, isNotNull);
expect(statement.members, hasLength(1));
- expect(statement.members[0].labels, hasLength(3));
+ {
+ List<Label> labels = statement.members[0].labels;
+ expect(labels, hasLength(3));
+ expect(labels[0].label.inDeclarationContext(), isTrue);
+ expect(labels[1].label.inDeclarationContext(), isTrue);
+ expect(labels[2].label.inDeclarationContext(), isTrue);
+ }
+ expect(statement.rightBracket, isNotNull);
+ }
+
+ void test_parseSwitchStatement_labeledDefault() {
+ SwitchStatement statement =
+ parse4("parseSwitchStatement", "switch (a) {l1: l2: l3: default:}");
+ expect(statement.switchKeyword, isNotNull);
+ expect(statement.leftParenthesis, isNotNull);
+ expect(statement.expression, isNotNull);
+ expect(statement.rightParenthesis, isNotNull);
+ expect(statement.leftBracket, isNotNull);
+ expect(statement.members, hasLength(1));
+ {
+ List<Label> labels = statement.members[0].labels;
+ expect(labels, hasLength(3));
+ expect(labels[0].label.inDeclarationContext(), isTrue);
+ expect(labels[1].label.inDeclarationContext(), isTrue);
+ expect(labels[2].label.inDeclarationContext(), isTrue);
+ }
expect(statement.rightBracket, isNotNull);
}
« no previous file with comments | « pkg/analyzer/lib/src/generated/parser.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698