diff options
Diffstat (limited to 'js/src/tests/test262/language/statements/for-of/nested.js')
-rw-r--r-- | js/src/tests/test262/language/statements/for-of/nested.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statements/for-of/nested.js b/js/src/tests/test262/language/statements/for-of/nested.js new file mode 100644 index 0000000000..54fefe3876 --- /dev/null +++ b/js/src/tests/test262/language/statements/for-of/nested.js @@ -0,0 +1,40 @@ +// Copyright (C) 2013 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +es6id: 13.6.4.13 +description: > + Nested statements should operate independently. +features: [generators] +---*/ + +function* values() { + yield 3; + yield 7; +} + +var outerIterable, expectedOuter, i, innerIterable, expectedInner, j; + +outerIterable = values(); +expectedOuter = 3; +i = 0; + +for (var x of outerIterable) { + assert.sameValue(x, expectedOuter); + expectedOuter = 7; + i++; + + innerIterable = values(); + expectedInner = 3; + j = 0; + for (var y of innerIterable) { + assert.sameValue(y, expectedInner); + expectedInner = 7; + j++; + } + + assert.sameValue(j, 2); +} + +assert.sameValue(i, 2); + +reportCompare(0, 0); |