These test both graph shape consistency and single value outputs. Eventually we want to make the graph shape tests more precise, and also verify specific outputs how it used to be. For now, this is okay. Co-authored-by: Samuel Gélineau <gelisam@gmail.com>
36 lines
515 B
Plaintext
36 lines
515 B
Plaintext
-- main.mcl --
|
|
# this can return changing functions, and could be optimized, too
|
|
func funcgen($b) {
|
|
if $b {
|
|
func() {
|
|
"hello"
|
|
}
|
|
} else {
|
|
func() {
|
|
"world"
|
|
}
|
|
}
|
|
}
|
|
|
|
$fn1 = funcgen(true)
|
|
$fn2 = funcgen(false)
|
|
|
|
$out1 = $fn1()
|
|
$out2 = $fn2()
|
|
|
|
test $out1 {}
|
|
test $out2 {}
|
|
-- OUTPUT --
|
|
Edge: FuncValue -> call # fn
|
|
Edge: FuncValue -> call # fn
|
|
Edge: call -> call # fn
|
|
Edge: call -> call # fn
|
|
Vertex: FuncValue
|
|
Vertex: FuncValue
|
|
Vertex: call
|
|
Vertex: call
|
|
Vertex: call
|
|
Vertex: call
|
|
Vertex: const
|
|
Vertex: const
|