{ "function": "tick", "cases": [ { "name": "eat-then-respawn", "args": [ { "width": 3, "height": 2, "snake": [ { "x": 0, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 1, "y": 0 }, "seed": 0, "score": 0, "status": "Playing", "frame": 0 } ], "expected": { "width": 3, "height": 2, "snake": [ { "x": 1, "y": 0 }, { "x": 0, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 1, "y": 1 }, "seed": 1831565813, "score": 1, "status": "Playing", "frame": 0 } }, { "name": "plain-move-no-respawn", "args": [ { "width": 3, "height": 2, "snake": [ { "x": 0, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 2, "y": 1 }, "seed": 0, "score": 0, "status": "Playing", "frame": 0 } ], "expected": { "width": 3, "height": 2, "snake": [ { "x": 1, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 2, "y": 1 }, "seed": 0, "score": 0, "status": "Playing", "frame": 0 } }, { "name": "wall-hit-is-game-over-no-spawn", "args": [ { "width": 3, "height": 2, "snake": [ { "x": 2, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 0, "y": 1 }, "seed": 0, "score": 0, "status": "Playing", "frame": 0 } ], "expected": { "width": 3, "height": 2, "snake": [ { "x": 2, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 0, "y": 1 }, "seed": 0, "score": 0, "status": "GameOver", "frame": 0 } }, { "name": "game-over-state-unchanged", "args": [ { "width": 3, "height": 2, "snake": [ { "x": 0, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 2, "y": 1 }, "seed": 0, "score": 0, "status": "GameOver", "frame": 0 } ], "expected": { "width": 3, "height": 2, "snake": [ { "x": 0, "y": 0 } ], "dir": "Right", "nextDir": "Right", "apple": { "x": 2, "y": 1 }, "seed": 0, "score": 0, "status": "GameOver", "frame": 0 } } ] }