示例#1
0
 def test_group_players(self):
     group = PlayersGroup(self.group)
     self.optimizer.add_players_group(group)
     lineup = next(self.optimizer.optimize(1))
     self.assertEqual(
         len([player for player in self.group if player in lineup]),
         len(self.group))
 def test_group_player_max_exposure(self):
     group = PlayersGroup(self.group, max_exposure=0.5)
     self.optimizer.add_players_group(group)
     lineups = list(self.optimizer.optimize(2))
     self.assertEqual(
         len([player for player in self.group if player in lineups[0]]), len(self.group))
     self.assertEqual(
         len([player for player in self.group if player in lineups[1]]), 0)
示例#3
0
 def test_ungroup_players(self):
     group = PlayersGroup(self.high_fppg_group, max_from_group=1)
     self.optimizer.add_players_group(group)
     lineup = next(self.optimizer.optimize(1))
     self.assertEqual(
         len([
             player for player in self.high_fppg_group if player in lineup
         ]), 1)
 def test_group_player_with_conditional_player(self, strict_depend, is_high_fppg_group, fppg, min_from_group,
                                               max_from_group, total):
     if is_high_fppg_group:
         group = self.high_fppg_group
     else:
         group = self.group
     dependant_player = Player('5', '5', '5', ['C'], '5', 30, fppg)
     self.player_pool.extend_players([dependant_player])
     self.optimizer.add_players_group(
         PlayersGroup(group, depends_on=dependant_player, min_from_group=min_from_group,
                      max_from_group=max_from_group, strict_depend=strict_depend)
     )
     lineup = next(self.optimizer.optimize(1))
     expect_players = [*group, dependant_player]
     self.assertEqual(len([player for player in expect_players if player in lineup]), total)