OLD | NEW |
| (Empty) |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 import "package:expect/expect.dart"; | |
6 import 'dart:collection'; | |
7 | |
8 main() { | |
9 positiveTest(); | |
10 emptyMapTest(); | |
11 fewerKeysIterableTest(); | |
12 fewerValuesIterableTest(); | |
13 equalElementsTest(); | |
14 genericTypeTest(); | |
15 } | |
16 | |
17 void positiveTest() { | |
18 var map = new LinkedHashMap.fromIterables([1, 2, 3], ["one", "two", "three"]); | |
19 Expect.isTrue(map is Map); | |
20 Expect.isTrue(map is LinkedHashMap); | |
21 | |
22 Expect.equals(3, map.length); | |
23 Expect.equals(3, map.keys.length); | |
24 Expect.equals(3, map.values.length); | |
25 | |
26 Expect.equals("one", map[1]); | |
27 Expect.equals("two", map[2]); | |
28 Expect.equals("three", map[3]); | |
29 } | |
30 | |
31 void emptyMapTest() { | |
32 var map = new LinkedHashMap.fromIterables([], []); | |
33 Expect.isTrue(map is Map); | |
34 Expect.isTrue(map is LinkedHashMap); | |
35 | |
36 Expect.equals(0, map.length); | |
37 Expect.equals(0, map.keys.length); | |
38 Expect.equals(0, map.values.length); | |
39 } | |
40 | |
41 void fewerValuesIterableTest() { | |
42 Expect.throws(() => new LinkedHashMap.fromIterables([1, 2], [0])); | |
43 } | |
44 | |
45 void fewerKeysIterableTest() { | |
46 Expect.throws(() => new LinkedHashMap.fromIterables([1], [0, 2])); | |
47 } | |
48 | |
49 void equalElementsTest() { | |
50 var map = new LinkedHashMap.fromIterables([1, 2, 2], ["one", "two", "three"]); | |
51 Expect.isTrue(map is Map); | |
52 Expect.isTrue(map is LinkedHashMap); | |
53 | |
54 Expect.equals(2, map.length); | |
55 Expect.equals(2, map.keys.length); | |
56 Expect.equals(2, map.values.length); | |
57 | |
58 Expect.equals("one", map[1]); | |
59 Expect.equals("three", map[2]); | |
60 } | |
61 | |
62 void genericTypeTest() { | |
63 var map = new LinkedHashMap<int, String>.fromIterables( | |
64 [1, 2, 3], ["one", "two", "three"]); | |
65 Expect.isTrue(map is Map<int, String>); | |
66 Expect.isTrue(map is LinkedHashMap<int, String>); | |
67 | |
68 // Make sure it is not just LinkedHashMap<dynamic, dynamic>. | |
69 Expect.isFalse(map is LinkedHashMap<String, dynamic>); | |
70 Expect.isFalse(map is LinkedHashMap<dynamic, int>); | |
71 | |
72 Expect.equals(3, map.length); | |
73 Expect.equals(3, map.keys.length); | |
74 Expect.equals(3, map.values.length); | |
75 | |
76 Expect.equals("one", map[1]); | |
77 Expect.equals("two", map[2]); | |
78 Expect.equals("three", map[3]); | |
79 } | |
OLD | NEW |