Fix spread disambiguation test.
Using runtime objects of the right type so that the spread doesn't
throw at runtime before we can check its type.
Change-Id: I6838079ff7f0f0267796058eee4c077c993484d9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/97002
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
diff --git a/tests/language_2/spread_collections/map_set_ambiguity_test.dart b/tests/language_2/spread_collections/map_set_ambiguity_test.dart
index 48ce5a7..5bd5a4d 100644
--- a/tests/language_2/spread_collections/map_set_ambiguity_test.dart
+++ b/tests/language_2/spread_collections/map_set_ambiguity_test.dart
@@ -19,7 +19,8 @@
void testBottomUpInference() {
Map<int, int> map = {};
Set<int> set = Set();
- dynamic dyn = map;
+ dynamic dynMap = map;
+ dynamic dynSet = set;
Iterable<int> iterable = [];
CustomSet customSet = CustomSet();
CustomMap customMap = CustomMap();
@@ -35,21 +36,21 @@
Expect.type<Map<int, int>>({...map, ...map});
// Expect.type<...>({...map, ...set});
- Expect.type<Map<dynamic, dynamic>>({...map, ...dyn});
+ Expect.type<Map<dynamic, dynamic>>({...map, ...dynMap});
// Expect.type<...>({...map, ...iterable});
// Expect.type<...>({...map, ...customSet});
Expect.type<Map<int, int>>({...map, ...customMap});
Expect.type<Set<int>>({...set, ...set});
- Expect.type<Set<dynamic>>({...set, ...dyn});
+ Expect.type<Set<dynamic>>({...set, ...dynSet});
Expect.type<Set<int>>({...set, ...iterable});
Expect.type<Set<int>>({...set, ...customSet});
// Expect.type<...>({...set, ...customMap});
// Expect.type<...>({...dyn, ...dyn});
- Expect.type<Set<dynamic>>({...dyn, ...iterable});
- Expect.type<Set<dynamic>>({...dyn, ...customSet});
- Expect.type<Map<dynamic, dynamic>>({...dyn, ...customMap});
+ Expect.type<Set<dynamic>>({...dynSet, ...iterable});
+ Expect.type<Set<dynamic>>({...dynSet, ...customSet});
+ Expect.type<Map<dynamic, dynamic>>({...dynMap, ...customMap});
Expect.type<Set<int>>({...iterable, ...iterable});
Expect.type<Set<int>>({...iterable, ...customSet});