squiggle/packages/squiggle-lang/__tests__/Reducer/Reducer_functionAssignment_test.res

17 lines
439 B
Plaintext
Raw Normal View History

2022-04-23 19:13:43 +00:00
open Jest
open Reducer_TestHelpers
describe("Parse function assignment", () => {
testParseToBe("f(x)=x", "Ok(f = {|x| {x}})")
testParseToBe("f(x)=2*x", "Ok(f = {|x| {(multiply)(2, x)}})")
2022-04-23 19:13:43 +00:00
//MathJs does not allow blocks in function definitions
})
2022-04-25 00:37:35 +00:00
describe("Evaluate function assignment", () => {
testEvalToBe("f(x)=x; f(1)", "Ok(1)")
})
describe("Shadowing", () => {
testEvalToBe("x = 5; f(y) = x*y; x = 6; f(2)", "Ok(10)")
})