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]); |
+} |