def testMoveResultAteFood(self): game_map = Map2D(2, 1) snake = Snake(game_map, 0, 0, Direction.X_POSITIVE) Food(game_map) self.assertEqual(snake.move(), Snake.MoveResult.ATE_FOOD) self.assertIs(game_map.peek(0, 0), snake) self.assertIs(game_map.peek(1, 0), snake) self.assertEqual(snake.head_pos(), (1, 0))
def testMoveSnakeOnCircularPath(self): game_map = Map2D(2, 2) snake = Snake(game_map, 0, 0, Direction.X_POSITIVE) Food(game_map) Food(game_map) Food(game_map) snake.move() snake.set_direction(Direction.Y_POSITIVE) snake.move() snake.set_direction(Direction.X_NEGATIVE) snake.move() snake.set_direction(Direction.Y_NEGATIVE) self.assertEqual(snake.move(), Snake.MoveResult.MOVED) self.assertEqual(snake.head_pos(), (0, 0)) self.assertEqual(snake.end_pos(), (1, 0))
def testHeadPositionIsCorrectAfterMove(self): game_map = Map2D(3, 3) snake = Snake(game_map, 1, 1, Direction.X_POSITIVE) snake.move() self.assertEqual(snake.head_pos(), (2, 1))
def testReturnsHeadPosition(self): game_map = Map2D(3, 3) snake = Snake(game_map, 1, 2, Direction.X_POSITIVE) self.assertEqual(snake.head_pos(), (1, 2))