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

Unified Diff: pkg/analyzer/test/src/summary/summary_common.dart

Issue 1952663006: Support for NamedExpression(s) as constructor initializer arguments. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 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/analyzer/test/src/summary/summary_common.dart
diff --git a/pkg/analyzer/test/src/summary/summary_common.dart b/pkg/analyzer/test/src/summary/summary_common.dart
index d4f814c0be970d464eab61b9291ff3c705e7c37c..586cbfb08de5dd2dd7695a44bdfccb1636f9944f 100644
--- a/pkg/analyzer/test/src/summary/summary_common.dart
+++ b/pkg/analyzer/test/src/summary/summary_common.dart
@@ -3434,6 +3434,27 @@ class C {
operators: [UnlinkedConstOperation.pushString], strings: ['bbb']);
}
+ test_constructor_initializers_thisInvocation_nameExpression() {
+ UnlinkedExecutable executable =
+ findExecutable('', executables: serializeClassText(r'''
+class C {
+ const C() : this.named(a: 1, b: 2);
+ const C.named({int a, int b});
+}
+''').executables);
+ expect(executable.constantInitializers, hasLength(1));
+ UnlinkedConstructorInitializer initializer =
+ executable.constantInitializers[0];
+ expect(initializer.kind, UnlinkedConstructorInitializerKind.thisInvocation);
+ expect(initializer.name, 'named');
+ expect(initializer.expression, isNull);
+ expect(initializer.arguments, hasLength(2));
+ _assertUnlinkedConst(initializer.arguments[0],
+ name: 'a', operators: [UnlinkedConstOperation.pushInt], ints: [1]);
+ _assertUnlinkedConst(initializer.arguments[1],
+ name: 'b', operators: [UnlinkedConstOperation.pushInt], ints: [2]);
+ }
+
test_constructor_initializers_thisInvocation_unnamed() {
UnlinkedExecutable executable =
findExecutable('named', executables: serializeClassText(r'''
@@ -9713,6 +9734,7 @@ final v = $expr;
*/
void _assertUnlinkedConst(UnlinkedConst constExpr,
{bool isValidConst: true,
+ String name: '',
List<UnlinkedConstOperation> operators: const <UnlinkedConstOperation>[],
List<UnlinkedExprAssignOperator> assignmentOperators:
const <UnlinkedExprAssignOperator>[],
@@ -9723,6 +9745,7 @@ final v = $expr;
const <_EntityRefValidator>[]}) {
expect(constExpr, isNotNull);
expect(constExpr.isValidConst, isValidConst);
+ expect(constExpr.name, name);
expect(constExpr.operations, operators);
expect(constExpr.ints, ints);
expect(constExpr.doubles, doubles);
« pkg/analyzer/lib/src/summary/idl.dart ('K') | « pkg/analyzer/test/src/summary/resynthesize_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698