I noticed that if you split the get_vector call into multiple lines, such as this, the test stops working, and it passes if I put it into one line.
direction = Input.get_vector("move_left","move_right", "move_up","move_down")
Thanks for the report. That shouldn't happen anymore as in the last release, we remade the series and so now it uses Input.get_axis() instead of Input.get_vector().
Well, there can still be issues if you split lines, because we have limitations in how we can test your code, but with the shorter Input.get_axis() call that shouldn't happen as much.