From f9ff46bdac78f8fde3259ef5cf881f5440086a3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi?= Date: Mon, 3 Jun 2024 11:30:14 +0200 Subject: [PATCH 1/2] Ajout de quelques tests pour gametests --- source/Trek-12/Tests/GameTests.cs | 64 +++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/source/Trek-12/Tests/GameTests.cs b/source/Trek-12/Tests/GameTests.cs index 066aeff..84ff92e 100644 --- a/source/Trek-12/Tests/GameTests.cs +++ b/source/Trek-12/Tests/GameTests.cs @@ -243,4 +243,68 @@ public class GameTests Assert.True(isChecked); } + + [Fact] + public void IsPlaceOperationCorrect() + { + var player = new Player(); + var map = new Map("test_background"); + + _game.InitializeGame(map, player); + Assert.NotNull(_game.GameRules); + _game.UsedMap.Boards[0].Value = 1; + _game.UsedMap.Boards[1].Value = 2; + + var methodInfo = typeof(Game).GetMethod("PlaceResult", BindingFlags.NonPublic | BindingFlags.Instance); + Assert.NotNull(methodInfo); + + var cell = new Cell(0, 2); + cell.Value = 3; + methodInfo.Invoke(_game, new object[] { cell, 3 }); + + Assert.Equal(3, _game.UsedMap.Boards[2].Value); + } + + [Fact] + public void IsHandlePlayerChoice_Handling() + { + var player = new Player(); + var map = new Map("test_background"); + + _game.InitializeGame(map, player); + + var cell = new Cell(0, 1); + _game.UsedMap.Boards[0].Value = 1; + bool result = _game.HandlePlayerChoice(cell, 1); + Assert.True(result); + } + + [Fact] + public void IsHandlePlayerChoice_InvalidCell() + { + var player = new Player(); + var map = new Map("test_background"); + + _game.InitializeGame(map, player); + + var cell = new Cell(0, 7); + cell.Value = 1; + bool result = _game.HandlePlayerChoice(cell, 1); + Assert.False(result); + } + + [Fact] + public void IsHandlePlayerChoice_InvalidPlace() + { + var player = new Player(); + var map = new Map("test_background"); + + _game.InitializeGame(map, player); + + var cell = new Cell(0, 0); + cell.Value = 1; + var othercell = new Cell(3, 3); + bool result = _game.HandlePlayerChoice(othercell, 1); + Assert.False(result); + } } From d0fbda5eb7e3290876894a9d20b3739d8029acaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi?= Date: Mon, 3 Jun 2024 11:38:12 +0200 Subject: [PATCH 2/2] autre ajout --- source/Trek-12/Tests/GameTests.cs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/source/Trek-12/Tests/GameTests.cs b/source/Trek-12/Tests/GameTests.cs index 84ff92e..c96b6ed 100644 --- a/source/Trek-12/Tests/GameTests.cs +++ b/source/Trek-12/Tests/GameTests.cs @@ -307,4 +307,23 @@ public class GameTests bool result = _game.HandlePlayerChoice(othercell, 1); Assert.False(result); } + + [Fact] + public void ShouldTriggerEventWhenEnded() + { + var player = new Player(); + var map = new Map("test_background"); + bool eventTriggered = false; + + _game.GameEnded += (sender, args) => + { + eventTriggered = true; + }; + + _game.InitializeGame(map, player, true); + Assert.True(eventTriggered); + Assert.False(_game.IsRunning); + Assert.Equal(map, _game.UsedMap); + Assert.Equal(player, _game.CurrentPlayer); + } }