def test_flop(self):
        t, p, gui_signals, h, logger = init_table(
            'tests/screenshots/307380116_Flop_0.png')
        self.assertEqual(t.playersBehind, 1)
        self.assertEqual(t.playersAhead, 0)

        t, p, gui_signals, h, logger = init_table(
            'tests/screenshots/712154510_Flop_0.png')
        self.assertEqual(t.playersBehind, 0)
        self.assertEqual(t.playersAhead, 1)
        self.assertEqual(t.isHeadsUp, True)
Exemplo n.º 2
0
    def setUp(self):
        self.t, self.p, self.gui_signals, self.h, self.logger = init_table(
            'testing/screenshots_ps_real_money/269141380_Flop_0.png',
            strategy='vid_ps_3_real_money')
        self.t1, self.p1, self.gui_signals1, self.h1, self.logger1 = init_table(
            'testing/screenshots_ps_real_money/322098970_PreFlop_0.png',
            strategy='vid_ps_3_real_money')
        self.t2, self.p2, self.gui_signals2, self.h2, self.logger2 = init_table(
            'testing/screenshots_ps_real_money/9455534_PreFlop_1.png',
            strategy='vid_ps_3_real_money')

        self.t31, self.p31, self.gui_signals31, self.h31, self.logger31 = init_table(
            'testing/screenshots_ps_real_money/813577545_PreFlop_0.png',
            strategy='vid_ps_3_real_money')
        self.t32, self.p32, self.gui_signals32, self.h32, self.logger32 = init_table(
            'testing/screenshots_ps_real_money/813577545_Flop_0.png',
            strategy='vid_ps_3_real_money')
        self.t33, self.p33, self.gui_signals33, self.h33, self.logger33 = init_table(
            'testing/screenshots_ps_real_money/813577545_Flop_1.png',
            strategy='vid_ps_3_real_money')
        self.t34, self.p34, self.gui_signals34, self.h34, self.logger34 = init_table(
            'testing/screenshots_ps_real_money/813577545_Turn_0.png',
            strategy='vid_ps_3_real_money')
        self.t35, self.p35, self.gui_signals35, self.h35, self.logger35 = init_table(
            'testing/screenshots_ps_real_money/813577545_River_0.png',
            strategy='vid_ps_3_real_money')
 def test_raiser_utg3(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/571351571_PreFlop_0.png', round_number=0)
     self.assertEqual(t.position_utg_plus, 5)
     self.assertEqual(t.dealer_position, 4)
     self.assertEqual(np.isnan(t.second_raiser), True)
     self.assertEqual(t.first_raiser_utg, 3)
 def test_second_round_snowie_1(self):
     t, p, gui_signals, h, logger = init_table('tests/screenshots/Q9o.png',
                                               round_number=0,
                                               strategy='snowie1')
     self.assertEqual(t.position_utg_plus, 5)
     self.assertEqual(t.dealer_position, 4)
     self.assertEqual(np.isnan(t.second_raiser), True)
     self.assertEqual(t.first_caller_utg, 2)
 def test_call_raise_2(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/897376414_PreFlop_1.png')
     self.assertEqual(t.other_players[0]['pot'], '')
     self.assertEqual(t.other_players[1]['pot'], 0.3)
     self.assertEqual(t.other_players[2]['pot'], '')
     self.assertEqual(t.other_players[3]['pot'], 0.02)
     self.assertEqual(t.other_players[4]['pot'], 0.04)
 def test_call_raise(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/43457283_PreFlop_0.png')
     self.assertEqual(t.other_players[0]['pot'], '')
     self.assertEqual(t.other_players[1]['pot'], 0.04)
     self.assertEqual(t.other_players[2]['pot'], 0.16)
     self.assertEqual(t.other_players[3]['pot'], '')
     self.assertEqual(t.other_players[4]['pot'], 0.02)
 def test_other_players5(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/496504338_PreFlop_0.png')
     self.assertEqual(t.other_players[0]['pot'], 0.04)
     self.assertEqual(t.other_players[1]['pot'], 0.08)
     self.assertEqual(t.other_players[2]['pot'], '')
     self.assertEqual(t.other_players[3]['pot'], '')
     self.assertEqual(t.other_players[4]['pot'], '')
 def test_other_players6(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/499121363_PreFlop_4.png')
     self.assertEqual(t.other_players[0]['pot'], '')
     self.assertEqual(t.other_players[1]['pot'], '')
     self.assertEqual(t.other_players[2]['pot'], 0.28)
     self.assertEqual(t.other_players[3]['pot'], 0.02)
     self.assertEqual(t.other_players[4]['pot'], 0.04)
 def test_preflop_recognition(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/308189727_PreFlop_0.png')
     self.assertEqual(t.other_players[0]['pot'], 0.02)
     self.assertEqual(t.other_players[1]['pot'], 0.04)
     self.assertEqual(t.other_players[2]['pot'], 0.12)
     self.assertEqual(t.other_players[3]['pot'], '')
     self.assertEqual(t.other_players[4]['pot'], '')
Exemplo n.º 10
0
 def test_second_round_table2(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/378278828_PreFlop_1.png', round_number=1)
     self.assertEqual(t.position_utg_plus, 3)
     self.assertEqual(t.dealer_position, 0)
     self.assertEqual(t.first_raiser, 4)
     self.assertEqual(np.isnan(t.second_raiser), True)
     self.assertEqual(np.isnan(t.first_caller), True)
     self.assertEqual(t.bot_pot, 0.22)
Exemplo n.º 11
0
    def first_round_98h(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/98h.png', strategy='Snowie3', round_number=0)
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"
        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.preflop_sheet_name, '4R3')
Exemplo n.º 12
0
    def incorrect_preflop_table2(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/3Ts.png', strategy='Snowie3')
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"
        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.preflop_sheet_name, '6R1C2')
Exemplo n.º 13
0
    def sheet_12R4R6(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/12R4R6.png', round_number=1)
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"
        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.preflop_sheet_name, '12R4R6')
Exemplo n.º 14
0
    def second_round_with_raiser(self):
        t, p, gui_signals, h, logger = init_table('testing/screenshots/QQ.png',
                                                  strategy='Snowie3',
                                                  round_number=1)
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"
        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.preflop_sheet_name, '22R6')
Exemplo n.º 15
0
    def incorrect_preflop_table1(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/K9o.png', strategy='Snowie3')
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"
        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.first_raiser_utg, 4)
        self.assertEqual(np.isnan(t.second_raiser_utg), True)
        self.assertEqual(t.preflop_sheet_name, '6R5')
Exemplo n.º 16
0
    def test_other_players2(self):
        t, p, gui_signals, h, logger = init_table(
            'tests/screenshots/751235173_PreFlop_0.png')

        self.assertEqual(t.position_utg_plus, 5)
        self.assertEqual(t.dealer_position, 4)
        self.assertEqual(t.first_raiser, 3)
        self.assertEqual(np.isnan(t.first_caller), True)

        self.assertEqual(t.other_players[0]['utg_position'], 0)
        self.assertEqual(t.other_players[1]['utg_position'], 1)
        self.assertEqual(t.other_players[2]['utg_position'], 2)
        self.assertEqual(t.other_players[3]['utg_position'], 3)
        self.assertEqual(t.other_players[4]['utg_position'], 4)
Exemplo n.º 17
0
    def test_preflop_round2_3(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/897376414_PreFlop_1.png', round_number=1)
        p = StrategyHandler()
        p.read_strategy('Pokemon4')
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"

        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)
        self.assertEqual(t.first_raiser_utg, 2)
Exemplo n.º 18
0
    def test_other_players4(self):
        t, p, gui_signals, h, logger = init_table(
            'tests/screenshots/467381034_PreFlop_0.png')

        self.assertEqual(t.position_utg_plus, 2)
        self.assertEqual(t.dealer_position, 1)
        self.assertEqual(t.first_raiser_utg, 1)
        self.assertEqual(np.isnan(t.first_caller_utg), True)
        self.assertEqual(t.playersBehind, 1)
        self.assertEqual(t.playersAhead, 3)
        self.assertEqual(t.other_players[0]['pot'], '')
        self.assertEqual(t.other_players[1]['pot'], 0.02)
        self.assertEqual(t.other_players[2]['pot'], 0.04)
        self.assertEqual(t.other_players[3]['pot'], '')
        self.assertEqual(t.other_players[4]['pot'], 0.12)
Exemplo n.º 19
0
    def test_other_players3(self):
        t, p, gui_signals, h, logger = init_table(
            'tests/screenshots/691119677_PreFlop_0.png')

        self.assertEqual(t.position_utg_plus, 2)
        self.assertEqual(t.dealer_position, 1)
        self.assertEqual(t.first_raiser_utg, 0)
        self.assertEqual(t.first_caller_utg, 1)
        self.assertEqual(t.playersBehind, 2)
        self.assertEqual(t.playersAhead, 3)

        self.assertEqual(t.other_players[0]['utg_position'], 3)
        self.assertEqual(t.other_players[1]['utg_position'], 4)
        self.assertEqual(t.other_players[2]['utg_position'], 5)
        self.assertEqual(t.other_players[3]['utg_position'], 0)
        self.assertEqual(t.other_players[4]['utg_position'], 1)
Exemplo n.º 20
0
    def test_position_adjustment(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/467381034_PreFlop_0.png', strategy='Pokemon4')
        t.gameStage = "PreFlop"
        p = StrategyHandler()
        p.read_strategy('Nickpick12')
        l = MagicMock()
        t.checkButton = True
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "Flop"
        p.selected_strategy['FlopBluffMinEquity'] = 0.3
        p.selected_strategy['FlopBluff'] = "1"
        p.selected_strategy['pre_flop_equity_reduction_by_position'] = 0.02

        d.__init__(t, h, p, l)
        self.assertAlmostEqual(d.preflop_adjustment, 0.1, delta=0.01)
Exemplo n.º 21
0
    def test_preflop_call_before_raise(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/1791526_PreFlop_0.png', round_number=0)
        p = StrategyHandler()
        p.read_strategy('Pokemon4')
        l = MagicMock()
        t.checkButton = False
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "PreFlop"

        d.__init__(t, h, p, l)
        d.preflop_override(t, logger, h, p)

        self.assertEqual(t.first_raiser, 2)
        self.assertEqual(t.second_raiser, 4)

        self.assertEqual(t.preflop_sheet_name, '6R5C3')
Exemplo n.º 22
0
    def test_bluff(self):
        t, p, gui_signals, h, logger = init_table(
            'testing/screenshots/751235173_PreFlop_0.png')
        p = StrategyHandler()
        p.read_strategy('Pokemon')
        l = MagicMock()
        t.totalPotValue = 0.5
        t.abs_equity = 0.7
        t.checkButton = True
        d = Decision(t, h, p, l)
        t.isHeadsUp = True
        t.gameStage = "Flop"
        p.selected_strategy['FlopBluffMinEquity'] = 0.3
        p.selected_strategy['FlopBluff'] = "1"

        d.decision = DecisionTypes.check
        t.playersAhead = 0
        d.bluff(t, p, h)
        self.assertEqual(d.decision, DecisionTypes.bet_bluff)

        d.decision = DecisionTypes.check
        t.playersAhead = 1
        d.bluff(t, p, h)
        self.assertEqual(d.decision, DecisionTypes.check)
Exemplo n.º 23
0
 def funds_error2(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/FundsError2.png')
     self.assertEqual(t.myFunds, 10.80)
Exemplo n.º 24
0
 def test_game_number(self):
     t, p, gui_signals, h, logger = init_table(
         'testing/screenshots_ps_real_money/269141380_Flop_0.png',
         strategy='vid_ps_3_real_money')
     t.get_game_number_on_screen(h)
     self.assertEqual(h.game_number_on_screen, "15,547,039,153")
import inspect
import re
import cv2  # opencv 3.0
import numpy as np
from testing.test_engine import init_table
from PIL import Image, ImageFilter

#FOR TOTAL POT VALUE
t, p, gui_signals, h, logger = init_table('testing/screenshots_ps_real_money/9455534_PreFlop_1.png', strategy='vid_ps_3_real_money')
#t, p, gui_signals, h, logger = init_table('testing/screenshots_ps_real_money/269141380_Flop_0.png',strategy='vid_ps_3_real_money')
#t, p, gui_signals, h, logger = init_table('testing/screenshots_ps_real_money/322098970_PreFlop_0.png', strategy='vid_ps_3_real_money')
func_dict = t.coo['get_total_pot_value'][t.tbl]
#t.gui_signals.signal_progressbar_increase.emit(5)
#t.gui_signals.signal_status.emit("Get Pot Value")
#t.logger.debug("Get TotalPot value")
pil_image = t.crop_image(t.entireScreenPIL, t.tlc[0] + func_dict['x1'], t.tlc[1] + func_dict['y1'],
                            t.tlc[0] + func_dict['x2'], t.tlc[1] + func_dict['y2'])

pil_image.show()

if t.tbl == 'PS':
    img = cv2.cvtColor(np.array(pil_image), cv2.COLOR_BGR2RGB)
    left_count, left_points, left_bestfit, left_minvalue = t.find_template_on_screen(t.totalpot, img,
                                                                                        0.01)
    right_count, right_points, right_cbestfit, right_minvalue = t.find_template_on_screen(t.rightpot,
                                                                                             img, 0.01)
    count = (left_count > 0) & (right_count > 0)

    if count:
        number_image = t.crop_image(pil_image, left_points[0][0] + 7, 2, right_points[0][0] + 4,
Exemplo n.º 26
0
 def sheet_incorrect_fold(self):
     t, p, gui_signals, h, logger = init_table(
         'tests/screenshots/49278076_PreFlop_0.png')
     self.assertEqual(t.currentCallValue, 0.34)
     self.assertEqual(t.currentBetValue, 0.60)
     self.assertEqual(t.myFunds, 4.98)
Exemplo n.º 27
0
import numpy as np
from tools.mouse_mover import *

from decisionmaker.decisionmaker import Decision
from decisionmaker.decisionmaker import DecisionTypes
from tools.mongo_manager import StrategyHandler

from testing.test_engine import init_table
from decisionmaker.current_hand_memory import History, CurrentHandPreflopState
from gui.gui_qt_ui import Ui_Pokerbot
from decisionmaker.montecarlo_python import run_montecarlo_wrapper


#t, p, gui_signals, h, logger = init_table('testing/screenshots/751235173_PreFlop_0.png')
#t, p, gui_signals, h, logger = init_table('testing/screenshots/ps_7.png')
t, p, gui_signals, h, logger = init_table('testing/screenshots_ps_real_money/269141380_Flop_0.png', strategy='vid_ps_3_real_money')
#t, p, gui_signals, h, logger = init_table('pics/old/error.png')


p = StrategyHandler()
#p.current_strategy = 'pokemon'
p.current_strategy = 'vid_ps_2'
p.read_strategy('vid_ps_2')
#p.read_strategy('pokemon')
mouse = MouseMoverTableBased(p.selected_strategy['pokerSite'])
p.selected_strategy['gather_player_names'] = 1
h.game_number_on_screen = '1'

ready = t.check_for_captcha(mouse) and \
t.get_lost_everything(h, t, p, gui_signals) and \
t.check_for_imback(mouse) and \
Exemplo n.º 28
0
from unittest.mock import MagicMock
import numpy as np
from tools.mouse_mover import *

from decisionmaker.decisionmaker import Decision
from decisionmaker.decisionmaker import DecisionTypes
from tools.mongo_manager import StrategyHandler

from testing.test_engine import init_table
from decisionmaker.current_hand_memory import History, CurrentHandPreflopState
from gui.gui_qt_ui import Ui_Pokerbot
from decisionmaker.montecarlo_python import run_montecarlo_wrapper

#t, p, gui_signals, h, logger = init_table('testing/screenshots/751235173_PreFlop_0.png')
#t, p, gui_signals, h, logger = init_table('testing/screenshots/ps_7.png')
t, p, gui_signals, h, logger = init_table('testing/screenshots/ps_20.png')
#t, p, gui_signals, h, logger = init_table('pics/old/error.png')

p = StrategyHandler()
#p.current_strategy = 'pokemon'
p.current_strategy = 'vid_ps_2'
p.read_strategy('vid_ps_2')
#p.read_strategy('pokemon')
mouse = MouseMoverTableBased(p.selected_strategy['pokerSite'])
p.selected_strategy['gather_player_names'] = 1
h.game_number_on_screen = '1'

ready = t.check_for_captcha(mouse) and \
t.get_lost_everything(h, t, p, gui_signals) and \
t.check_for_imback(mouse) and \
t.get_my_cards(h) and \