public void GameOver() { string[] lines = { "->-*", "--*-", "-*--", "-*-e" }; Game game = GameParser.ParseGameSettings(lines); game.Move(Move.Move); Assert.AreEqual(GameState.InProgress, game.State); game.Move(Move.Move); Assert.AreEqual(GameState.Dead, game.State); Exception exception = null; try { game.Move(Move.Move); } catch (GameOverException ex) { exception = ex; } Assert.IsNotNull(exception); }
public void MoveOffTheBoard() { string[] lines = { "--->", "--*-", "-*--", "-*-e" }; Game game = GameParser.ParseGameSettings(lines); Exception exception = null; try { game.Move(Move.Move); } catch (InvalidMoveException ex) { exception = ex; } Assert.IsNotNull(exception); }
public void Success() { string[] lines = { ">---", "--*-", "-*--", "-*-e" }; GameParser.ParseGameSettings(lines); }
public void Success() { string[] lines = { ">---", "--*-", "-*--", "-*-e" }; Game game = GameParser.ParseGameSettings(lines); game.Move(Move.Move); Assert.AreEqual(GameState.InProgress, game.State); }
public void NoData() { string[] lines = { }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "No data found"); }
public void NoExit() { string[] lines = { ">---", "-**-", "----", "----" }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "No exit found"); }
public void NoTurtle() { string[] lines = { "----", "----", "-**-", "---e" }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "No start position specified"); }
public void InconsistentBoardSize() { string[] lines = { ">---", "----", "---", // 3 characters "---e" }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "Inconsistent game width"); }
public void InvalidCharacter() { string[] lines = { ">---", "----", "--?-", "---e" }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "Unexpected character found"); }
public void MultipleTurtles() { string[] lines = { ">---", "----", "--^-", "---e" }; Exception exception = null; try { GameParser.ParseGameSettings(lines); } catch (Exception ex) { exception = ex; } Assert.IsNotNull(exception); Assert.AreEqual(exception.Message, "Multiple starts found"); }