def test_weakened_vs_minmax(self): game = GamePlay(MinMaxWithQTable(), WeakenedMinMax('/tmp/minmax.qtable')) verdict = game.run(verbose=True) self.assertEqual(verdict, GameResult.DRAW) pctg = game.run_tournament(100) self.assertAlmostEqual(pctg[2], 1.0)
def test_anti_minmax(self): # MinMax would also pass, but way slower game = GamePlay(MinMaxWithQTable(), AntiMinMaxStrat()) verdict = game.run(verbose=True) self.assertEqual(verdict, GameResult.DRAW) pctg = game.run_tournament(100) self.assertAlmostEqual(pctg[2], 1.0)