UNPKG

@qualifyze/airtable-formulator

Version:
119 lines 3.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const globals_1 = require("@jest/globals"); const enclosed_expression_1 = require("../enclosed-expression"); (0, globals_1.describe)("EnclosedExpression", () => { (0, globals_1.describe)("isEnclosedExpressionNode()", () => { (0, globals_1.it)("should return true for a valid EnclosedExpressionNode", () => { const node = { type: "enclosedExpression", value: "(1)", start: 1, end: 2, members: [ { type: "number", value: "1", start: 1, end: 2, }, ], opener: { type: "openParenthesis", value: "(", start: 0, end: 1, }, closer: { type: "closeParenthesis", value: ")", start: 2, end: 3, }, expression: { type: "number", value: "1", start: 1, end: 2, }, }; (0, globals_1.expect)((0, enclosed_expression_1.isEnclosedExpressionNode)(node)).toBe(true); }); }); (0, globals_1.describe)("replaceEnclosedExpressions()", () => { (0, globals_1.it)("should replace enclosed expression groups with enclosedExpression nodes", () => { const nodes = [ { type: "group", opener: { type: "openParenthesis", start: 1, end: 2, value: "(", }, closer: { type: "closeParenthesis", start: 3, end: 4, value: ")", }, value: "0", start: 2, end: 3, members: [ { type: "number", start: 2, end: 3, value: "0", }, ], }, { type: "operator", start: 5, end: 6, value: "*", }, { type: "group", opener: { type: "openParenthesis", start: 7, end: 8, value: "(", }, closer: { type: "closeParenthesis", start: 9, end: 10, value: ")", }, value: "0", start: 8, end: 9, members: [ { type: "number", start: 8, end: 9, value: "0", }, ], }, ]; (0, globals_1.expect)((0, enclosed_expression_1.reduceEnclosedExpressions)(nodes)).toMatchObject([ { type: "enclosedExpression", }, { type: "operator", }, { type: "enclosedExpression", }, ]); }); }); }); //# sourceMappingURL=enclosed-expression.test.js.map