frame_transpiler icon indicating copy to clipboard operation
frame_transpiler copied to clipboard

Transition and Change state tests

Open frame-lang opened this issue 2 years ago • 0 comments

Explore more scenarios like these in our tests.

#TransitionParamsArgsTest

    -machine-

    $TransitionParamsTests
        |a| ->  $ZeroEnterArgs ^ --- Ok
        |b| ->  $OneEnterArg ^ --- Error. len(args) != len(params)
        |c| -> (1)  $TwoEnterArgs ^ --- Error. len(args) != len(params)
        |d| -> (1,2)  $TwoEnterArgs ^ --- Ok
        |e| -> (1,2,3)  $TwoEnterArgs ^ --- Error. len(args) != len(params)
        |f| -> (1) $$[-] ^ --- Error. Args to popped state.

    $ZeroEnterArgs
        |>| ^

    $OneEnterArg
        |>| [a] ^

    $TwoEnterArgs
        |>| [a,b] ^

    $ChangeStateTest1
        |>| ^
        |<|  ^
        |a| ->>  $ZeroEnterArgs ^ --- Error. Can't change state out of a state with an exit handler


    $ChangeStateTest2
        |a| ->> $Start ^ --- Error. Can't change state to a state with an enter handler.



##

frame-lang avatar Sep 24 '23 17:09 frame-lang