~ubuntu-branches/ubuntu/saucy/mozjs17/saucy

« back to all changes in this revision

Viewing changes to js/src/jit-test/tests/collections/Map-iterator-remove-6.js

  • Committer: Package Import Robot
  • Author(s): Rico Tzschichholz
  • Date: 2013-05-25 12:24:23 UTC
  • Revision ID: package-import@ubuntu.com-20130525122423-zmxucrhtensw90xy
Tags: upstream-17.0.0
ImportĀ upstreamĀ versionĀ 17.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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
 
3
// script.)
 
4
 
 
5
load(libdir + "asserts.js");
 
6
 
 
7
var map = Map();
 
8
for (var i = 0; i < 32; i++)
 
9
    map.set(i, i);
 
10
var iter = map.iterator();
 
11
assertEq(iter.next()[0], 0);
 
12
for (var i = 0; i < 30; i++)
 
13
    map.delete(i);
 
14
assertEq(map.size(), 2);
 
15
for (var i = 32; i < 100; i++)
 
16
    map.set(i, i);  // eventually triggers compaction
 
17
 
 
18
for (var i = 30; i < 100; i++)
 
19
    assertEq(iter.next()[0], i);
 
20
assertThrowsValue(function () { iter.next(); }, StopIteration);