def test_cannot_safely_put_one_more_queen_on_a_full_board(self): """ Full board is a board that already has 8 queens """ eight_queens = ["a1", "b3", "c5", "d7", "e2", "f4", "g6", "h8"] full_board = get_board(eight_queens) self.assertRaises(CannotPutMoreQueenException, safely_put_one_more_queen, full_board)
def test_safely_put_one_more_queen_on_a_board_with_knight_pattern_starting_from_h8(self): board = get_board(["h8", "g6", "f4", "e2"]) column_d = ["d1", "d2", "d3", "d4", "d5", "d6", "d7", "d8"] board, queen_position = safely_put_one_more_queen(board, column_d) self.assertEquals(5, count_queen(board)) self.assertTrue(validate_board(board)) self.assertTrue(is_queen(board, "d7"))
def test_safely_put_one_more_queen_on_a_board_with_knight_pattern_starting_from_a1(self): board = get_board(["a1", "b3", "c5", "d7"]) column_e = ["e1", "e2", "e3", "e4", "e5", "e6", "e7", "e8"] board, queen_position = safely_put_one_more_queen(board, column_e) self.assertEquals(5, count_queen(board)) self.assertTrue(validate_board(board)) self.assertTrue(is_queen(board, "e2"))
def test_get_board_with_3_queens_at_a1_b3_and_c5(self): queen_positions = ["a1", "b3", "c5"] result = get_board(queen_positions) expected = u""" a b c d e f g h 8 ◻ ◼ ◻ ◼ ◻ ◼ ◻ ◼ 7 ◼ ◻ ◼ ◻ ◼ ◻ ◼ ◻ 6 ◻ ◼ ◻ ◼ ◻ ◼ ◻ ◼ 5 ◼ ◻ ♛ ◻ ◼ ◻ ◼ ◻ 4 ◻ ◼ ◻ ◼ ◻ ◼ ◻ ◼ 3 ◼ ♛ ◼ ◻ ◼ ◻ ◼ ◻ 2 ◻ ◼ ◻ ◼ ◻ ◼ ◻ ◼ 1 ♛ ◻ ◼ ◻ ◼ ◻ ◼ ◻ """ assertLikes(self, expected, result)
def test_safely_put_one_more_queen_on_empty_board(self): board = get_board([]) board, queen_position = safely_put_one_more_queen(board) self.assertEquals(1, count_queen(board)) self.assertTrue(validate_board(board))
def test_get_board_with_a_queen_at_a1(self): queen_positions = ["a1"] result = get_board(queen_positions) assertLikes(self, board_with_queen_at_a1, result)
def test_get_empty_board(self): queen_positions = [] result = get_board(queen_positions) assertLikes(self, empty_board, result)