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

Side by Side Diff: tests/corelib/map_values3_test.dart

Issue 59463004: Fix the generic type of Map.values for map literals. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Update status file. Created 7 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 import "package:expect/expect.dart"; 5 import "package:expect/expect.dart";
6 6
7 main() { 7 main() {
8 var map1 = <String, int>{ "foo": 42, "bar": 499 }; 8 var map1 = <int, String>{ 1: "42", 2: "499" };
9 var map2 = <String, int>{}; 9 var map2 = <int, String>{};
10 var map3 = const <String, int>{ "foo": 42, "bar": 499 }; 10 var map3 = const <int, String>{ 3: "42", 4: "499" };
11 var map4 = const <String, int>{}; 11 var map4 = const <int, String>{};
12 var map5 = new Map<String, int>(); 12 var map5 = new Map<int, String>();
13 map5["foo"] = 43; 13 map5[5] = "43";
14 map5["bar"] = 500; 14 map5[6] = "500";
15 var map6 = new Map<String, int>(); 15 var map6 = new Map<int, String>();
16 16
17 Expect.isTrue(map1.values is Iterable<int>); 17 Expect.isTrue(map1.values is Iterable<String>);
18 Expect.isFalse(map1.values is Iterable<bool>); 18 Expect.isFalse(map1.values is Iterable<bool>);
19 Expect.isFalse(map1.values is List); 19 Expect.isFalse(map1.values is List);
20 Expect.equals(2, map1.values.length); 20 Expect.equals(2, map1.values.length);
21 Expect.equals(42, map1.values.first); 21 Expect.equals("42", map1.values.first);
22 Expect.equals(499, map1.values.last); 22 Expect.equals("499", map1.values.last);
23 23
24 Expect.isTrue(map2.values is Iterable<int>); 24 Expect.isTrue(map2.values is Iterable<String>);
25 Expect.isFalse(map2.values is Iterable<bool>); 25 Expect.isFalse(map2.values is Iterable<bool>);
26 Expect.isFalse(map2.values is List); 26 Expect.isFalse(map2.values is List);
27 Expect.equals(0, map2.values.length); 27 Expect.equals(0, map2.values.length);
28 28
29 Expect.isTrue(map3.values is Iterable<int>); 29 Expect.isTrue(map3.values is Iterable<String>);
30 Expect.isFalse(map3.values is Iterable<bool>); 30 Expect.isFalse(map3.values is Iterable<bool>);
31 Expect.isFalse(map3.values is List); 31 Expect.isFalse(map3.values is List);
32 Expect.equals(2, map3.values.length); 32 Expect.equals(2, map3.values.length);
33 Expect.equals(42, map3.values.first); 33 Expect.equals("42", map3.values.first);
34 Expect.equals(499, map3.values.last); 34 Expect.equals("499", map3.values.last);
35 35
36 Expect.isTrue(map4.values is Iterable<int>); 36 Expect.isTrue(map4.values is Iterable<String>);
37 Expect.isFalse(map4.values is Iterable<bool>); 37 Expect.isFalse(map4.values is Iterable<bool>);
38 Expect.isFalse(map4.values is List); 38 Expect.isFalse(map4.values is List);
39 Expect.equals(0, map4.values.length); 39 Expect.equals(0, map4.values.length);
40 40
41 Expect.isTrue(map5.values is Iterable<int>); 41 Expect.isTrue(map5.values is Iterable<String>);
42 Expect.isFalse(map5.values is Iterable<bool>); 42 Expect.isFalse(map5.values is Iterable<bool>);
43 Expect.isFalse(map5.values is List); 43 Expect.isFalse(map5.values is List);
44 Expect.equals(2, map5.values.length); 44 Expect.equals(2, map5.values.length);
45 // new Map gives a LinkedHashMap, so we know the order. 45 // new Map gives a LinkedHashMap, so we know the order.
46 Expect.isTrue(map5.values.first == 43); 46 Expect.isTrue(map5.values.first == "43");
47 Expect.isTrue(map5.values.last == 500); 47 Expect.isTrue(map5.values.last == "500");
48 48
49 Expect.isTrue(map6.values is Iterable<int>); 49 Expect.isTrue(map6.values is Iterable<String>);
50 Expect.isFalse(map6.values is Iterable<bool>); 50 Expect.isFalse(map6.values is Iterable<bool>);
51 Expect.isFalse(map6.values is List); 51 Expect.isFalse(map6.values is List);
52 Expect.equals(0, map6.values.length); 52 Expect.equals(0, map6.values.length);
53 } 53 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698