add traceur test suite
This commit is contained in:
32
test/fixtures/traceur/ArrayComprehension/Simple.js
vendored
Normal file
32
test/fixtures/traceur/ArrayComprehension/Simple.js
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
// Options: --array-comprehension
|
||||
|
||||
function* range() {
|
||||
for (var i = 0; i < 5; i++) {
|
||||
yield i;
|
||||
}
|
||||
}
|
||||
|
||||
var array = [for (x of [0, 1, 2, 3]) x];
|
||||
assertArrayEquals([0, 1, 2, 3], array);
|
||||
|
||||
var array2 = [for (x of [0, 1, 2]) for (y of [0, 1, 2]) x + '' + y];
|
||||
assertArrayEquals(['00', '01', '02', '10', '11', '12', '20', '21', '22'],
|
||||
array2);
|
||||
|
||||
var array3 = [
|
||||
for (x of [0, 1, 2, 3, 4])
|
||||
for (y of range())
|
||||
if (x === y)
|
||||
x + '' + y];
|
||||
assertArrayEquals(['00', '11', '22', '33', '44'], array3);
|
||||
|
||||
// Ensure this works as expression statement
|
||||
[for (testVar of []) testVar];
|
||||
|
||||
var array4 = [
|
||||
for (x of range())
|
||||
if (x % 2 === 0)
|
||||
for (y of range())
|
||||
if (y % 2 === 1)
|
||||
x + '' + y];
|
||||
assertArrayEquals(['01', '03', '21', '23', '41', '43'], array4);
|
||||
Reference in New Issue
Block a user