def _test_round_robin(self): players = [ TicTacToe.TicTacToe(), TicTacToe.CenterGrabTicTacToe(), TicTacToe.RandomTicTacToe(), TicTacToe.CenterGrabRandomTicTacToe(), TicTacToe.BottomUpTicTacToe(), TicTacToe.HunterTicTacToe() ] players.append(TicTacToe.InvalidReturnTicTacToe()) players.append(TicTacToe.LoopBackTicTacToe()) #players.append(TicTacToe.NoReturnTicTacToe()) points = {} losses = {} for i in range(len(players)): points[i] = 0 losses[i] = 0 for x in range(len(players)): for y in range(len(players)): if x != y: result = TicTacToe.TicTacToe.head_to_head( players[x], players[y], TicTacToe.TicTacToe()) if 'X' in result: points[x] += 1 losses[y] += 1 elif 'O' in result: points[y] += 1 losses[x] += 1 else: points[x] += 0.5 points[y] += 0.5 print '\n' for k in points: print k, 'scored', points[k], 'points', losses[ k], 'losses', players[k].get_name()