public static void TestFenGeneration() { ThreeCheckChessGame game = new ThreeCheckChessGame("rnb1kb1Q/pppp1p1p/5np1/8/8/8/PPPPKPPP/RNB3NR w q - 1 7 +1+2"); game.ApplyMove(new Move("H8", "F8", Player.White), true); Assert.AreEqual("rnb1kQ2/pppp1p1p/5np1/8/8/8/PPPPKPPP/RNB3NR b q - 0 7 +2+2", game.GetFen()); }
public static void TestRecordedChecks() { ThreeCheckChessGame game = new ThreeCheckChessGame(); game.ApplyMove(new Move("E2", "E4", Player.White), true); game.ApplyMove(new Move("E7", "E5", Player.Black), true); game.ApplyMove(new Move("D1", "H5", Player.White), true); game.ApplyMove(new Move("G7", "G6", Player.Black), true); game.ApplyMove(new Move("H5", "E5", Player.White), true); Assert.AreEqual(1, game.ChecksByWhite); Assert.AreEqual(0, game.ChecksByBlack); game.ApplyMove(new Move("D8", "E7", Player.Black), true); game.ApplyMove(new Move("E5", "H8", Player.White), true); game.ApplyMove(new Move("E7", "E4", Player.Black), true); Assert.AreEqual(1, game.ChecksByWhite); Assert.AreEqual(1, game.ChecksByBlack); game.ApplyMove(new Move("F1", "E2", Player.White), true); game.ApplyMove(new Move("F8", "G7", Player.Black), true); game.ApplyMove(new Move("H8", "G8", Player.White), true); Assert.AreEqual(2, game.ChecksByWhite); game.ApplyMove(new Move("E8", "E7", Player.Black), true); game.ApplyMove(new Move("G8", "E8", Player.White), true); Assert.AreEqual(3, game.ChecksByWhite); Assert.True(game.IsWinner(Player.White)); }