mathjslab
Version:
MathJSLab - An interpreter with language syntax like MATLAB®/Octave. ISBN 978-65-00-82338-7
22 lines (17 loc) • 644 B
text/typescript
import { Evaluator } from './evaluator';
let evaluator: Evaluator;
describe('Evaluator', () => {
beforeEach(async () => {
evaluator = Evaluator.initialize();
});
it('Evaluator should be defined', () => {
expect(Evaluator).toBeDefined();
});
it('Should parse, evaluate and unparse a simple real expression', () => {
const tree = evaluator.Parse('1+2*3');
const value = evaluator.Evaluate(tree);
const unparsed = evaluator.Unparse(tree);
expect(value.list[0].re.toNumber()).toBe(7);
expect(unparsed === '1+2*3\n').toBe(true);
}, 10000);
});