prop.js 455 B

12345678910111213141516
  1. var test = require('tape');
  2. var evaluate = require('../');
  3. var parse = require('esprima').parse;
  4. test('function property', function (t) {
  5. t.plan(1);
  6. var src = '[1,2,3+4*10+n,beep.boop(3+5),obj[""+"x"].y]';
  7. var ast = parse(src).body[0].expression;
  8. var res = evaluate(ast, {
  9. n: 6,
  10. beep: { boop: function (x) { return x * 100 } },
  11. obj: { x: { y: 555 } }
  12. });
  13. t.deepEqual(res, [ 1, 2, 49, 800, 555 ]);
  14. });