コード例 #1
0
 def test_optimizer_positions_processing(self):
     positions = [
         LineupPosition('1', ('1', )),
         LineupPosition('2', ('2', )),
         LineupPosition('3', ('3', )),
         LineupPosition('23', ('2', '3')),
         LineupPosition('23', ('2', '3')),
         LineupPosition('all', ('1', '2', '3')),
         LineupPosition('all', ('1', '2', '3')),
     ]
     test_settings = type('TestSettings', (settings.BaseSettings, ), {})
     test_settings.positions = positions
     optimizer = LineupOptimizer(test_settings)
     self.assertEqual(len(optimizer._positions), 5)
     self.assertEqual(optimizer._positions[('1', )].min, 1)
     self.assertEqual(optimizer._positions[('1', )].max, 3)
     self.assertEqual(optimizer._positions[('2', )].min, 1)
     self.assertEqual(optimizer._positions[('2', )].max, 5)
     self.assertEqual(optimizer._positions[('3', )].min, 1)
     self.assertEqual(optimizer._positions[('3', )].max, 5)
     self.assertEqual(optimizer._positions[('2', '3')].min, 4)
     self.assertEqual(optimizer._positions[('2', '3')].max, 6)
     self.assertEqual(optimizer._positions[('1', '2', '3')].min, 7)
     self.assertEqual(optimizer._positions[('1', '2', '3')].max, 7)
     self.assertEqual(len(optimizer._not_linked_positions), 2)
     self.assertEqual(optimizer._not_linked_positions[('1', '2')].min, 2)
     self.assertEqual(optimizer._not_linked_positions[('1', '2')].max, 8)
     self.assertEqual(optimizer._not_linked_positions[('1', '3')].min, 2)
     self.assertEqual(optimizer._not_linked_positions[('1', '3')].max, 8)
コード例 #2
0
def get_optimizer(site, sport):
    # type: (str, str) -> LineupOptimizer
    try:
        return LineupOptimizer(SETTINGS_MAPPING[site][sport],
                               CSV_IMPORTERS_MAPPING[site])
    except KeyError:
        raise NotImplementedError
コード例 #3
0
 def test_optimizer_positions_processing(self):
     optimizer = LineupOptimizer(self.TestSettings)
     positions = get_positions_for_optimizer(optimizer.settings.positions)
     self.assertEqual(len(positions), 5)
     self.assertEqual(positions[('1', )], 1)
     self.assertEqual(positions[('2', )], 1)
     self.assertEqual(positions[('3', )], 1)
     self.assertEqual(positions[('2', '3')], 4)
     self.assertEqual(positions[('1', '2', '3')], 7)
コード例 #4
0
 def test_optimizer_positions_processing_with_multipositions(self):
     optimizer = LineupOptimizer(self.TestSettings)
     positions = get_positions_for_optimizer(optimizer.settings.positions,
                                             {('1', '2'), ('2', '3'),
                                              ('1', '3')})
     self.assertEqual(len(positions), 7)
     self.assertEqual(positions[('1', )], 1)
     self.assertEqual(positions[('2', )], 1)
     self.assertEqual(positions[('3', )], 1)
     self.assertEqual(positions[('2', '3')], 4)
     self.assertEqual(positions[('1', '2')], 2)
     self.assertEqual(positions[('1', '3')], 2)
     self.assertEqual(positions[('1', '2', '3')], 7)
コード例 #5
0
 def test_optimizer_positions_processing(self):
     positions = [
         LineupPosition('1', ('1', )),
         LineupPosition('2', ('2', )),
         LineupPosition('3', ('3', )),
         LineupPosition('23', ('2', '3')),
         LineupPosition('23', ('2', '3')),
         LineupPosition('all', ('1', '2', '3')),
         LineupPosition('all', ('1', '2', '3')),
     ]
     test_settings = type('TestSettings', (settings.BaseSettings, ), {})
     test_settings.positions = positions
     optimizer = LineupOptimizer(test_settings, None)
     positions = optimizer.get_positions_for_optimizer()
     self.assertEqual(len(positions), 7)
     self.assertEqual(positions[('1', )], 1)
     self.assertEqual(positions[('2', )], 1)
     self.assertEqual(positions[('3', )], 1)
     self.assertEqual(positions[('2', '3')], 4)
     self.assertEqual(positions[('1', '2')], 2)
     self.assertEqual(positions[('1', '3')], 2)
     self.assertEqual(positions[('1', '2', '3')], 7)
コード例 #6
0
    def test_optimizer_positions_processing(self):
        class TestSettings(settings.BaseSettings):
            positions = [
                LineupPosition('1', ('1', )),
                LineupPosition('2', ('2', )),
                LineupPosition('3', ('3', )),
                LineupPosition('23', ('2', '3')),
                LineupPosition('23', ('2', '3')),
                LineupPosition('all', ('1', '2', '3')),
                LineupPosition('all', ('1', '2', '3')),
            ]

        optimizer = LineupOptimizer(TestSettings)
        positions = optimizer.get_positions_for_optimizer()
        self.assertEqual(len(positions), 7)
        self.assertEqual(positions[('1', )], 1)
        self.assertEqual(positions[('2', )], 1)
        self.assertEqual(positions[('3', )], 1)
        self.assertEqual(positions[('2', '3')], 4)
        self.assertEqual(positions[('1', '2')], 2)
        self.assertEqual(positions[('1', '3')], 2)
        self.assertEqual(positions[('1', '2', '3')], 7)
コード例 #7
0
 def setUp(self):
     self.lineup_optimizer = LineupOptimizer(settings.DraftKingsBasketballSettings)
     self.lineup_optimizer.load_players(self.players[:])
コード例 #8
0
def get_optimizer(site: str, sport: str, **kwargs) -> LineupOptimizer:
    return LineupOptimizer(SitesRegistry.get_settings(site, sport), **kwargs)
コード例 #9
0
ファイル: __init__.py プロジェクト: asardinha/Cloud_Test
def get_optimizer(site, sport, **kwargs):
    # type: (str, str, **Any) -> LineupOptimizer
    return LineupOptimizer(SitesRegistry.get_settings(site, sport), **kwargs)
コード例 #10
0
def get_optimizer(site, sport):
    # type: (str, str) -> LineupOptimizer
    return LineupOptimizer(*SitesRegistry.get_optimizer_args(site, sport))