Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 // This was the actual bug
2 assertRaises(StopIteration, function() {
3 Iterator.prototype.next();
4 Iterator.prototype.next();
5 });
7 // The error should have triggered here, but was masked by a latent bug
8 assertRaises(StopIteration, function() {
9 Iterator.prototype.next();
10 });
12 // Found by fuzzing
13 assertRaises(StopIteration, function() {
14 (new Iterator({})).__proto__.next();
15 });
18 function assertRaises(exc, callback) {
19 var caught = false;
20 try {
21 callback();
22 } catch (e) {
23 assertEq(e instanceof StopIteration, true);
24 caught = true;
25 }
26 assertEq(caught, true);
27 }