Esempio n. 1
0
 def test_promotions_are_valid_with_capturable(self):
     pawn = Pawn(self.white, (4, 6))
     rook = Rook(self.black, (3, 7))
     self.board.add_piece(pawn)
     self.board.add_piece(rook)
     moves = list(pawn.moves(self.board))
     self.assertTrue(all(move.promotion is not None for move in moves))
Esempio n. 2
0
 def test_promotions_with_capturable(self):
     pawn = Pawn(self.white, (4, 6))
     rook = Rook(self.black, (3, 7))
     self.board.add_piece(pawn)
     self.board.add_piece(rook)
     moves = list(pawn.moves(self.board))
     self.assertTrue(len(moves), 8)
Esempio n. 3
0
 def test_moves_captureable_enemy(self):
     king = King(self.white, (0, 4))
     pawn = Pawn(self.white, (4, 4))
     bishop = Bishop(self.black, (5, 5))
     self.board.add_piece(king)
     self.board.add_piece(pawn)
     self.board.add_piece(bishop)
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 2, moves)
Esempio n. 4
0
 def test_cant_en_passant(self):
     pawn1 = Pawn(self.white, (4, 4))
     pawn2 = Pawn(self.black, (3, 5))
     self.board.add_piece(pawn1)
     self.board.add_piece(pawn2)
     move = Move(pawn2, pawn2.location, (3, 4))
     self.game._make_move(move)
     moves = [m for m in pawn1.moves(self.board)]
     self.assertEqual(len(moves), 1)
Esempio n. 5
0
 def test_promotions(self):
     pawn = Pawn(self.white, (4, 6))
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 4, moves)
Esempio n. 6
0
 def test_moves_blocked_enemy(self):
     pawn = Pawn(self.white, (4, 4))
     bishop = Bishop(self.black, (4, 5))
     self.board.add_piece(bishop)
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 0, moves)
Esempio n. 7
0
 def test_moves_start_blocked(self):
     pawn = Pawn(self.white, (4, 1))
     bishop = Bishop(self.white, (4, 3))
     self.board.add_piece(bishop)
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 1, moves)
Esempio n. 8
0
 def test_moves_start(self):
     pawn = Pawn(self.white, (4, 1))
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 2, moves)
Esempio n. 9
0
 def test_moves_center(self):
     pawn = Pawn(self.white, (4, 4))
     moves = list(pawn.moves(self.board))
     self.assertEquals(len(moves), 1, moves)
Esempio n. 10
0
 def test_promotions_are_valid(self):
     pawn = Pawn(self.white, (4, 6))
     moves = list(pawn.moves(self.board))
     self.assertTrue(all(move.promotion is not None for move in moves))