public void Attack_King() { // setup environment for test GameController.StartGame (); List<Piece> PL1 = GameController.Players [0].PieceList; List<Piece> PL2 = GameController.Players [1].PieceList; for (int i = 0; i < PL1.Count; i++) { PL1 [i].isDead = true; PL1 [i].X = -1; PL1 [i].Y = -1; PL2 [i].isDead = true; PL2 [i].X = -1; PL2 [i].Y = -1; } UtilityFunctions.CheckAvaiMoveOfAllPieces (); //test piece Piece testKing = new King (3, 1, true); Piece testPawn = null; Piece testPawn2 = null; //get a pwan from write player for test attack foreach (Piece p in PL1) { if (p.type == PieceType.Pawn) { testPawn = p; break; } } testPawn.isDead = false; testPawn.X = 2; testPawn.Y = 0; testKing.AvailableMoves (); testKing.Move (2, 0); Assert.AreEqual (true, testPawn.isDead); //get a pwan from black player for test attack foreach (Piece p in PL2) { if (p.type == PieceType.Pawn) { testPawn2 = p; break; } } testPawn2.isDead = false; testPawn2.X = 3; testPawn2.Y = 0; testKing.AvailableMoves (); testKing.Move (3, 0); Assert.AreEqual (false, testPawn2.isDead); }
public void AvaliableMove_King() { // setup environment for test GameController.StartGame (); List<Piece> PL1 = GameController.Players [0].PieceList; List<Piece> PL2 = GameController.Players [1].PieceList; for (int i = 0; i < PL1.Count; i++) { PL1 [i].isDead = true; PL1 [i].X = -1; PL1 [i].Y = -1; PL2 [i].isDead = true; PL2 [i].X = -1; PL2 [i].Y = -1; } UtilityFunctions.CheckAvaiMoveOfAllPieces (); //test piece Piece testKing = new King (3, 1, false); testKing.AvailableMoves (); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 2, 0)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 3, 0)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 4, 0)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 4, 1)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 4, 2)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 3, 2)); //Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 2, 2)); Assert.IsTrue (hasContain (testKing.AvaliableMove_X, testKing.AvaliableMove_Y, 2, 1)); testKing.isDead = true; testKing.X = -1; testKing.Y = -1; Piece testKing2 = new King (0, 3,false); testKing2.AvailableMoves (); Assert.IsTrue (hasContain (testKing2.AvaliableMove_X, testKing2.AvaliableMove_Y, 0, 2)); Assert.IsTrue (hasContain (testKing2.AvaliableMove_X, testKing2.AvaliableMove_Y, 1, 2)); Assert.IsTrue (hasContain (testKing2.AvaliableMove_X, testKing2.AvaliableMove_Y, 1, 3)); Assert.IsTrue (hasContain (testKing2.AvaliableMove_X, testKing2.AvaliableMove_Y, 1, 4)); Assert.IsTrue (hasContain (testKing2.AvaliableMove_X, testKing2.AvaliableMove_Y, 0, 4)); }