Chromium Code Reviews| Index: tests/language/const_map_test.dart |
| diff --git a/tests/language/const_map_test.dart b/tests/language/const_map_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..d07a679c2c2a22ce2147e7122511ee0e5e9f10eb |
| --- /dev/null |
| +++ b/tests/language/const_map_test.dart |
| @@ -0,0 +1,23 @@ |
| +// Copyright (c) 2014, 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"; |
| + |
| +class A{} |
| +class B{} |
| + |
| +confuse(x) { |
| + if (new DateTime.now() == 42) return confuse(const { B: 42 }); |
|
Lasse Reichstein Nielsen
2014/02/27 08:15:34
Type objects do implement operator==, so this shou
|
| + return x; |
| +} |
| + |
| +main() { |
| + // Make sure that we can find types again in const maps. |
| + var m = confuse(const { A: 499 }); |
| + Expect.equals(499, m[A]); |
| + // Make sure that const maps use the == operator and not identical. |
| + // Dart2js already implicitly tests this property with the type-test above. |
| + m = const { 1: 42 }; |
| + Expect.equals(42, m[1.0]); |
| +} |