Exemple #1
0
def test_get_raise_and_callers():
    table_scraper_name = 'GG_6TABLE'
    table_dict = mongo.get_table(table_scraper_name)
    # Mock signal
    gui_signals = MagicMock()
    h = History()
    # Game logger
    game_logger = GameLogger()
    p = StrategyHandler()
    strategy = p.read_strategy(
        strategy_override='test')  # Read default strategy.
    # p.update_strategy1(strategy, 'bigBlind', 2)
    # p.update_strategy1(strategy, 'smallBlind', 1)
    t = TableScreenBased(p, table_dict, gui_signals, game_logger, 0.0)

    t.init_get_other_players_info()
    '''
    dealer pos = 4. sb vs bb (me) 
    in positions.
    
    '''
    t.dealer_position = 4  # abs pos
    h.round_number = 0
    # t.position_utg_plus = t.get_utg_from_abs_pos(0, t.dealer_position)  # 5
    t.position_utg_plus = (t.total_players + 3 -
                           t.dealer_position) % t.total_players
    t.other_players[0]['pot'] = 2  # abs 1
    t.other_players[0]['utg_position'] = t.get_utg_from_abs_pos(
        1, t.dealer_position)  # 0
    t.other_players[0]['status'] = 1
    t.other_players[1]['pot'] = 0  # abs 2
    t.other_players[1]['utg_position'] = t.get_utg_from_abs_pos(
        2, t.dealer_position)  # 1
    t.other_players[1]['status'] = 0
    t.other_players[2]['pot'] = 0  # abs 3
    t.other_players[2]['utg_position'] = t.get_utg_from_abs_pos(
        3, t.dealer_position)  # 2
    t.other_players[2]['status'] = 0
    t.other_players[3]['pot'] = 0  # abs 4
    t.other_players[3]['utg_position'] = t.get_utg_from_abs_pos(
        4, t.dealer_position)  # 3
    t.other_players[3]['status'] = 0
    t.other_players[4]['pot'] = 3  # abs 5
    t.other_players[4]['utg_position'] = t.get_utg_from_abs_pos(
        5, t.dealer_position)  # 4
    t.other_players[4]['status'] = 1
    t.big_blind_position_abs_all = (
        t.dealer_position + 2) % 6  # 0 is myself, 1 is player to my left
    t.big_blind_position_abs_op = t.big_blind_position_abs_all - 1
    if h.round_number == 0:  # get by get_round_number
        reference_pot = float(p.selected_strategy['bigBlind'])  # 2.0
    else:
        reference_pot = 5
    logging.info(f'reference_pot:{reference_pot}')
    first_raiser, second_raiser, first_caller, \
    first_raiser_utg, second_raiser_utg, first_caller_utg\
        = t.get_raisers_and_callers(p, reference_pot, is_debug=True)
Exemple #2
0
def test_reverse_sheetname():
    log = logging.getLogger(__name__)
    # Get table_dict
    table_scraper_name = 'GG_6TABLE'
    table_dict = mongo.get_table(table_scraper_name)
    # Mock signal
    gui_signals = MagicMock()
    # Game logger
    game_logger = GameLogger()

    preflop_state = CurrentHandPreflopState()
    h = History()

    preflop_url = get_dir(os.path.join('tools', 'preflop.xlsx'))
    # mongoclient = MongoClient(f'mongodb://*****:*****@dickreuter.com/neuron_poker')
    # mongodb = mongoclient.neuron_poker
    # cursor = mongodb.internal.find()
    # c = cursor.next()
    # preflop_url = c['preflop_url']
    # log.info(f'preflop_url: {preflop_url}')
    h.preflop_sheet = pd.read_excel(preflop_url, sheet_name=None)
    p = StrategyHandler()
    p.read_strategy()  # Read default strategy.
    t = TableScreenBased(p, table_dict, gui_signals, game_logger, 0.0)
    t.dealer_position = 4
    t.position_utg_plus = t.get_utg_from_abs_pos(0, t.dealer_position)  # 5

    preflop_state.reset()
    # preflop_state.other_players = deepcopy(t.other_players)
    preflop_state.bot_preflop_position_utg = t.position_utg_plus  # 5
    preflop_state.bot_preflop_decision = 'Bet'
    preflop_state.preflop_raiser_positions.append(5)
    # preflop_state.preflop_raiser_positions.append(4)
    # preflop_state.preflop_caller_positions.append(5)
    preflop_state.rounds = 0

    for abs_pos in [5]:
        sheet_name = preflop_state.get_reverse_sheetname(abs_pos, t, h)
        log.info(f'abs_pos:{abs_pos}, sheet_name: {sheet_name}')
        ranges = preflop_state.get_rangecards_from_sheetname(
            abs_pos, sheet_name, t, h, p)
        log.info(f'{ranges}')