@idealic/poker-engine
Version:
Poker game engine and hand evaluator
216 lines (214 loc) • 5.25 kB
text/typescript
import type { HandFixture } from '../../../types';
export const fixture: HandFixture = {
title: '20-preflop-raise-uncalled',
description: 'Tests a hand where preflop raise goes uncalled',
input: `
PokerStars Hand #254023483503: Hold'em No Limit ($0.50/$1.00 USD) - 2024/12/25 16:02:59 ET
Table 'Fomalhaut II' 6-max Seat #4 is the button
Seat 1: ka100pka527 ($151.09 in chips)
Seat 2: JociBalboaa ($105.92 in chips)
Seat 3: whitecillar3 ($101.50 in chips)
Seat 4: M0t0r16 ($25.36 in chips)
Seat 5: LuckyShikari ($100 in chips)
Seat 6: kars0n ($103.59 in chips)
LuckyShikari: posts small blind $0.50
kars0n: posts big blind $1
*** HOLE CARDS ***
ka100pka527: folds
JociBalboaa: folds
whitecillar3: folds
M0t0r16: raises $2 to $3
LuckyShikari: folds
kars0n: folds
Uncalled bet ($2) returned to M0t0r16
M0t0r16 collected $2.50 from pot
*** SUMMARY ***
Total pot $2.50 | Rake $0
Seat 1: ka100pka527 folded before Flop (didn't bet)
Seat 2: JociBalboaa folded before Flop (didn't bet)
Seat 3: whitecillar3 folded before Flop (didn't bet)
Seat 4: M0t0r16 (button) collected ($2.50)
Seat 5: LuckyShikari (small blind) folded before Flop
Seat 6: kars0n (big blind) folded before Flop
`,
output: {
actions: [
'd dh p1 ????',
'd dh p2 ????',
'd dh p3 ????',
'd dh p4 ????',
'd dh p5 ????',
'd dh p6 ????',
'p1 f',
'p2 f',
'p3 f',
'p4 cbr 3',
'p5 f',
'p6 f',
],
antes: [0, 0, 0, 0, 0, 0],
blindsOrStraddles: [0, 0, 0, 0, 0.5, 1],
currency: 'USD',
day: 25,
hand: 254023483503,
minBet: 1,
month: 12,
players: ['ka100pka527', 'JociBalboaa', 'whitecillar3', 'M0t0r16', 'LuckyShikari', 'kars0n'],
rake: 0,
seatCount: 6,
seats: [1, 2, 3, 4, 5, 6],
startingStacks: [151.09, 105.92, 101.5, 25.36, 100, 103.59],
table: 'Fomalhaut II',
time: '2024-12-25T16:02:59',
timeZone: 'ET',
totalPot: 2.5,
variant: 'NT',
venue: 'PokerStars',
year: 2024,
timestamp: 1735160579000,
},
game: {
isRunOut: false,
players: [
{
name: 'ka100pka527',
stack: 151.09,
position: 0,
cards: ['??', '??'],
hasFolded: true,
hasActed: true,
roundBet: 0,
totalBet: 0,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 0,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
{
name: 'JociBalboaa',
stack: 105.92,
position: 1,
cards: ['??', '??'],
hasFolded: true,
hasActed: true,
roundBet: 0,
totalBet: 0,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 0,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
{
name: 'whitecillar3',
stack: 101.5,
position: 2,
cards: ['??', '??'],
hasFolded: true,
hasActed: true,
roundBet: 0,
totalBet: 0,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 0,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
{
name: 'M0t0r16',
stack: 27.86,
position: 3,
cards: ['??', '??'],
hasFolded: false,
hasActed: true,
roundBet: 0,
totalBet: 1,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 2.5,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
{
name: 'LuckyShikari',
stack: 99.5,
position: 4,
cards: ['??', '??'],
hasFolded: true,
hasActed: true,
roundBet: 0,
totalBet: 0.5,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 0,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
{
name: 'kars0n',
stack: 102.59,
position: 5,
cards: ['??', '??'],
hasFolded: true,
hasActed: true,
roundBet: 0,
totalBet: 1,
isAllIn: false,
hasShownCards: null,
rake: 0,
winnings: 0,
isInactive: false,
returns: 0,
totalInvestments: 0,
roundInvestments: 0,
roundAction: null,
},
],
board: [],
street: 'preflop',
buttonIndex: 3,
smallBlindIndex: 4,
bigBlindIndex: 5,
bet: 0,
variant: 'NT',
venue: 'PokerStars',
usedCards: 0,
isBettingComplete: true,
lastAction: 'p6 f',
lastBetAction: 'p4 cbr 3',
lastPlayerAction: 'p6 f',
isComplete: true,
rake: 0,
pot: 2.5,
rakePercentage: 0,
table: 'Fomalhaut II',
hand: 254023483503,
bigBlind: 1,
stats: [],
isShowdown: false,
nextPlayerIndex: -1,
gameTimestamp: expect.any(Number),
lastTimestamp: expect.any(Number),
},
};