def setUp(self):
     self.starting_positions = {
         'Ra1': chessmaster.Rook('a1'),
         'Rh1': chessmaster.Rook('h1'),
         'Ra8': chessmaster.Rook('a8'),
         'Rh8': chessmaster.Rook('h8'),
         'Bc1': chessmaster.Bishop('c1'),
         'Bf1': chessmaster.Bishop('f1'),
         'Bc8': chessmaster.Bishop('c8'),
         'Bf8': chessmaster.Bishop('f8'),
         'Ke1': chessmaster.King('e1'),
         'Ke8': chessmaster.King('e8'),
     }
 def test_reset(self):
     """Tests the operation of the reset function."""
     cm = chessmaster.ChessMatch({'Kd3': chessmaster.King('d3')})
     cm.log = [('a', 'b')]
     cm.reset()
     self.assertEqual(cm.log, [])
     self.assertEqual(cm.pieces.keys(), self.starting_positions.keys())
 def test_king_movement(self):
     """Tests that kings may freely move any direction, 1 square"""
     king = chessmaster.King('d4')
     self.assertTrue(king.move('d5'), 'd4 => d5')
     self.assertTrue(king.move('d4'), 'd5 => d4')
     self.assertTrue(king.move('e4'), 'd4 => e4')
     self.assertTrue(king.move('d4'), 'e4 => d4')
     self.assertTrue(king.move('e5'), 'd4 => e5')
     self.assertTrue(king.move('d4'), 'e5 => d4')
     self.assertTrue(king.move('c5'), 'd4 => c5')
     self.assertTrue(king.move('d4'), 'e4 => d4')
     self.assertFalse(king.move('d6'), 'd4 => d6')
 def test_constructor_pieces_param(self):
     """Tests the pieces parameter of the constructor."""
     pieces = {'Kd3': chessmaster.King('d3')}
     cm = chessmaster.ChessMatch(pieces)
     self.assertEqual(cm.pieces, pieces)