21 lines
466 B
JavaScript
21 lines
466 B
JavaScript
function shouldBe(actual, expected)
|
|
{
|
|
if (actual !== expected)
|
|
throw new Error('bad value: ' + actual);
|
|
}
|
|
|
|
let map = new Map();
|
|
for (let i = 0; i < 5; ++i)
|
|
map.set(i, i);
|
|
|
|
for (let i = 0; i < 1e2; ++i) {
|
|
let cloned = new Map(map);
|
|
shouldBe(cloned.size, map.size);
|
|
}
|
|
|
|
Map.prototype[Symbol.iterator] = function () { return [][Symbol.iterator](); };
|
|
for (let i = 0; i < 1e2; ++i) {
|
|
let cloned = new Map(map);
|
|
shouldBe(cloned.size, 0);
|
|
}
|