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);