UNPKG

expression-language

Version:

Javascript implementation of symfony/expression-language

36 lines (35 loc) 1.33 kB
"use strict"; var _NullCoalescedNameNode = _interopRequireDefault(require("../NullCoalescedNameNode")); var _Compiler = _interopRequireDefault(require("../../Compiler")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function getEvaluateData() { return [[null, new _NullCoalescedNameNode.default('foo'), {}]]; } function getCompileData() { return [['foo ?? null', new _NullCoalescedNameNode.default('foo')]]; } function getDumpData() { return [['foo ?? null', new _NullCoalescedNameNode.default('foo')]]; } test('evaluate NullCoalescedNameNode', () => { for (let evaluateParams of getEvaluateData()) { let evaluated = evaluateParams[1].evaluate({}, evaluateParams[2]); if (evaluateParams[0] !== null && typeof evaluateParams[0] === "object") { expect(evaluated).toMatchObject(evaluateParams[0]); } else { expect(evaluated).toBe(evaluateParams[0]); } } }); test('compile NullCoalescedNameNode', () => { for (let compileParams of getCompileData()) { let compiler = new _Compiler.default({}); compileParams[1].compile(compiler); expect(compiler.getSource()).toBe(compileParams[0]); } }); test('dump NullCoalescedNameNode', () => { for (let dumpParams of getDumpData()) { expect(dumpParams[1].dump()).toBe(dumpParams[0]); } });