示例#1
0
 def test_promotions_blocked(self):
     board = load_board([[" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         ["k", " ", "", "", " ", " ", "", " "],
                         ["p", " ", "", "", " ", " ", "", " "],
                         ["K", " ", "", "", " ", " ", "", " "]])
     assert get_promotions(board, sq_to_index("a2"),
                           sq_to_index("a1")) == []
     assert get_promotions(board, sq_to_index("a2"),
                           sq_to_index("b1")) == []
示例#2
0
 def test_promotions_pawn_black_capture(self):
     board = load_board([[" ", " ", "", "", " ", "k", "", "K"],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         [" ", " ", "", "", " ", " ", "", " "],
                         ["p", " ", "", "", " ", " ", "", " "],
                         [" ", "B", "", "", " ", " ", "", " "]])
     assert sorted(get_promotions(board, sq_to_index("a2"), sq_to_index("a1"))) == \
         sorted(["q", "r", "b", "n"])
     assert sorted(get_promotions(board, sq_to_index("a2"), sq_to_index("b1"))) == \
         sorted(["q", "r", "b", "n"])
示例#3
0
 def test_promotions_pawn_white_move(self):
     board = load_board([[" ", "", "", "", " ", "k", "", "K"],
                         ["P", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "]])
     assert sorted(get_promotions(board, sq_to_index("a7"), sq_to_index("a8"))) == \
         sorted(["Q", "R", "B", "N"])
示例#4
0
 def test_promotions_pawn_forward_two_spaces(self):
     board = load_board([[" ", "", "", "", " ", "k", "", "K"],
                         [" ", "", "", "", " ", " ", "", " "],
                         ["P", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "]])
     assert get_promotions(board, sq_to_index("a6"),
                           sq_to_index("a8")) == []
示例#5
0
 def test_promotions_pawn_backwards(self):
     board = load_board([[" ", "", "", "", " ", "k", "", "K"],
                         ["p", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "],
                         [" ", "", "", "", " ", " ", "", " "]])
     assert get_promotions(board, sq_to_index("a7"),
                           sq_to_index("a8")) == []
示例#6
0
 def test_promotions_not_pawn(self):
     board = load_board([[" ", "", "", "", "", "k", "", "K"],
                         ["R", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "],
                         [" ", "", "", "", "", " ", "", " "]])
     board = Board()
     assert get_promotions(board, sq_to_index("a7"),
                           sq_to_index("a8")) == []