Skip to content

Commit 78dd98a

Browse files
chloestefantsovaCommit Bot
authored and
Commit Bot
committed
[cfe] Add tests for NORM on records
Part of #49749 Change-Id: I7a72eeb14000823067736c8c010a83481677d9b2 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/260521 Commit-Queue: Chloe Stefantsova <[email protected]> Reviewed-by: Johnni Winther <[email protected]>
1 parent 2c612c1 commit 78dd98a

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

pkg/kernel/test/norm_test.dart

+14
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,20 @@ void run() {
140140
check('FutureOr<FutureOr<int>?>', 'FutureOr<FutureOr<int>?>?');
141141
check('FutureOr<FutureOr<FutureOr<int>>?>',
142142
'FutureOr<FutureOr<FutureOr<int>>?>?');
143+
144+
check('(T, S & Never, {R foo})', '(Never, Never, {Never foo})',
145+
'T extends Never, S extends Object?, R extends T');
146+
check('(T, bool?, {FutureOr<Null> foo, FutureOr<dynamic> bar})',
147+
'(Never, bool?, {Future<Null>? foo, dynamic bar})', 'T extends Never');
148+
check('() -> List<({FutureOr<dynamic> foo})>', '() -> List<({dynamic foo})>');
149+
check('<T extends Never>((T, T)) -> void',
150+
'<T extends Never>((Never, Never)) -> void');
151+
152+
checkNormToSame('(int, {String? foo})');
153+
checkNormToSame('(int, String?, {List<int> foo, T bar})', 'T extends num');
154+
checkNormToSame('()');
155+
checkNormToSame('(int?)');
156+
checkNormToSame('List<(int, {String foo})>');
143157
}
144158

145159
void check(String input, String output, [String typeParameters = '']) {

0 commit comments

Comments
 (0)