Ejemplo n.º 1
0
    def test_check_move_check(self):

        result = check_move_syntax.Move('cxb5+').move
        self.assertEqual('cxb5+', result)

        result = check_move_syntax.Move('c+xb5').move
        self.assertEqual('', result)
Ejemplo n.º 2
0
    def test_check_move_check_and_mate(self):

        result = check_move_syntax.Move('b2b4+#').move
        self.assertEqual('b4+#', result)

        result = check_move_syntax.Move('b+#2b4').move
        self.assertEqual('', result)
Ejemplo n.º 3
0
    def test_check_move_mate(self):

        result = check_move_syntax.Move('e4xf5#').move
        self.assertEqual('exf5#', result)

        result = check_move_syntax.Move('e4x#f5').move
        self.assertEqual('', result)
Ejemplo n.º 4
0
    def test_pawn_takings_long_should_be_shorten_ok(self):

        result = check_move_syntax.Move('e4xf5').move
        self.assertEqual('exf5', result)

        result = check_move_syntax.Move('c7xb8').move
        self.assertEqual('cxb8', result)
Ejemplo n.º 5
0
    def test_pawn_takings_short_ok(self):

        result = check_move_syntax.Move('exf5').move
        self.assertEqual('exf5', result)

        result = check_move_syntax.Move('cxb5').move
        self.assertEqual('cxb5', result)
Ejemplo n.º 6
0
    def test_castle(self):

        result = check_move_syntax.Move('O-O+').move
        self.assertEqual('O-O+', result)

        result = check_move_syntax.Move('O-O-O').move
        self.assertEqual('O-O-O', result)

        result = check_move_syntax.Move('O-O-O+#').move
        self.assertEqual('O-O-O+#', result)
Ejemplo n.º 7
0
    def test_pawn_taking_wrong(self):

        result = check_move_syntax.Move('e4xf6').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('c7xb1').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('cx1b2').move
        self.assertEqual('', result)
Ejemplo n.º 8
0
    def test_pawn_long_moves_wrong(self):

        result = check_move_syntax.Move('ba4').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('bb9').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('b3b5').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('i7i5').move
        self.assertEqual('', result)
Ejemplo n.º 9
0
    def test_pawn_short_moves_wrong(self):

        result = check_move_syntax.Move('b9').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('b0').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('A4').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('q8').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('f9').move
        self.assertEqual('', result)
Ejemplo n.º 10
0
    def test_short_pawn_moves_ok(self):

        result = check_move_syntax.Move('e4').move
        self.assertEqual("e4", result)

        result = check_move_syntax.Move('f8').move
        self.assertEqual("f8", result)

        result = check_move_syntax.Move('a1').move
        self.assertEqual("a1", result)

        result = check_move_syntax.Move('h8').move
        self.assertEqual("h8", result)

        result = check_move_syntax.Move('Ph8').move
        self.assertEqual("h8", result)
Ejemplo n.º 11
0
    def test_long_pawn_moves_that_should_be_shorten_ok(self):

        result = check_move_syntax.Move('ee4').move
        self.assertEqual('e4', result)

        message = "Pawn move by 2 up"
        result = check_move_syntax.Move('a2a4').move
        self.assertEqual('a4', result, message)

        message = "Pawn move by 2 down"
        result = check_move_syntax.Move('g7g5').move
        self.assertEqual('g5', result, message)

        message = "Pawn move by 1 long"
        result = check_move_syntax.Move('g7g6').move
        self.assertEqual('g6', result, message)

        message = "Pawn move by 1 long"
        result = check_move_syntax.Move('a4a5').move
        self.assertEqual('a5', result, message)
Ejemplo n.º 12
0
    def test_piece_move_wrong(self):

        result = check_move_syntax.Move('Bb9').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('Wh8').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('Kr4').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('Bcr1').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('R4cf').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('Qc1d28').move
        self.assertEqual('', result)

        result = check_move_syntax.Move('####').move
        self.assertEqual('', result)
Ejemplo n.º 13
0
    def test_piece_move_ok(self):

        result = check_move_syntax.Move('Bb1').move
        self.assertEqual('Bb1', result)

        result = check_move_syntax.Move('Nh8').move
        self.assertEqual('Nh8', result)

        result = check_move_syntax.Move('Kf4').move
        self.assertEqual('Kf4', result)

        result = check_move_syntax.Move('Bcb1').move
        self.assertEqual('Bcb1', result)

        result = check_move_syntax.Move('Rcf4').move
        self.assertEqual('Rcf4', result)

        result = check_move_syntax.Move('Qc1d2').move
        self.assertEqual('Qc1d2', result)