| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| import "package:expect/expect.dart"; |
| |
| main() { |
| var map1 = <String, int>{"foo": 42, "bar": 499}; |
| var map2 = <String, int>{}; |
| var map3 = const <String, int>{"foo": 42, "bar": 499}; |
| var map4 = const <String, int>{}; |
| var map5 = new Map<String, int>(); |
| map5["foo"] = 43; |
| map5["bar"] = 500; |
| var map6 = new Map<String, int>(); |
| |
| Expect.isTrue(map1.values is Iterable<int>); |
| Expect.isFalse(map1.values is Iterable<bool>); |
| Expect.isFalse(map1.values is List); |
| Expect.equals(2, map1.values.length); |
| Expect.equals(42, map1.values.first); |
| Expect.equals(499, map1.values.last); |
| |
| Expect.isTrue(map2.values is Iterable<int>); |
| Expect.isFalse(map2.values is Iterable<bool>); |
| Expect.isFalse(map2.values is List); |
| Expect.equals(0, map2.values.length); |
| |
| Expect.isTrue(map3.values is Iterable<int>); |
| Expect.isFalse(map3.values is Iterable<bool>); |
| Expect.isFalse(map3.values is List); |
| Expect.equals(2, map3.values.length); |
| Expect.equals(42, map3.values.first); |
| Expect.equals(499, map3.values.last); |
| |
| Expect.isTrue(map4.values is Iterable<int>); |
| Expect.isFalse(map4.values is Iterable<bool>); |
| Expect.isFalse(map4.values is List); |
| Expect.equals(0, map4.values.length); |
| |
| Expect.isTrue(map5.values is Iterable<int>); |
| Expect.isFalse(map5.values is Iterable<bool>); |
| Expect.isFalse(map5.values is List); |
| Expect.equals(2, map5.values.length); |
| // new Map gives a LinkedHashMap, so we know the order. |
| Expect.isTrue(map5.values.first == 43); |
| Expect.isTrue(map5.values.last == 500); |
| |
| Expect.isTrue(map6.values is Iterable<int>); |
| Expect.isFalse(map6.values is Iterable<bool>); |
| Expect.isFalse(map6.values is List); |
| Expect.equals(0, map6.values.length); |
| } |