Esempio n. 1
0
def test_white_capture_en_passant():
    g = BerkeleyGame()
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E2, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G8, chess.H6)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E4, chess.E5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.F7, chess.F5)))
    assert g.ask_for(KSMove(QA.COMMON, chess.Move(
        chess.E5, chess.F6))) == KSAnswer(MA.CAPTURE_DONE,
                                          capture_at_square=chess.F5)
Esempio n. 2
0
def test_black_from_check_false():
    g = BerkeleyGame()
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E2, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E7, chess.E5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D1, chess.H5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D7, chess.D5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.H5, chess.G6)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D5, chess.E4)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G6, chess.F7)))
    assert g.ask_for(KSMove(QA.COMMON,
                            chess.Move(chess.E8,
                                       chess.E7))) == KSAnswer(MA.ILLEGAL_MOVE)
Esempio n. 3
0
def test_black_from_check_true_and_capture():
    g = BerkeleyGame()
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E2, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E7, chess.E5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D1, chess.H5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D7, chess.D5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.H5, chess.G6)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D5, chess.E4)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G6, chess.F7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E8, chess.E7)))
    assert g.ask_for(KSMove(QA.COMMON, chess.Move(
        chess.E8, chess.F7))) == KSAnswer(MA.CAPTURE_DONE,
                                          capture_at_square=chess.F7)
Esempio n. 4
0
def test_black_any_true_en_passant():
    g = BerkeleyGame()
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E2, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E7, chess.E5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D1, chess.H5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D7, chess.D5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.H5, chess.G6)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D5, chess.E4)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G6, chess.F7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E8, chess.E7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E8, chess.F7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G1, chess.F3)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E4, chess.E3)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.F3, chess.G1)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E5, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.F2, chess.F4)))
    assert g.ask_for(KSMove(QA.ASK_ANY)) == KSAnswer(MA.HAS_ANY)
Esempio n. 5
0
def test_black_capture_en_passant():
    g = BerkeleyGame()
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E2, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E7, chess.E5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D1, chess.H5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D7, chess.D5)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.H5, chess.G6)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.D5, chess.E4)))
    g.ask_for(KSMove(QA.ASK_ANY))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G6, chess.F7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E8, chess.E7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E8, chess.F7)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.G1, chess.F3)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E4, chess.E3)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.F3, chess.G1)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.E5, chess.E4)))
    g.ask_for(KSMove(QA.COMMON, chess.Move(chess.F2, chess.F4)))
    g.ask_for(KSMove(QA.ASK_ANY))
    assert g.ask_for(KSMove(QA.COMMON, chess.Move(
        chess.E4, chess.F3))) == KSAnswer(MA.CAPTURE_DONE,
                                          capture_at_square=chess.F4)