package snake import Fixtures.* class M03RulesSuite extends munit.FunSuite: cases("m03-move").foreach { c => test(s"move: ${c("name").str}") { val a = c("args") assertEquals(Rules.move(point(a(0)), direction(a(1))), point(c("expected"))) } } cases("m03-in-bounds").foreach { c => test(s"inBounds: ${c("name").str}") { val a = c("args") assertEquals(Rules.inBounds(gameState(a(0)), point(a(1))), c("expected").bool) } } cases("m03-turn").foreach { c => test(s"turn: ${c("name").str}") { val a = c("args") assertEquals(Rules.turn(gameState(a(0)), direction(a(1))), gameState(c("expected"))) } } cases("m03-advance").foreach { c => test(s"advance: ${c("name").str}") { assertEquals(Rules.advance(gameState(c("args")(0))), gameState(c("expected"))) } }