diff options
Diffstat (limited to 'internal/casino/baccarat_test.go')
| -rw-r--r-- | internal/casino/baccarat_test.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/internal/casino/baccarat_test.go b/internal/casino/baccarat_test.go index 12dc07c..f947f5b 100644 --- a/internal/casino/baccarat_test.go +++ b/internal/casino/baccarat_test.go @@ -162,6 +162,30 @@ func TestBaccaratSoloBetDealsImmediately(t *testing.T) { } } +func TestBaccaratSettlementShowsBalanceOnlyWithoutNextMenu(t *testing.T) { + for _, leaving := range []bool{false, true} { + table := newBaccaratTestTable(TableConfig{ID: "baccarat", Game: GameBaccarat}) + table.join("alice") + forceShoe(table, card{rank: "5"}, card{rank: "4"}, card{rank: "2"}, card{rank: "3"}) + if leaving { + table.players.get("alice").LeaveAfter = true + } + events := table.bet("alice", baccaratSpotPlayer, 10, &testWallet{credits: 100}) + found := false + for _, e := range events { + if e.PrivateTo == "alice" && strings.Contains(e.PrivateMessage, "WIN | Net") { + found = true + if e.ShowBalance != leaving { + t.Fatalf("leaving=%v settlement ShowBalance=%v: %+v", leaving, e.ShowBalance, e) + } + } + } + if !found { + t.Fatalf("leaving=%v missing settlement: %+v", leaving, events) + } + } +} + func TestBaccaratWaitsForAllPlayersToBet(t *testing.T) { table := newBaccaratTestTable(TableConfig{ID: "baccarat", Game: GameBaccarat, MaxPlayers: 2}) table.join("alice") |
