js/src/jit-test/tests/collections/Map-iterator-remove-3.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/jit-test/tests/collections/Map-iterator-remove-3.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,13 @@
     1.4 +// A map iterator can cope with removing the next entry, then the current entry.
     1.5 +
     1.6 +load(libdir + "asserts.js");
     1.7 +load(libdir + "iteration.js");
     1.8 +
     1.9 +var map = Map([['a', 0], ['b', 1], ['c', 2], ['d', 3]]);
    1.10 +var iter = map[std_iterator]();
    1.11 +assertIteratorNext(iter, ['a', 0]);
    1.12 +assertIteratorNext(iter, ['b', 1]);
    1.13 +map.delete('c');
    1.14 +map.delete('b');
    1.15 +assertIteratorNext(iter, ['d', 3]);
    1.16 +assertIteratorDone(iter, undefined);

mercurial