Update expressionParserUtil with comparison unit tests

This commit is contained in:
benceruleanlu
2025-04-30 16:45:53 -04:00
parent da6c62aa80
commit f8c556feb3

View File

@@ -83,7 +83,7 @@ describe('evaluateExpression()', () => {
c: true,
d: '',
num1: 1,
num0: 0
num2: 2
}
const getContextKey = (key: string) => context[key]
@@ -107,6 +107,13 @@ describe('evaluateExpression()', () => {
expect(evaluateExpression('!b', getContextKey)).toBe(true)
})
it('evaluates comparison operators correctly', () => {
expect(evaluateExpression('num1 < num2', getContextKey)).toBe(true)
expect(evaluateExpression('num3 > num2', getContextKey)).toBe(true)
expect(evaluateExpression('num1 <= num2', getContextKey)).toBe(true)
expect(evaluateExpression('num3 >= num2', getContextKey)).toBe(true)
})
it('respects operator precedence and parentheses', () => {
expect(evaluateExpression('a || b && c', getContextKey)).toBe(true)
expect(evaluateExpression('(a || b) && c', getContextKey)).toBe(true)