You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
793 B
35 lines
793 B
var falafel = require('../'); |
|
var test = require('tape'); |
|
|
|
test('array', function (t) { |
|
t.plan(5); |
|
|
|
var src = '(' + function () { |
|
var xs = [ 1, 2, [ 3, 4 ] ]; |
|
var ys = [ 5, 6 ]; |
|
g([ xs, ys ]); |
|
} + ')()'; |
|
|
|
var output = falafel(src, function (node) { |
|
if (node.type === 'ArrayExpression') { |
|
node.update('fn(' + node.source() + ')'); |
|
} |
|
}); |
|
|
|
var arrays = [ |
|
[ 3, 4 ], |
|
[ 1, 2, [ 3, 4 ] ], |
|
[ 5, 6 ], |
|
[ [ 1, 2, [ 3, 4 ] ], [ 5, 6 ] ], |
|
]; |
|
|
|
Function(['fn','g'], output)( |
|
function (xs) { |
|
t.same(arrays.shift(), xs); |
|
return xs; |
|
}, |
|
function (xs) { |
|
t.same(xs, [ [ 1, 2, [ 3, 4 ] ], [ 5, 6 ] ]); |
|
} |
|
); |
|
});
|
|
|