From b0cf6d3cb015098fe7daef5b150c9e6ac841fb43 Mon Sep 17 00:00:00 2001 From: Chaz Date: Wed, 13 Oct 2010 02:18:36 -0400 Subject: [PATCH 01/27] removed -f filename from Options.py and replaced its use in SplitHandHistory.py with -i infile --- pyfpdb/Options.py | 2 -- pyfpdb/SplitHandHistory.py | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/pyfpdb/Options.py b/pyfpdb/Options.py index 4646cb6e..3c9b3930 100644 --- a/pyfpdb/Options.py +++ b/pyfpdb/Options.py @@ -54,8 +54,6 @@ def fpdb_options(): parser.add_option("-u", "--usage", action="store_true", dest="usage", default=False, help=_("Print some useful one liners")) # The following options are used for SplitHandHistory.py - parser.add_option("-f", "--file", dest="filename", metavar="FILE", default=None, - help=_("Input file in quiet mode")) parser.add_option("-o", "--outpath", dest="outpath", metavar="FILE", default=None, help=_("Input out path in quiet mode")) parser.add_option("-a", "--archive", action="store_true", dest="archive", default=False, diff --git a/pyfpdb/SplitHandHistory.py b/pyfpdb/SplitHandHistory.py index 8be80e66..f37325a2 100644 --- a/pyfpdb/SplitHandHistory.py +++ b/pyfpdb/SplitHandHistory.py @@ -200,7 +200,7 @@ def main(argv=None): options.config = Configuration.Config(file = "HUD_config.test.xml") if options.filename: - SplitHH = SplitHandHistory(options.config, options.filename, options.outpath, options.hands, + SplitHH = SplitHandHistory(options.config, options.infile, options.outpath, options.hands, options.hhc, options.archive) if __name__ == '__main__': From 0f9709390e6ccd5720eb5965200ca0f0814d9bde Mon Sep 17 00:00:00 2001 From: Chaz Date: Wed, 13 Oct 2010 02:23:41 -0400 Subject: [PATCH 02/27] Replaced -i infile with -f file in Options.py and replaced options.infile with options.filename in SplitHandHistory.py, Anonymise.py, and ImapFetcher.py --- pyfpdb/Anonymise.py | 8 ++++---- pyfpdb/ImapFetcher.py | 2 +- pyfpdb/Options.py | 5 ++--- pyfpdb/SplitHandHistory.py | 2 +- 4 files changed, 8 insertions(+), 9 deletions(-) mode change 100755 => 100644 pyfpdb/Anonymise.py mode change 100755 => 100644 pyfpdb/ImapFetcher.py diff --git a/pyfpdb/Anonymise.py b/pyfpdb/Anonymise.py old mode 100755 new mode 100644 index ffaa6e70..166651e8 --- a/pyfpdb/Anonymise.py +++ b/pyfpdb/Anonymise.py @@ -39,17 +39,17 @@ obj = getattr(mod, filter_name, None) hhc = obj(config, autostart=False) -if os.path.exists(options.infile): - in_fh = codecs.open(options.infile, 'r', "utf8") +if os.path.exists(options.filename): + in_fh = codecs.open(options.filename, 'r', "utf8") filecontents = in_fh.read() in_fh.close() else: - print _("Could not find file %s") % options.infile + print _("Could not find file %s") % options.filename exit(1) m = hhc.re_PlayerInfo.finditer(filecontents) -outfile = options.infile+".anon" +outfile = options.filename+".anon" print _("Output being written to"), outfile savestdout = sys.stdout diff --git a/pyfpdb/ImapFetcher.py b/pyfpdb/ImapFetcher.py old mode 100755 new mode 100644 index 1d2068d7..ba62673e --- a/pyfpdb/ImapFetcher.py +++ b/pyfpdb/ImapFetcher.py @@ -131,7 +131,7 @@ def readFile(filename, options): return whole_file def runFake(db, config, options): - summaryText = readFile(options.infile, options) + summaryText = readFile(options.filename, options) importSummaries(db, config,[summaryText], options=options) def importSummaries(db, config, summaries, options = None): diff --git a/pyfpdb/Options.py b/pyfpdb/Options.py index 3c9b3930..b8be3d2a 100644 --- a/pyfpdb/Options.py +++ b/pyfpdb/Options.py @@ -38,9 +38,6 @@ def fpdb_options(): parser.add_option("-r", "--rerunPython", action="store_true", help=_("Indicates program was restarted with a different path (only allowed once).")) - parser.add_option("-i", "--infile", - dest="infile", default="Slartibartfast", - help=_("Input file")) parser.add_option("-k", "--konverter", dest="hhc", default="PokerStarsToFpdb", help=_("Module name for Hand History Converter")) @@ -54,6 +51,8 @@ def fpdb_options(): parser.add_option("-u", "--usage", action="store_true", dest="usage", default=False, help=_("Print some useful one liners")) # The following options are used for SplitHandHistory.py + parser.add_option("-f", "--file", dest="filename", metavar="FILE", default=None, + help=_("Input file in quiet mode")) parser.add_option("-o", "--outpath", dest="outpath", metavar="FILE", default=None, help=_("Input out path in quiet mode")) parser.add_option("-a", "--archive", action="store_true", dest="archive", default=False, diff --git a/pyfpdb/SplitHandHistory.py b/pyfpdb/SplitHandHistory.py index f37325a2..8be80e66 100644 --- a/pyfpdb/SplitHandHistory.py +++ b/pyfpdb/SplitHandHistory.py @@ -200,7 +200,7 @@ def main(argv=None): options.config = Configuration.Config(file = "HUD_config.test.xml") if options.filename: - SplitHH = SplitHandHistory(options.config, options.infile, options.outpath, options.hands, + SplitHH = SplitHandHistory(options.config, options.filename, options.outpath, options.hands, options.hhc, options.archive) if __name__ == '__main__': From cc5aaa14aa7425a369b94443da4a9efb353a6fd6 Mon Sep 17 00:00:00 2001 From: steffen123 Date: Sun, 24 Oct 2010 21:40:04 +0200 Subject: [PATCH 03/27] change to support py25 --- pyfpdb/fpdb.pyw | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyfpdb/fpdb.pyw b/pyfpdb/fpdb.pyw index ec10bd9f..a6e1719e 100755 --- a/pyfpdb/fpdb.pyw +++ b/pyfpdb/fpdb.pyw @@ -1242,7 +1242,7 @@ You can find the full license texts in agpl-3.0.txt, gpl-2.0.txt, gpl-3.0.txt an for site in self.config.get_supported_sites(True): # get site names from config file try: self.config.get_site_id(site) # and check against list from db - except KeyError as exc: + except KeyError , exc: log.warning("site %s missing from db" % site) dia = gtk.MessageDialog(parent=None, flags=0, type=gtk.MESSAGE_WARNING, buttons=(gtk.BUTTONS_YES_NO), message_format="Unknown Site") diastring = _("WARNING: Unable to find site '%s'\n\nPress YES to add this site to the database.") % site From 4cb59175f7126ed3c206db481e96517b4cf5c4f0 Mon Sep 17 00:00:00 2001 From: steffen123 Date: Sun, 24 Oct 2010 22:01:40 +0200 Subject: [PATCH 04/27] add missed _() --- pyfpdb/SplitHandHistory.py | 10 +++++----- pyfpdb/WinTables.py | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pyfpdb/SplitHandHistory.py b/pyfpdb/SplitHandHistory.py index 8be80e66..52c1d340 100644 --- a/pyfpdb/SplitHandHistory.py +++ b/pyfpdb/SplitHandHistory.py @@ -73,7 +73,7 @@ class SplitHandHistory: try: infile = codecs.open(self.in_path, 'r', kodec) except IOError: - print 'File not found' + print _('File not found') sys.exit(2) #Split with do_hands_per_file if archive and paragraphs if a regular hh @@ -83,7 +83,7 @@ class SplitHandHistory: nn += 1 check = self.do_hands_per_file(infile, nn) if check is None: - print '%s processed' % self.in_path + print _('%s processed' % self.in_path) break else: filenum = 0 @@ -102,7 +102,7 @@ class SplitHandHistory: def new_file(self, fileno=-1): if fileno < 1: - print 'Nope, will not work (fileno=%d)' % fileno + print _('Nope, will not work (fileno=%d)' % fileno) sys.exit(2) basename = os.path.splitext(os.path.basename(self.in_path))[0] name = os.path.join(self.out_path, basename+'-%06d.txt' % fileno) @@ -123,7 +123,7 @@ class SplitHandHistory: done = True break except: - print "Unexpected error processing file" + print _("Unexpected error processing file") sys.exit(2) n += 1 outfile.close() @@ -162,7 +162,7 @@ class SplitHandHistory: #print l, len(l) # Catch EOF if len(l) == 0: - raise FpdbEndOfFile("End of file reached") + raise FpdbEndOfFile(_("End of file reached")) m = re_SplitArchive.search(l) # There is an empty line after pre-hand header and actual HH entry l = infile.readline() diff --git a/pyfpdb/WinTables.py b/pyfpdb/WinTables.py index 391f70c7..f6ddd93b 100644 --- a/pyfpdb/WinTables.py +++ b/pyfpdb/WinTables.py @@ -67,7 +67,7 @@ class Table(Table_Window): try: if self.window == None: - log.error("Window %s not found. Skipping." % self.search_string) + log.error(_("Window %s not found. Skipping." % self.search_string)) return None except AttributeError: log.error(_("self.window doesn't exist? why?")) From 346d657e55471a457740c5b7607371d5af8a9113 Mon Sep 17 00:00:00 2001 From: Worros Date: Mon, 25 Oct 2010 14:18:03 +0800 Subject: [PATCH 05/27] Winamax: Regression test file. NLHE - All-in where biggest stack wins --- ....with.bad.collected.Biggest.stack.wins.txt | 59 ++ ...th.bad.collected.Biggest.stack.wins.txt.hp | 846 ++++++++++++++++++ 2 files changed, 905 insertions(+) create mode 100644 pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt create mode 100644 pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp diff --git a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt new file mode 100644 index 00000000..7fad959f --- /dev/null +++ b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt @@ -0,0 +1,59 @@ +Winamax Poker - CashGame - HandId: #351984-130-1286650224 - Holdem no limit (0.02€/0.05€) - 2010/10/09 19:50:24 UTC +Table: 'Chelles' 9-max (real money) Seat #2 is the button +Seat 1: Player1 (5€) +Seat 2: Player2 (6.28€) +Seat 3: Player3 (5.06€) +Seat 4: Player4 (5.01€) +Seat 5: Player5 (7.07€) +Seat 6: Player6 (3.20€) +Seat 7: Player7 (6.61€) +Seat 8: Player8 (3.37€) +Seat 9: Player9 (4.76€) +*** ANTE/BLINDS *** +Player3 posts small blind 0.02€ +Player4 posts big blind 0.05€ +Player1 posts big blind 0.05€ out of position +Dealt to Player1 [Ks Th] +*** PRE-FLOP *** +Player5 folds +Player6 folds +Player7 folds +Player8 calls 0.05€ +Player9 folds +Player1 checks +Player2 calls 0.05€ +Player3 folds +Player4 checks +*** FLOP *** [7s 2d 6h] +Player4 checks +Player8 bets 0.05€ +Player1 calls 0.05€ +Player2 folds +Player4 calls 0.05€ +*** TURN *** [7s 2d 6h][9c] +Player4 checks +Player8 bets 0.05€ +Player1 folds +Player4 raises 0.05€ to 0.10€ +Player8 calls 0.05€ +*** RIVER *** [7s 2d 6h 9c][9d] +Player4 bets 4.81€ and is all-in +Player8 calls 3.17€ and is all-in +*** SHOW DOWN *** +Player8 shows [7d 8d] (Two pairs : 9 and 7) +Player4 shows [9h 6s] (Full of 9 and 6) +Player4 collected 8.20€ from pot +*** SUMMARY *** +Total pot 8.20€ | Rake 0.35€ +Board: [7s 2d 6h 9c 9d] +Seat 1: Player1 folded on the turn +Seat 2: Player2 (button) folded on the flop +Seat 3: Player3 (small blind) folded on the pre-flop +Seat 4: Player4 (big blind) showed [9h 6s] and won 8.20€ with Full of 9 and 6 +Seat 5: Player5 folded on the pre-flop +Seat 6: Player6 folded on the pre-flop +Seat 7: Player7 folded on the pre-flop +Seat 8: Player8 showed [7d 8d] and lost with Two pairs : 9 and 7 +Seat 9: Player9 folded on the pre-flop + + diff --git a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp new file mode 100644 index 00000000..0ca6fcb0 --- /dev/null +++ b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp @@ -0,0 +1,846 @@ +{ u'Player1': { 'card1': 51, + 'card2': 9, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': True, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': True, + 'otherRaisedStreet2': True, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 1, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 1, + 'sitout': False, + 'startCards': 116, + 'startCash': 500, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 1, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -10, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player2': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': True, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': True, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 0, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 2, + 'sitout': False, + 'startCards': 0, + 'startCash': 628, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -5, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player3': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 'S', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 3, + 'sitout': False, + 'startCards': 0, + 'startCash': 506, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -2, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player4': { 'card1': 8, + 'card2': 44, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': True, + 'otherRaisedStreet2': True, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 'B', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 35, + 'sawShowdown': True, + 'seatNo': 4, + 'sitout': False, + 'startCards': 60, + 'startCash': 501, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 1, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': True, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': True, + 'street2CheckCallRaiseDone': True, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': True, + 'street3Bets': 1, + 'street3CBChance': True, + 'street3CBDone': True, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': True, + 'street3CheckCallRaiseDone': True, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 483, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 656, + 'wonAtSD': 1.0, + 'wonWhenSeenStreet1': 1.0, + 'wonWhenSeenStreet2': 1.0, + 'wonWhenSeenStreet3': 1.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player5': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 6, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 5, + 'sitout': False, + 'startCards': 0, + 'startCash': 707, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player6': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 5, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 6, + 'sitout': False, + 'startCards': 0, + 'startCash': 320, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player7': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 4, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 7, + 'sitout': False, + 'startCards': 0, + 'startCash': 661, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player8': { 'card1': 19, + 'card2': 20, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': True, + 'otherRaisedStreet3': True, + 'otherRaisedStreet4': False, + 'position': 3, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': True, + 'seatNo': 8, + 'sitout': False, + 'startCards': 84, + 'startCash': 337, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': True, + 'street1Bets': 1, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': True, + 'street2Bets': 1, + 'street2CBChance': True, + 'street2CBDone': True, + 'street2Calls': 1, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 1, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -337, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'Player9': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 2, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 9, + 'sitout': False, + 'startCards': 0, + 'startCash': 476, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}} From 25eeca1e480713b0083a2aa4cc778e310ab87ec7 Mon Sep 17 00:00:00 2001 From: Eric Blade Date: Thu, 28 Oct 2010 19:52:33 -0400 Subject: [PATCH 06/27] Everleaf support for 8-max --- pyfpdb/EverleafToFpdb.py | 8 +++++--- pyfpdb/HUD_config.xml.example | 12 ++++++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/pyfpdb/EverleafToFpdb.py b/pyfpdb/EverleafToFpdb.py index 26875070..3f87a21c 100755 --- a/pyfpdb/EverleafToFpdb.py +++ b/pyfpdb/EverleafToFpdb.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python # -*- coding: utf-8 -*- # # Copyright 2008-2010, Carl Gherardi @@ -174,8 +174,10 @@ or None if we fail to get the info """ for a in m: seatnum = int(a.group('SEAT')) hand.addPlayer(seatnum, a.group('PNAME'), a.group('CASH')) - if seatnum > 6: - hand.maxseats = 10 # everleaf currently does 2/6/10 games, so if seats > 6 are in use, it must be 10-max. + if seatnum > 8: + hand.maxseats = 10 # they added 8-seat games now + elif seatnum > 6: + hand.maxseats = 8 # everleaf currently does 2/6/10 games, so if seats > 6 are in use, it must be 10-max. # TODO: implement lookup list by table-name to determine maxes, then fall back to 6 default/10 here, if there's no entry in the list? diff --git a/pyfpdb/HUD_config.xml.example b/pyfpdb/HUD_config.xml.example index 9afad9dc..3fd354a1 100644 --- a/pyfpdb/HUD_config.xml.example +++ b/pyfpdb/HUD_config.xml.example @@ -290,6 +290,18 @@ Left-Drag to Move" + + + + + + + + + + + + From f5b52190ab523054290595156ef673e0fa9d85ac Mon Sep 17 00:00:00 2001 From: grindi Date: Wed, 3 Nov 2010 19:54:03 +0300 Subject: [PATCH 07/27] Make Party hhc to regonize non-english hh --- pyfpdb/PartyPokerToFpdb.py | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/pyfpdb/PartyPokerToFpdb.py b/pyfpdb/PartyPokerToFpdb.py index a80810c7..cf29fb31 100755 --- a/pyfpdb/PartyPokerToFpdb.py +++ b/pyfpdb/PartyPokerToFpdb.py @@ -21,6 +21,7 @@ import sys from collections import defaultdict +from Configuration import LOCALE_ENCODING from Exceptions import FpdbParseError from HandHistoryConverter import * @@ -38,7 +39,7 @@ class FpdbParseError(FpdbParseError): class PartyPoker(HandHistoryConverter): sitename = "PartyPoker" - codepage = "cp1252" + codepage = "utf8" siteId = 9 filetype = "text" sym = {'USD': "\$", } @@ -52,7 +53,7 @@ class PartyPoker(HandHistoryConverter): (?P(Texas\ Hold\'em|Omaha)) \s*\-\s* (?P.+) - """, re.VERBOSE) + """, re.VERBOSE | re.UNICODE) re_GameInfoTrny = re.compile(""" (?P(NL|PL|))\s* (?P(Texas\ Hold\'em|Omaha))\s+ @@ -66,7 +67,7 @@ class PartyPoker(HandHistoryConverter): \) \s*\-\s* (?P.+) - """, re.VERBOSE) + """, re.VERBOSE | re.UNICODE) re_Hid = re.compile("^Game \#(?P\d+) starts.") re_PlayerInfo = re.compile(""" @@ -178,6 +179,10 @@ class PartyPoker(HandHistoryConverter): return self._gameType return self._gameType + @staticmethod + def decode_hand_text(handText): + return handText.encode("latin1").decode(LOCALE_ENCODING) + def determineGameType(self, handText): """inspect the handText and return the gametype dict @@ -185,6 +190,7 @@ class PartyPoker(HandHistoryConverter): {'limitType': xxx, 'base': xxx, 'category': xxx}""" info = {} + handText = self.decode_hand_text(handText) m = self._getGameType(handText) m_sb = self.re_ringSB.search(handText) m_bb = self.re_ringBB.search(handText) @@ -231,6 +237,10 @@ class PartyPoker(HandHistoryConverter): def readHandInfo(self, hand): + # we should redecode handtext here (as it imposible to it above) + # if you know more accurate way to do it - tell me + hand.handText = self.decode_hand_text(hand.handText) + info = {} try: info.update(self.re_Hid.search(hand.handText).groupdict()) @@ -279,10 +289,15 @@ class PartyPoker(HandHistoryConverter): #Saturday, July 25, 07:53:52 EDT 2009 #Thursday, July 30, 21:40:41 MSKS 2009 #Sunday, October 25, 13:39:07 MSK 2009 - m2 = re.search("\w+, (?P\w+) (?P\d+), (?P\d+):(?P\d+):(?P\d+) (?P[A-Z]+) (?P\d+)", info[key]) - # we cant use '%B' due to locale problems + m2 = re.search( + r"\w+,\s+(?P\w+)\s+(?P\d+),\s+(?P\d+):(?P\d+):(?P\d+)\s+(?P[A-Z]+)\s+(?P\d+)", + info[key], + re.UNICODE + ) months = ['January', 'February', 'March', 'April','May', 'June', 'July','August','September','October','November','December'] + if m2.group('M') not in months: + raise FpdbParseError("Only english hh is supported", hid=info["HID"]) month = months.index(m2.group('M')) + 1 datetimestr = "%s/%s/%s %s:%s:%s" % (m2.group('Y'), month,m2.group('D'),m2.group('H'),m2.group('MIN'),m2.group('S')) hand.startTime = datetime.datetime.strptime(datetimestr, "%Y/%m/%d %H:%M:%S") @@ -481,10 +496,8 @@ class PartyPoker(HandHistoryConverter): "Returns string to search in windows titles" if type=="tour": TableName = table_name.split(" ") - print 'party', 'getTableTitleRe', "%s.+Table\s#%s" % (TableName[0], table_number) return "%s.+Table\s#%s" % (TableName[0], table_number) else: - print 'party', 'getTableTitleRe', table_number return table_name def clearMoneyString(money): From 79bfc8587eeec4a65a3b4652701f4b2c891f638b Mon Sep 17 00:00:00 2001 From: grindi Date: Thu, 4 Nov 2010 12:57:39 +0300 Subject: [PATCH 08/27] Absolute hhc: fixes, cleanups, basic trny support --- pyfpdb/AbsoluteToFpdb.py | 174 ++++++++++++++++++++++++--------------- 1 file changed, 106 insertions(+), 68 deletions(-) diff --git a/pyfpdb/AbsoluteToFpdb.py b/pyfpdb/AbsoluteToFpdb.py index 6b57b1e4..b7fde682 100755 --- a/pyfpdb/AbsoluteToFpdb.py +++ b/pyfpdb/AbsoluteToFpdb.py @@ -2,12 +2,12 @@ # -*- coding: utf-8 -*- # # Copyright 2008-2010, Carl Gherardi -# +# # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. -# +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the @@ -36,31 +36,55 @@ class Absolute(HandHistoryConverter): codepage = "cp1252" siteid = 8 HORSEHand = False - + # Static regexes re_SplitHands = re.compile(r"\n\n\n+") re_TailSplitHands = re.compile(r"(\n\n\n+)") -#Stage #1571362962: Holdem No Limit $0.02 - 2009-08-05 15:24:06 (ET) -#Table: TORONTO AVE (Real Money) Seat #6 is the dealer -#Seat 6 - FETS63 ($0.75 in chips) -#Board [10s 5d Kh Qh 8c] + #Stage #1571362962: Holdem No Limit $0.02 - 2009-08-05 15:24:06 (ET) + #Table: TORONTO AVE (Real Money) Seat #6 is the dealer + #Seat 6 - FETS63 ($0.75 in chips) + #Board [10s 5d Kh Qh 8c] + + re_GameInfo = re.compile( ur""" + ^Stage\s+\#C?(?P[0-9]+):?\s+ + (?:Tourney\ ID\ (?P\d+)\s+)? + (?PHoldem|Seven\ Card\ Hi\/L|HORSE)\s+ + (?P\(1\son\s1\)|Single\ Tournament|)\s* + (?PNo\ Limit|Pot\ Limit|Normal|)\s? + (?P\$|\s€|) + (?P[.0-9]+)/?(?:\$|\s€|)(?P[.0-9]+)? + \s+-\s+ + (?P\d\d\d\d-\d\d-\d\d\ \d\d:\d\d:\d\d)\s+ + (?: \( (?P[A-Z]+) \)\s+ )? + .*? + (Table:\ (?P.*?)\ \(Real\ Money\))? + """, re.MULTILINE|re.VERBOSE|re.DOTALL) + + re_HorseGameInfo = re.compile( + ur"^Game Type: (?PLimit) (?PHoldem)", + re.MULTILINE) + + re_HandInfo = re_GameInfo + + # on HORSE STUD games, the table name isn't in the hand info! + re_RingInfoFromFilename = re.compile(ur".*IHH([0-9]+) (?P
.*) -") + re_TrnyInfoFromFilename = re.compile( + ur".*IHH ([0-9]+) (?P.*) "\ + "ID (?P\d+) \((?P
\d+)\) .* "\ + "(?:\$|\s€|)(?P[0-9.]+)\s*\+\s*(?:\$|\s€|)(?P[0-9.]+)" + ) + + # TODO: that's not the right way to match for "dead" dealer is it? + re_Button = re.compile(ur"Seat #(?P
.*) \(Real Money\))?", re.MULTILINE) - re_TableFromFilename = re.compile(ur".*IHH([0-9]+) (?P
.*) -") # on HORSE STUD games, the table name isn't in the hand info! - re_Button = re.compile(ur"Seat #(?P
.*) -") re_TrnyInfoFromFilename = re.compile( ur".*IHH ([0-9]+) (?P.*) "\ - "ID (?P\d+) \((?P
\d+)\) .* "\ - "(?:\$|\s€|)(?P[0-9.]+)\s*\+\s*(?:\$|\s€|)(?P[0-9.]+)" + ur"ID (?P\d+) \((?P
\d+)\) .* "\ + ur"(?:\$|\s€|)(?P[0-9.]+)\s*\+\s*(?:\$|\s€|)(?P[0-9.]+)" ) # TODO: that's not the right way to match for "dead" dealer is it? @@ -79,7 +79,7 @@ class Absolute(HandHistoryConverter): re_PlayerInfo = re.compile( ur"^Seat (?P[0-9]) - (?P.*) "\ - "\((?:\$| €|)(?P[0-9]*[.0-9]+) in chips\)", + ur"\((?:\$| €|)(?P[0-9]*[.,0-9]+) in chips\)", re.MULTILINE) re_Board = re.compile(ur"\[(?P[^\]]*)\]? *$", re.MULTILINE) @@ -180,7 +180,6 @@ class Absolute(HandHistoryConverter): info['bb'] = mg['SB'] info['sb'] = str(float(mg['SB']) * 0.5) # TODO: AP does provide Small BET for Limit .. I think? at least 1-on-1 limit they do.. sigh - return info @@ -221,7 +220,7 @@ class Absolute(HandHistoryConverter): hand.maxseats = 6 if self.HORSEHand: - hand.maxseats = 8 + hand.maxseats = 9 return def readPlayerStacks(self, hand): @@ -230,7 +229,7 @@ class Absolute(HandHistoryConverter): seatnum = int(a.group('SEAT')) hand.addPlayer(seatnum, a.group('PNAME'), a.group('CASH')) if seatnum > 6: - hand.maxseats = 10 # absolute does 2/4/6/8/10 games + hand.maxseats = 9 # absolute does 2/4/6/9 games # TODO: implement lookup list by table-name to determine maxes, # then fall back to 6 default/10 here, if there's no entry in the list? @@ -377,7 +376,12 @@ def validCard(card): if __name__ == "__main__": import Configuration + import Database config = Configuration.Config(None) + # line below this is required + # because config.site_ids (site_name to site_id map) is required + # and one is stored and db. + db = Database.Database(config) parser = OptionParser() parser.add_option("-i", "--input", dest="ipath", help=_("parse input hand history"), default="-") @@ -395,5 +399,5 @@ if __name__ == "__main__": LOG_FILENAME = './logging.out' logging.basicConfig(filename=LOG_FILENAME,level=options.verbosity) - e = Absolute(config, in_path = options.ipath, out_path = options.opath, follow = options.follow, autostart=True) + e = Absolute(config, in_path = options.ipath, out_path = options.opath, follow = options.follow, autostart=True, sitename="Absolute") From 616f84fdddd34fc7680f227e31182b13848974e4 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 14:27:03 +0800 Subject: [PATCH 15/27] FTP: Add support for 2-7 Triple draw (limit only) --- pyfpdb/FulltiltToFpdb.py | 38 +++++++++++++++++--------------------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/pyfpdb/FulltiltToFpdb.py b/pyfpdb/FulltiltToFpdb.py index a1cac57a..ef04f6b7 100755 --- a/pyfpdb/FulltiltToFpdb.py +++ b/pyfpdb/FulltiltToFpdb.py @@ -50,7 +50,7 @@ class Fulltilt(HandHistoryConverter): (Ante\s\$?(?P[.0-9]+)\s)?-\s [%(LS)s]?(?P[.0-9]+\sCap\s)? (?P(No\sLimit|Pot\sLimit|Limit))?\s - (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi)) + (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi|2-7\sTriple\sDraw)) ''' % substitutions, re.VERBOSE) re_SplitHands = re.compile(r"\n\n\n+") re_TailSplitHands = re.compile(r"(\n\n+)") @@ -62,7 +62,7 @@ class Fulltilt(HandHistoryConverter): (\((?P.+)\)\s)?-\s [%(LS)s]?(?P[.0-9]+)/[%(LS)s]?(?P[.0-9]+)\s(Ante\s[%(LS)s]?(?P[.0-9]+)\s)?-\s [%(LS)s]?(?P[.0-9]+\sCap\s)? - (?P[a-zA-Z\/\'\s]+)\s-\s + (?P[-\da-zA-Z\/\'\s]+)\s-\s (?P\d+:\d+:\d+\s(?P\w+)\s-\s\d+/\d+/\d+|\d+:\d+\s(?P\w+)\s-\s\w+\,\s\w+\s\d+\,\s\d+) (?P\(partial\))?\n (?:.*?\n(?PHand\s\#(?P=HID)\shas\sbeen\scanceled))? @@ -160,6 +160,8 @@ class Fulltilt(HandHistoryConverter): ["ring", "stud", "fl"], + ["ring", "draw", "fl"], + ["tour", "hold", "nl"], ["tour", "hold", "pl"], ["tour", "hold", "fl"], @@ -191,7 +193,8 @@ class Fulltilt(HandHistoryConverter): 'Omaha H/L' : ('hold','omahahilo'), 'Razz' : ('stud','razz'), 'Stud Hi' : ('stud','studhi'), - 'Stud H/L' : ('stud','studhilo') + 'Stud H/L' : ('stud','studhilo'), + '2-7 Triple Draw' : ('draw','27_3draw'), } currencies = { u'€':'EUR', '$':'USD', '':'T$' } if mg['CAP']: @@ -212,8 +215,8 @@ class Fulltilt(HandHistoryConverter): def readHandInfo(self, hand): m = self.re_HandInfo.search(hand.handText) if m is None: - logging.info(_("Didn't match re_HandInfo")) - logging.info(hand.handText) + tmp = hand.handText[0:100] + log.error(_("readHandInfo: Unable to recognise handinfo from: '%s'") % tmp) raise FpdbParseError(_("No match in readHandInfo.")) hand.handid = m.group('HID') hand.tablename = m.group('TABLE') @@ -279,20 +282,6 @@ class Fulltilt(HandHistoryConverter): if hand.level is None: hand.level = "0" -# These work, but the info is already in the Hand class - should be used for tourneys though. -# m.group('SB') -# m.group('BB') -# m.group('GAMETYPE') - -# Stars format (Nov 10 2008): 2008/11/07 12:38:49 CET [2008/11/07 7:38:49 ET] -# or : 2008/11/07 12:38:49 ET -# Not getting it in my HH files yet, so using -# 2008/11/10 3:58:52 ET -#TODO: Do conversion from GMT to ET -#TODO: Need some date functions to convert to different timezones (Date::Manip for perl rocked for this) - #hand.starttime = "%d/%02d/%02d %d:%02d:%02d ET" %(int(m.group('YEAR')), int(m.group('MON')), int(m.group('DAY')), - ##int(m.group('HR')), int(m.group('MIN')), int(m.group('SEC'))) - def readPlayerStacks(self, hand): # Split hand text for FTP, as the regex matches the player names incorrectly # in the summary section @@ -305,21 +294,28 @@ class Fulltilt(HandHistoryConverter): for a in m: hand.addPlayer(int(a.group('SEAT')), a.group('PNAME'), a.group('CASH')) + def markStreets(self, hand): - # PREFLOP = ** Dealing down cards ** if hand.gametype['base'] == 'hold': m = re.search(r"\*\*\* HOLE CARDS \*\*\*(?P.+(?=\*\*\* FLOP \*\*\*)|.+)" r"(\*\*\* FLOP \*\*\*(?P \[\S\S \S\S \S\S\].+(?=\*\*\* TURN \*\*\*)|.+))?" r"(\*\*\* TURN \*\*\* \[\S\S \S\S \S\S] (?P\[\S\S\].+(?=\*\*\* RIVER \*\*\*)|.+))?" r"(\*\*\* RIVER \*\*\* \[\S\S \S\S \S\S \S\S] (?P\[\S\S\].+))?", hand.handText,re.DOTALL) - elif hand.gametype['base'] == "stud": # or should this be gametype['category'] == 'razz' + elif hand.gametype['base'] == "stud": m = re.search(r"(?P.+(?=\*\*\* 3RD STREET \*\*\*)|.+)" r"(\*\*\* 3RD STREET \*\*\*(?P.+(?=\*\*\* 4TH STREET \*\*\*)|.+))?" r"(\*\*\* 4TH STREET \*\*\*(?P.+(?=\*\*\* 5TH STREET \*\*\*)|.+))?" r"(\*\*\* 5TH STREET \*\*\*(?P.+(?=\*\*\* 6TH STREET \*\*\*)|.+))?" r"(\*\*\* 6TH STREET \*\*\*(?P.+(?=\*\*\* 7TH STREET \*\*\*)|.+))?" r"(\*\*\* 7TH STREET \*\*\*(?P.+))?", hand.handText,re.DOTALL) + elif hand.gametype['base'] in ("draw"): + m = re.search(r"(?P.+(?=\*\*\* HOLE CARDS \*\*\*)|.+)" + r"(\*\*\* HOLE CARDS \*\*\*(?P.+(?=\*\*\* FIRST DRAW \*\*\*)|.+))?" + r"(\*\*\* FIRST DRAW \*\*\*(?P.+(?=\*\*\* SECOND DRAW \*\*\*)|.+))?" + r"(\*\*\* SECOND DRAW \*\*\*(?P.+(?=\*\*\* THIRD DRAW \*\*\*)|.+))?" + r"(\*\*\* THIRD DRAW \*\*\*(?P.+))?", hand.handText,re.DOTALL) + hand.addStreets(m) def readCommunityCards(self, hand, street): # street has been matched by markStreets, so exists in this hand From 208db4326618564080565ff6743e3fa7838643b9 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 15:16:02 +0800 Subject: [PATCH 16/27] FTP: Limit 5 Card Draw support. --- pyfpdb/FulltiltToFpdb.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyfpdb/FulltiltToFpdb.py b/pyfpdb/FulltiltToFpdb.py index ef04f6b7..55653b03 100755 --- a/pyfpdb/FulltiltToFpdb.py +++ b/pyfpdb/FulltiltToFpdb.py @@ -50,7 +50,7 @@ class Fulltilt(HandHistoryConverter): (Ante\s\$?(?P[.0-9]+)\s)?-\s [%(LS)s]?(?P[.0-9]+\sCap\s)? (?P(No\sLimit|Pot\sLimit|Limit))?\s - (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi|2-7\sTriple\sDraw)) + (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi|2-7\sTriple\sDraw|5\sCard\sDraw)) ''' % substitutions, re.VERBOSE) re_SplitHands = re.compile(r"\n\n\n+") re_TailSplitHands = re.compile(r"(\n\n+)") @@ -195,6 +195,7 @@ class Fulltilt(HandHistoryConverter): 'Stud Hi' : ('stud','studhi'), 'Stud H/L' : ('stud','studhilo'), '2-7 Triple Draw' : ('draw','27_3draw'), + '5 Card Draw' : ('draw','fivedraw'), } currencies = { u'€':'EUR', '$':'USD', '':'T$' } if mg['CAP']: From 0a76ea545bff4d08bd079ec935357f8857ade097 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 16:27:28 +0800 Subject: [PATCH 17/27] Regression: FTP Limit 3 Draw sample --- .../3-Draw-Limit-USD-0.10-0.20-201011.txt | Bin 0 -> 2770 bytes .../3-Draw-Limit-USD-0.10-0.20-201011.txt.hp | 564 ++++++++++++++++++ 2 files changed, 564 insertions(+) create mode 100644 pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt create mode 100644 pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt.hp diff --git a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt new file mode 100644 index 0000000000000000000000000000000000000000..75735905e3e1086e43776a2a40e35fc0f4c04396 GIT binary patch literal 2770 zcmbVO+iuf95S?cv{=riF&?2CTZ@s)lO-qr=tud-l)rZ_lBN7rNt^yL@4xBUVt)1+q zG058W+B^3-GrNC&pUZ=c@dT2|2=5%Lk1~~SGL$*iZ=@>|tOMDRP!frBjwO~x@ti1c zS9;(k-KBE$AdO#b%uBqR7<-apo?!on>|^x`V;53hW49p(#X7{=>|H{}1cNq(pgzPq zgHZ*LoqLh=$9LO2yjVwwvTAFwt=+|?3CLP$()TgGf8y^PbhLRF zy7y(3Hgssif;M(&BZoFBXz6(ZOV*{w4oAGvlEk4+Hqxd_d!fEf3#t@0#IVBHQ0~ou zfd%5S09`Kk;0ds1?hIO(?U8(!0sc?r4ztN*1F{&a^*H+E5hGv0xk(oDMOj&)zXz=5 zc&5-BfS0z>23lsbxC4Ze=Y>9jT*wC?@(eVm(vmCSv4geQB^~iepNKI^CI@rR)s1Qn z;1RuS!3yG!T0co&ZXG`(?DUHWk*dTtHI;JjAbkv(3r7MGM?}-Np=vTV8A-%2B~@el zv`!m^b9oEjJ6a8GtXgsnO?G!rD?V3r7)>Q2s=8?1Ky9O!bM?Sfw*B^5=W?)CEQdb^ zCbxr1Zm8Sx__Vkj+qLu{-ynQ7Q&peq#kT{5odRj^fhYF7?Ga8NYp$w|Ub5=CT3N)< z4C~yRbvLg69;2r?xVIjm`UoWDOGq%D*lM-igH_8cS_EdO4kENp^qS~c>@ucf{crR( zMcG=^(aymtX(O-K$gHiGb@Z8>-J_*E}DD})_>)&2+I#Anx1`y+8=dpP?rdmYcUCSn-CYM!v{ZGOAThF*+sxrkg Date: Sun, 7 Nov 2010 16:44:17 +0800 Subject: [PATCH 18/27] HHC: Change log message from info to error --- pyfpdb/HandHistoryConverter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyfpdb/HandHistoryConverter.py b/pyfpdb/HandHistoryConverter.py index 6f0d4890..f99e05f4 100644 --- a/pyfpdb/HandHistoryConverter.py +++ b/pyfpdb/HandHistoryConverter.py @@ -298,7 +298,7 @@ which it expects to find at self.re_TailSplitHands -- see for e.g. Everleaf.py. elif gametype['base'] == 'draw': hand = Hand.DrawHand(self.config, self, self.sitename, gametype, handText) else: - log.info(_("Unsupported game type: %s" % gametype)) + log.error(_("Unsupported game type: %s" % gametype)) raise FpdbParseError(_("Unsupported game type: %s" % gametype)) if hand: From 55b272435d7a12f72c52b78b633f0de1356af338 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 16:48:04 +0800 Subject: [PATCH 19/27] FTP: Add pl and nl support for 5 Card Draw --- pyfpdb/FulltiltToFpdb.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyfpdb/FulltiltToFpdb.py b/pyfpdb/FulltiltToFpdb.py index 55653b03..30a17427 100755 --- a/pyfpdb/FulltiltToFpdb.py +++ b/pyfpdb/FulltiltToFpdb.py @@ -161,6 +161,8 @@ class Fulltilt(HandHistoryConverter): ["ring", "stud", "fl"], ["ring", "draw", "fl"], + ["ring", "draw", "pl"], + ["ring", "draw", "nl"], ["tour", "hold", "nl"], ["tour", "hold", "pl"], From 4b15ca0cad167fce87ba0e885868df4ee0dcfca6 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 16:52:23 +0800 Subject: [PATCH 20/27] FTP: Badugi support --- pyfpdb/FulltiltToFpdb.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyfpdb/FulltiltToFpdb.py b/pyfpdb/FulltiltToFpdb.py index 30a17427..756dd494 100755 --- a/pyfpdb/FulltiltToFpdb.py +++ b/pyfpdb/FulltiltToFpdb.py @@ -50,7 +50,7 @@ class Fulltilt(HandHistoryConverter): (Ante\s\$?(?P[.0-9]+)\s)?-\s [%(LS)s]?(?P[.0-9]+\sCap\s)? (?P(No\sLimit|Pot\sLimit|Limit))?\s - (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi|2-7\sTriple\sDraw|5\sCard\sDraw)) + (?P(Hold\'em|Omaha\sHi|Omaha\sH/L|7\sCard\sStud|Stud\sH/L|Razz|Stud\sHi|2-7\sTriple\sDraw|5\sCard\sDraw|Badugi)) ''' % substitutions, re.VERBOSE) re_SplitHands = re.compile(r"\n\n\n+") re_TailSplitHands = re.compile(r"(\n\n+)") @@ -198,6 +198,7 @@ class Fulltilt(HandHistoryConverter): 'Stud H/L' : ('stud','studhilo'), '2-7 Triple Draw' : ('draw','27_3draw'), '5 Card Draw' : ('draw','fivedraw'), + 'Badugi' : ('draw','badugi'), } currencies = { u'€':'EUR', '$':'USD', '':'T$' } if mg['CAP']: From 1b327607604f63d3ac1afbedf6b6baa87df0e6bf Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 18:16:04 +0800 Subject: [PATCH 21/27] Absolute: Remove spurious return --- pyfpdb/AbsoluteToFpdb.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pyfpdb/AbsoluteToFpdb.py b/pyfpdb/AbsoluteToFpdb.py index cf774de2..c30f4544 100755 --- a/pyfpdb/AbsoluteToFpdb.py +++ b/pyfpdb/AbsoluteToFpdb.py @@ -193,12 +193,11 @@ class Absolute(HandHistoryConverter): if m is None or fname_info is None: if m is None: - logging.info(_("Didn't match re_HandInfo")) - logging.info(hand.handText) + logging.error(_("Didn't match re_HandInfo")) + logging.error(hand.handText) elif fname_info is None: logging.info(_("File name didn't match re_*InfoFromFilename")) logging.info(_("File name: %s") % self.in_path) - return None logging.debug("HID %s, Table %s" % (m.group('HID'), m.group('TABLE'))) hand.handid = m.group('HID') if m.group('TABLE'): From f4ea9778b87eeee9796d6b8eb2024105b8ef0a21 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 18:29:28 +0800 Subject: [PATCH 22/27] Regression: UB NLHE hand and .hp --- .../NLHE-FR-USD-0.01-0.02-201011.Sample.txt | 58 ++ ...NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp | 846 ++++++++++++++++++ 2 files changed, 904 insertions(+) create mode 100644 pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt create mode 100644 pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp diff --git a/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt new file mode 100644 index 00000000..6310ec86 --- /dev/null +++ b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt @@ -0,0 +1,58 @@ + +Stage #C241220000: Holdem No Limit $0.02 - 2010-11-06 15:00:00 (ET) +Table: BASELINE RD (Real Money) Seat #8 is the dealer +Seat 8 - PLAYER8 ($2.05 in chips) +Seat 9 - PLAYER9 ($2.01 in chips) +Seat 1 - PLAYER1 ($2.90 in chips) +Seat 2 - VILLAIN1 ($1.52 in chips) +Seat 3 - PLAYER3 ($2 in chips) +Seat 4 - VILLAIN2 ($3.58 in chips) +Seat 5 - PLAYER5 ($2 in chips) +Seat 6 - PLAYER6 ($1.07 in chips) +Seat 7 - Hero ($1 in chips) +PLAYER9 - Posts small blind $0.01 +PLAYER1 - Posts big blind $0.02 +Hero - Posts $0.02 +*** POCKET CARDS *** +Dealt to Hero [10s 3s] +VILLAIN1 - Calls $0.02 +PLAYER3 - Folds +VILLAIN2 - Calls $0.02 +PLAYER5 - Folds +PLAYER6 - Folds +Hero - Checks +PLAYER8 - Folds +PLAYER9 - Folds +PLAYER1 - Folds +*** FLOP *** [Kc Qh 8h] +VILLAIN1 - Checks +VILLAIN2 - Checks +Hero - Checks +*** TURN *** [Kc Qh 8h] [6d] +VILLAIN1 - Checks +VILLAIN2 - Checks +Hero - Checks +*** RIVER *** [Kc Qh 8h 6d] [8c] +VILLAIN1 - Checks +VILLAIN2 - Checks +Hero - Checks +*** SHOW DOWN *** +VILLAIN1 - Shows [5c Ac] (One pair, eights) +VILLAIN2 - Shows [7s 6c] (Two Pair, eights and sixes) +Hero - Mucks +VILLAIN2 Collects $0.09 from main pot +*** SUMMARY *** +Total Pot($0.09) +Board [Kc Qh 8h 6d 8c] +Seat 1: PLAYER1 (big blind) Folded on the POCKET CARDS +Seat 2: VILLAIN1 HI:lost with One pair, eights [5c Ac - B:8h,B:8c,P:Ac,B:Kc,B:Qh] +Seat 3: PLAYER3 Folded on the POCKET CARDS +Seat 4: VILLAIN2 won Total ($0.09) HI:($0.09) with Two Pair, eights and sixes [7s 6c - B:8h,B:8c,B:6d,P:6c,B:Kc] +Seat 5: PLAYER5 Folded on the POCKET CARDS +Seat 6: PLAYER6 Folded on the POCKET CARDS +Seat 7: Hero HI: [Mucked] [10s 3s] +Seat 8: PLAYER8 (dealer) Folded on the POCKET CARDS +Seat 9: PLAYER9 (small blind) Folded on the POCKET CARDS + + + diff --git a/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp new file mode 100644 index 00000000..0fd0c27d --- /dev/null +++ b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp @@ -0,0 +1,846 @@ +{ u'Hero': { 'card1': 48, + 'card2': 41, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 1, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': True, + 'seatNo': 7, + 'sitout': False, + 'startCards': 106, + 'startCash': 100, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER1': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 'B', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 1, + 'sitout': False, + 'startCards': 0, + 'startCash': 290, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -2, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER3': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 5, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 3, + 'sitout': False, + 'startCards': 0, + 'startCash': 200, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER5': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 3, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 5, + 'sitout': False, + 'startCards': 0, + 'startCash': 200, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER6': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 2, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 6, + 'sitout': False, + 'startCards': 0, + 'startCash': 107, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER8': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 0, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 8, + 'sitout': False, + 'startCards': 0, + 'startCash': 205, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER9': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 'S', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 9, + 'sitout': False, + 'startCards': 0, + 'startCash': 201, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -1, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'VILLAIN1': { 'card1': 30, + 'card2': 39, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 6, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': True, + 'seatNo': 2, + 'sitout': False, + 'startCards': 160, + 'startCash': 152, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -2, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'VILLAIN2': { 'card1': 45, + 'card2': 31, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 4, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': -2, + 'sawShowdown': True, + 'seatNo': 4, + 'sitout': False, + 'startCards': 58, + 'startCash': 358, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 7, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 9, + 'wonAtSD': 1.0, + 'wonWhenSeenStreet1': 1.0, + 'wonWhenSeenStreet2': 1.0, + 'wonWhenSeenStreet3': 1.0, + 'wonWhenSeenStreet4': 0.0}} From 8a797bd0e6ac0d30c0a5bd6155fe3a3c20b09a5d Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 18:39:13 +0800 Subject: [PATCH 23/27] Regression: Absolute NLHE cash hh + .hp --- .../NLHE-FR-USD-0.01-0.02-201011.Sample.txt | 55 ++ ...NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp | 752 ++++++++++++++++++ 2 files changed, 807 insertions(+) create mode 100644 pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt create mode 100644 pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp diff --git a/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt b/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt new file mode 100644 index 00000000..f971ba9d --- /dev/null +++ b/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt @@ -0,0 +1,55 @@ + +Stage #1483940000: Holdem No Limit $0.02 - 2009-06-10 03:10:00 (ET) +Table: CHILE HWY (Real Money) Seat #7 is the dealer +Seat 7 - PLAYER7 ($2.13 in chips) +Seat 9 - Hero ($2.48 in chips) +Seat 1 - PLAYER1 ($3.98 in chips) +Seat 2 - PLAYER2 ($0.76 in chips) +Seat 3 - PLAYER3 ($2.24 in chips) +Seat 4 - PLAYER4 ($1.94 in chips) +Seat 5 - PLAYER5 ($0.41 in chips) +Seat 6 - PLAYER6 ($0.02 in chips) +Hero - Posts small blind $0.01 +PLAYER1 - Posts big blind $0.02 +*** POCKET CARDS *** +Dealt to Hero [9c 7c] +PLAYER2 - Calls $0.02 +PLAYER3 - Folds +PLAYER4 - Folds +PLAYER5 - Folds +PLAYER6 - Folds +PLAYER7 - Folds +Hero - Calls $0.01 +PLAYER1 - Checks +*** FLOP *** [Qh 8h 7h] +Hero - Checks +PLAYER1 - Checks +PLAYER2 - Checks +*** TURN *** [Qh 8h 7h] [Ah] +Hero - Checks +PLAYER1 - Checks +PLAYER2 - Checks +*** RIVER *** [Qh 8h 7h Ah] [Kc] +Hero - Checks +PLAYER1 - Checks +PLAYER2 - Bets $0.06 +Hero - Folds +PLAYER1 - Folds +PLAYER2 - returned ($0.06) : not called +*** SHOW DOWN *** +PLAYER2 - Does not show +PLAYER2 Collects $0.06 from main pot +*** SUMMARY *** +Total Pot($0.06) +Board [Qh 8h 7h Ah Kc] +Seat 1: PLAYER1 (big blind) Folded on the RIVER +Seat 2: PLAYER2 collected Total ($0.06) HI:($0.06) [Does not show] +Seat 3: PLAYER3 Folded on the POCKET CARDS +Seat 4: PLAYER4 Folded on the POCKET CARDS +Seat 5: PLAYER5 Folded on the POCKET CARDS +Seat 6: PLAYER6 Folded on the POCKET CARDS +Seat 7: PLAYER7 (dealer) Folded on the POCKET CARDS +Seat 9: Hero (small blind) Folded on the RIVER + + + diff --git a/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp b/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp new file mode 100644 index 00000000..fcce3360 --- /dev/null +++ b/pyfpdb/regression-test-files/cash/Absolute/Flop/NLHE-FR-USD-0.01-0.02-201011.Sample.txt.hp @@ -0,0 +1,752 @@ +{ u'Hero': { 'card1': 34, + 'card2': 32, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': True, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': True, + 'otherRaisedStreet4': False, + 'position': 'S', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 9, + 'sitout': False, + 'startCards': 97, + 'startCash': 248, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -2, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER1': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': True, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': True, + 'otherRaisedStreet4': False, + 'position': 'B', + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 1, + 'sitout': False, + 'startCards': 0, + 'startCash': 398, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': -2, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER2': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 5, + 'raiseFirstInChance': True, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 2, + 'sitout': False, + 'startCards': 0, + 'startCash': 76, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 1, + 'street0Raises': 0, + 'street0VPI': True, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': True, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': True, + 'street3Aggr': True, + 'street3Bets': 1, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': True, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 4, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 6, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 1.0, + 'wonWhenSeenStreet2': 1.0, + 'wonWhenSeenStreet3': 1.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER3': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 4, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 3, + 'sitout': False, + 'startCards': 0, + 'startCash': 224, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER4': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 3, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 4, + 'sitout': False, + 'startCards': 0, + 'startCash': 194, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER5': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 2, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 5, + 'sitout': False, + 'startCards': 0, + 'startCash': 41, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER6': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 1, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 6, + 'sitout': False, + 'startCards': 0, + 'startCash': 2, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}, + u'PLAYER7': { 'card1': 0, + 'card2': 0, + 'card3': 0, + 'card4': 0, + 'card5': 0, + 'card6': 0, + 'card7': 0, + 'foldBbToStealChance': False, + 'foldSbToStealChance': False, + 'foldToOtherRaisedStreet0': False, + 'foldToOtherRaisedStreet1': False, + 'foldToOtherRaisedStreet2': False, + 'foldToOtherRaisedStreet3': False, + 'foldToOtherRaisedStreet4': False, + 'foldToStreet1CBChance': False, + 'foldToStreet1CBDone': False, + 'foldToStreet2CBChance': False, + 'foldToStreet2CBDone': False, + 'foldToStreet3CBChance': False, + 'foldToStreet3CBDone': False, + 'foldToStreet4CBChance': False, + 'foldToStreet4CBDone': False, + 'foldedBbToSteal': False, + 'foldedSbToSteal': False, + 'other3BStreet0': False, + 'other4BStreet0': False, + 'otherRaisedStreet0': False, + 'otherRaisedStreet1': False, + 'otherRaisedStreet2': False, + 'otherRaisedStreet3': False, + 'otherRaisedStreet4': False, + 'position': 0, + 'raiseFirstInChance': False, + 'raisedFirstIn': False, + 'rake': 0, + 'sawShowdown': False, + 'seatNo': 7, + 'sitout': False, + 'startCards': 0, + 'startCash': 213, + 'street0Aggr': False, + 'street0Bets': 0, + 'street0Calls': 0, + 'street0Raises': 0, + 'street0VPI': False, + 'street0_3BChance': False, + 'street0_3BDone': False, + 'street0_4BChance': False, + 'street0_4BDone': False, + 'street1Aggr': False, + 'street1Bets': 0, + 'street1CBChance': False, + 'street1CBDone': False, + 'street1Calls': 0, + 'street1CheckCallRaiseChance': False, + 'street1CheckCallRaiseDone': False, + 'street1Raises': 0, + 'street1Seen': False, + 'street2Aggr': False, + 'street2Bets': 0, + 'street2CBChance': False, + 'street2CBDone': False, + 'street2Calls': 0, + 'street2CheckCallRaiseChance': False, + 'street2CheckCallRaiseDone': False, + 'street2Raises': 0, + 'street2Seen': False, + 'street3Aggr': False, + 'street3Bets': 0, + 'street3CBChance': False, + 'street3CBDone': False, + 'street3Calls': 0, + 'street3CheckCallRaiseChance': False, + 'street3CheckCallRaiseDone': False, + 'street3Raises': 0, + 'street3Seen': False, + 'street4Aggr': False, + 'street4Bets': 0, + 'street4CBChance': False, + 'street4CBDone': False, + 'street4Calls': 0, + 'street4CheckCallRaiseChance': False, + 'street4CheckCallRaiseDone': False, + 'street4Raises': 0, + 'street4Seen': False, + 'totalProfit': 0, + 'tourneyTypeId': None, + 'tourneysPlayersIds': None, + 'winnings': 0, + 'wonAtSD': 0.0, + 'wonWhenSeenStreet1': 0.0, + 'wonWhenSeenStreet2': 0.0, + 'wonWhenSeenStreet3': 0.0, + 'wonWhenSeenStreet4': 0.0}} From ed6d21dbbf3a7a949e92bf453924e10b18c07c8b Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 20:00:34 +0800 Subject: [PATCH 24/27] THP: Add Absolute to list of files tested --- pyfpdb/TestHandsPlayers.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pyfpdb/TestHandsPlayers.py b/pyfpdb/TestHandsPlayers.py index 3d072d05..53a2dbd4 100755 --- a/pyfpdb/TestHandsPlayers.py +++ b/pyfpdb/TestHandsPlayers.py @@ -142,6 +142,7 @@ def main(argv=None): BetfairErrors = FpdbError('Betfair') OnGameErrors = FpdbError('OnGame') AbsoluteErrors = FpdbError('Absolute Poker') + UltimateBetErrors = FpdbError('Ultimate Bet') EverleafErrors = FpdbError('Everleaf Poker') CarbonErrors = FpdbError('Carbon') PKRErrors = FpdbError('PKR') @@ -152,7 +153,7 @@ def main(argv=None): PokerStarsErrors, FTPErrors, PartyPokerErrors, BetfairErrors, OnGameErrors, AbsoluteErrors, EverleafErrors, CarbonErrors, PKRErrors, - iPokerErrors, WinamaxErrors + iPokerErrors, WinamaxErrors, UltimateBetErrors, ] sites = { @@ -162,6 +163,7 @@ def main(argv=None): 'Betfair' : True, 'OnGame' : True, 'Absolute' : True, + 'UltimateBet' : True, 'Everleaf' : True, 'Carbon' : True, 'PKR' : False, @@ -184,6 +186,8 @@ def main(argv=None): walk_testfiles("regression-test-files/cash/OnGame/", compare, importer, OnGameErrors, "OnGame") if sites['Absolute'] == True: walk_testfiles("regression-test-files/cash/Absolute/", compare, importer, AbsoluteErrors, "Absolute") + if sites['UltimateBet'] == True: + walk_testfiles("regression-test-files/cash/UltimateBet/", compare, importer, UltimateBetErrors, "Absolute") if sites['Everleaf'] == True: walk_testfiles("regression-test-files/cash/Everleaf/", compare, importer, EverleafErrors, "Everleaf") if sites['Carbon'] == True: From 58b111b7ed08c6c0985d4b0befd12451059544e6 Mon Sep 17 00:00:00 2001 From: Worros Date: Sun, 7 Nov 2010 20:55:57 +0800 Subject: [PATCH 25/27] UB: Remove parser - Absolute is able to parse these files --- pyfpdb/UltimateBetToFpdb.py | 333 ------------------------------------ 1 file changed, 333 deletions(-) delete mode 100755 pyfpdb/UltimateBetToFpdb.py diff --git a/pyfpdb/UltimateBetToFpdb.py b/pyfpdb/UltimateBetToFpdb.py deleted file mode 100755 index d21cc9dc..00000000 --- a/pyfpdb/UltimateBetToFpdb.py +++ /dev/null @@ -1,333 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# Copyright 2008-2010 Carl Gherardi -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -######################################################################## - -import L10n -_ = L10n.get_translation() - -import sys -from HandHistoryConverter import * - - -class UltimateBet(HandHistoryConverter): - - # Static regexes - re_GameInfo = re.compile("Stage #(?P[0-9]+):\s+\(?(?PHold\'em|Razz|Seven Card|Omaha|Omaha Hi/Lo|Badugi) (?PNo Limit|Normal|Pot Limit),? \(?(?P\$|)?(?P[.0-9]+)/\$?(?P[.0-9]+)\) - (?P.*$)", re.MULTILINE) - re_SplitHands = re.compile('(\n\n\n+)') - re_HandInfo = re.compile("^Table \'(?P
[- a-zA-Z]+)\'(?P.+?$)?", re.MULTILINE) - re_Button = re.compile('Seat #(?P
[ a-zA-Z]+) - \$?(?P[.0-9]+)/\$?(?P[.0-9]+) - (?P.*) - (?P
[0-9]+):(?P[0-9]+) ET - (?P[0-9]+)/(?P[0-9]+)/(?P[0-9]+)Table (?P
[ a-zA-Z]+)\nSeat (?P