def test_strategy(self): P1 = axelrod.NiceMetaWinner(team=[axelrod.Cooperator, axelrod.Defector]) P2 = axelrod.Player() # This meta player will simply choose the strategy with the highest # current score. P1.team[0].score = 0 P1.team[1].score = 1 self.assertEqual(P1.strategy(P2), C) P1.team[0].score = 1 P1.team[1].score = 0 self.assertEqual(P1.strategy(P2), C) # If there is a tie, choose to cooperate if possible. P1.team[0].score = 1 P1.team[1].score = 1 self.assertEqual(P1.strategy(P2), C) opponent = axelrod.Cooperator() player = axelrod.NiceMetaWinner(team=[axelrod.Cooperator, axelrod.Defector]) for _ in range(5): player.play(opponent) self.assertEqual(player.history[-1], C) opponent = axelrod.Defector() player = axelrod.NiceMetaWinner(team=[axelrod.Defector]) for _ in range(20): player.play(opponent) self.assertEqual(player.history[-1], D) opponent = axelrod.Defector() player = axelrod.MetaWinner(team=[axelrod.Cooperator, axelrod.Defector]) for _ in range(20): player.play(opponent) self.assertEqual(player.history[-1], D)
def test_strategy(self): P1 = axl.NiceMetaWinner(team=[axl.Cooperator, axl.Defector]) P2 = axl.Player() # This meta player will simply choose the strategy with the highest # current score. P1.team[0].score = 0 P1.team[1].score = 1 self.assertEqual(P1.strategy(P2), C) P1.team[0].score = 1 P1.team[1].score = 0 self.assertEqual(P1.strategy(P2), C) # If there is a tie, choose to cooperate if possible. P1.team[0].score = 1 P1.team[1].score = 1 self.assertEqual(P1.strategy(P2), C) opponent = axl.Cooperator() player = axl.NiceMetaWinner(team=[axl.Cooperator, axl.Defector]) match = axl.Match((player, opponent), turns=5) match.play() self.assertEqual(player.history[-1], C) opponent = axl.Defector() player = axl.NiceMetaWinner(team=[axl.Defector]) match = axl.Match((player, opponent), turns=20) match.play() self.assertEqual(player.history[-1], D) opponent = axl.Defector() player = axl.MetaWinner(team=[axl.Cooperator, axl.Defector]) match = axl.Match((player, opponent), turns=20) match.play() self.assertEqual(player.history[-1], D)
def test_strategy(self): self.first_play_test(C) P1 = axelrod.NiceMetaWinner(team=[axelrod.Cooperator, axelrod.Defector]) P2 = axelrod.Cooperator() test_responses(self, P1, P2, [C] * 4, [C] * 4, [C] * 4) P1 = axelrod.NiceMetaWinner(team=[axelrod.Cooperator, axelrod.Defector]) P2 = axelrod.Defector() test_responses(self, P1, P2, [D] * 4, [C] * 4, [D] * 4)