blob: 587065672517742adbcbb16ecb8bf6b2cfb5daa6 [file] [log] [blame]
// Copyright (c) 2013, 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.
// @dart = 2.9
// Test the use of '__proto__' keys in maps.
library map_literal10_test;
import "package:expect/expect.dart";
void main() {
var m1 = const {"__proto__": 0, 1: 1};
Expect.isTrue(m1.containsKey("__proto__"));
Expect.equals(0, m1["__proto__"]);
Expect.isTrue(m1.containsKey(1));
Expect.equals(1, m1[1]);
Expect.listEquals(["__proto__", 1], m1.keys.toList());
var m2 = const {1: 0, "__proto__": 1};
Expect.isTrue(m2.containsKey(1));
Expect.equals(0, m2[1]);
Expect.isTrue(m2.containsKey("__proto__"));
Expect.equals(1, m2["__proto__"]);
Expect.listEquals([1, "__proto__"], m2.keys.toList());
var m3 = const {"1": 0, "__proto__": 1};
Expect.isTrue(m3.containsKey("1"));
Expect.equals(0, m3["1"]);
Expect.isTrue(m3.containsKey("__proto__"));
Expect.equals(1, m3["__proto__"]);
Expect.listEquals(["1", "__proto__"], m3.keys.toList());
var m4 = const {"__proto__": 1, "1": 2};
Expect.isTrue(m4.containsKey("1"));
Expect.equals(2, m4["1"]);
Expect.isTrue(m4.containsKey("__proto__"));
Expect.equals(1, m4["__proto__"]);
Expect.listEquals(["__proto__", "1"], m4.keys.toList());
}