blob: e17215a80a19b4021abc9b6179b8a0af15d18887 [file] [log] [blame]
description("Tests to make sure we correctly repack a Map with object keys");
var map = new Map();
function Obj(n) { this.n = n; }
map.set(new Obj(0), []);
map.set(new Obj(1), []);
map.set(new Obj(2), []);
map.set(new Obj(3), []);
map.set(new Obj(4), []);
map.set(new Obj(5), []);
map.set(new Obj(6), []);
map.set(new Obj(7), []);
var newObject1 = new Obj(8);
var newObject2 = new Obj(9);
map.set(newObject1, []);
map.set(newObject2, []);
map.delete(newObject1);
map.delete(newObject2);
map.set(newObject1, []);
map.set(newObject2, []);
map.delete(newObject1);
map.delete(newObject2);
map.set(newObject1, []);
shouldBeTrue("Array.isArray(map.get(newObject1))");
map.set(newObject2, []);
shouldBeTrue("Array.isArray(map.get(newObject1))"); // ensure pre-existing value is still good.