1
// Removing many Map entries does not cause a live iterator to skip any of the
2
// entries that were not removed. (Compacting a Map must not be observable to
5
load(libdir + "asserts.js");
8
for (var i = 0; i < 32; i++)
10
var iter = map.iterator();
11
assertEq(iter.next()[0], 0);
12
for (var i = 0; i < 30; i++)
14
assertEq(map.size(), 2);
15
for (var i = 32; i < 100; i++)
16
map.set(i, i); // eventually triggers compaction
18
for (var i = 30; i < 100; i++)
19
assertEq(iter.next()[0], i);
20
assertThrowsValue(function () { iter.next(); }, StopIteration);