improvfmeents
This commit is contained in:
@@ -504,4 +504,39 @@ public class GameEngineTests
|
||||
Assert.Equal("😾", player.GetLiveAvatar());
|
||||
Assert.Equal("🔥", player.GetEmotionBadge());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GameStatsAndMoveLog_RecordEventsProperly()
|
||||
{
|
||||
var engine = new GameEngine(seed: 42);
|
||||
var p1 = new Player("Hráč 1", PlayerType.Human);
|
||||
var p2 = new Player("AI 1", PlayerType.AI);
|
||||
var rules = new RuleOptions { StackSevens = true };
|
||||
engine.StartGame(new List<Player> { p1, p2 }, rules);
|
||||
|
||||
Assert.NotNull(engine.State.Stats);
|
||||
Assert.NotNull(engine.State.MoveLog);
|
||||
Assert.NotEmpty(engine.State.MoveLog);
|
||||
Assert.Contains(engine.State.MoveLog, l => l.Text.Contains("Hra sa začala"));
|
||||
|
||||
// Play Seven
|
||||
p1.Hand.Clear();
|
||||
var seven = new Card(Suit.Hearts, Rank.Seven);
|
||||
p1.Hand.Add(seven);
|
||||
p1.Hand.Add(new Card(Suit.Hearts, Rank.Eight));
|
||||
engine.State.DiscardPile.Clear();
|
||||
engine.State.DiscardPile.Add(new Card(Suit.Hearts, Rank.Ten));
|
||||
|
||||
engine.PlayCard(p1, seven);
|
||||
|
||||
Assert.Equal(1, engine.State.Stats.TotalSevensPlayed);
|
||||
Assert.Contains(engine.State.MoveLog, l => l.Text.Contains("zahral") && l.Text.Contains("Sedma"));
|
||||
|
||||
// Bot draws 3 cards
|
||||
engine.DrawOrAcknowledge(p2);
|
||||
|
||||
Assert.True(engine.State.Stats.MaxPenaltyDrawnInOneTurn >= 3);
|
||||
Assert.Contains(engine.State.MoveLog, l => l.Text.Contains("potiahol 3"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user