def test_can_find_kings(): #because tabs start random, repeat a bunch of times to compensate king = Ranks.KING for i in range(1000): tab = Tableau() kings = tab.find_kings() assert len(kings) == 4 for k in kings: assert tab.grid[k[0]][k[1]].rank == king
def test_can_find_kings(): #because tabs start random, repeat a bunch of times to compensate king = Ranks.KING for i in range(1000): tab = Tableau() kings = tab.find_kings() assert len(kings) == 4 for k in kings: assert tab.grid[k[0]][k[1]].rank == king
def busted_tableau(): tab = Tableau() kings = tab.find_kings() continue_loop = True loop_counter = 0 while continue_loop: if loop_counter > 100: tab = Tableau() gaps = tab.find_gaps() kings = tab.find_kings() i = 0 for g in gaps: gap_row = g[0] gap_col = g[1] king_row = kings[i][0] king_col = kings[i][1] if gap_col == 0: tab.grid[gap_row][0],tab.grid[king_row][king_col] = \ tab.grid[king_row][king_col], None else: tab.grid[gap_row][gap_col-1], tab.grid[king_row][king_col] = \ tab.grid[king_row][king_col], tab.grid[gap_row][gap_col-1] i += 1 kings = tab.find_kings() continue_loop = False for king in kings: try: if king[1] == 12 or tab.grid[king[0]][king[1]+1] is not None: continue_loop = True loop_counter += 1 break except IndexError as ex: print king raise ex assert len(tab.find_gaps()) == 4 assert len(tab.find_kings()) == 4 return tab
def busted_tableau(): tab = Tableau() kings = tab.find_kings() continue_loop = True loop_counter = 0 while continue_loop: if loop_counter > 100: tab = Tableau() gaps = tab.find_gaps() kings = tab.find_kings() i = 0 for g in gaps: gap_row = g[0] gap_col = g[1] king_row = kings[i][0] king_col = kings[i][1] if gap_col == 0: tab.grid[gap_row][0],tab.grid[king_row][king_col] = \ tab.grid[king_row][king_col], None else: tab.grid[gap_row][gap_col-1], tab.grid[king_row][king_col] = \ tab.grid[king_row][king_col], tab.grid[gap_row][gap_col-1] i += 1 kings = tab.find_kings() continue_loop = False for king in kings: try: if king[1] == 12 or tab.grid[king[0]][king[1] + 1] is not None: continue_loop = True loop_counter += 1 break except IndexError as ex: print king raise ex assert len(tab.find_gaps()) == 4 assert len(tab.find_kings()) == 4 return tab