Skip to content

Commit b12fa8c

Browse files
kallentuCommit Queue
authored andcommitted
[tests] Enum shorthands - Collection literal tests for constructors and static methods.
Tests for using static method and constructor shorthands in collection literals. Bug: #57038 Change-Id: I5151d53cc90966abb8d03dd453448987ccf8ce7a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/401981 Reviewed-by: Erik Ernst <[email protected]> Commit-Queue: Kallen Tu <[email protected]>
1 parent a286ce7 commit b12fa8c

File tree

2 files changed

+100
-0
lines changed

2 files changed

+100
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
2+
// for details. All rights reserved. Use of this source code is governed by a
3+
// BSD-style license that can be found in the LICENSE file.
4+
5+
// Context type is propagated down in collection literals.
6+
// Testing with constructor shorthands.
7+
8+
// SharedOptions=--enable-experiment=enum-shorthands
9+
10+
import '../enum_shorthand_helper.dart';
11+
12+
void main() {
13+
var ctorList = <ConstructorClass>[
14+
.new(1),
15+
.regular(1),
16+
.named(x: 1),
17+
.optional(1),
18+
];
19+
var ctorSet = <ConstructorClass>{
20+
.new(1),
21+
.regular(1),
22+
.named(x: 1),
23+
.optional(1),
24+
};
25+
var ctorMap = <ConstructorClass, ConstructorClass>{
26+
.new(1): .new(1),
27+
.regular(1): .regular(1),
28+
.named(x: 1): .named(x: 1),
29+
.optional(1): .optional(1),
30+
};
31+
var ctorMap2 = <ConstructorClass, (ConstructorClass, ConstructorClass)>{
32+
.new(1): (.new(1), .new(1)),
33+
.regular(1): (.regular(1), .regular(1)),
34+
.named(x: 1): (.named(x: 1), .named(x: 1)),
35+
.optional(1): (.optional(1), .optional(1)),
36+
};
37+
38+
var ctorExtList = <ConstructorExt>[
39+
.new(1),
40+
.regular(1),
41+
.named(x: 1),
42+
.optional(1),
43+
];
44+
var ctorExtSet = <ConstructorExt>{
45+
.new(1),
46+
.regular(1),
47+
.named(x: 1),
48+
.optional(1),
49+
};
50+
var ctorExtMap = <ConstructorExt, ConstructorExt>{
51+
.new(1): .new(1),
52+
.regular(1): .regular(1),
53+
.named(x: 1): .named(x: 1),
54+
.optional(1): .optional(1),
55+
};
56+
var ctorExtMap2 = <ConstructorExt, (ConstructorExt, ConstructorExt)>{
57+
.new(1): (.new(1), .new(1)),
58+
.regular(1): (.regular(1), .regular(1)),
59+
.named(x: 1): (.named(x: 1), .named(x: 1)),
60+
.optional(1): (.optional(1), .optional(1)),
61+
};
62+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
2+
// for details. All rights reserved. Use of this source code is governed by a
3+
// BSD-style license that can be found in the LICENSE file.
4+
5+
// Context type is propagated down in collection literals.
6+
// Testing with static method shorthands.
7+
8+
// SharedOptions=--enable-experiment=enum-shorthands
9+
10+
import '../enum_shorthand_helper.dart';
11+
12+
void main() {
13+
var memberList = <StaticMember>[.member(), .memberType<String, int>('s'), .member()];
14+
var memberSet = <StaticMember>{.member(), .memberType<String, int>('s')};
15+
var memberMap = <StaticMember, StaticMember>{
16+
.member(): .memberType<String, int>('s'),
17+
.memberType<String, int>('s'): .memberType<String, int>('s'),
18+
};
19+
var memberMap2 = <StaticMember, (StaticMember, StaticMember)>{
20+
.member(): (.member(), .memberType<String, int>('s')),
21+
.memberType<String, int>('s'): (.memberType<String, int>('s'), .memberType<String, int>('s')),
22+
};
23+
24+
var memberExtList = <StaticMemberExt>[
25+
.member(),
26+
.memberType<String, int>('s'),
27+
.member(),
28+
];
29+
var memberExtSet = <StaticMemberExt>{.member(), .memberType<String, int>('s')};
30+
var memberExtMap = <StaticMemberExt, StaticMemberExt>{
31+
.member(): .memberType<String, int>('s'),
32+
.memberType<String, int>('s'): .memberType<String, int>('s'),
33+
};
34+
var memberExtMap2 = <StaticMemberExt, (StaticMemberExt, StaticMemberExt)>{
35+
.member(): (.member(), .memberType<String, int>('s')),
36+
.memberType<String, int>('s'): (.memberType<String, int>('s'), .memberType<String, int>('s')),
37+
};
38+
}

0 commit comments

Comments
 (0)