diff --git a/Qwirkle/TestBase/TestGame.cs b/Qwirkle/TestBase/TestGame.cs index d93d43f..2ac8233 100644 --- a/Qwirkle/TestBase/TestGame.cs +++ b/Qwirkle/TestBase/TestGame.cs @@ -271,5 +271,74 @@ public class TestGame } + [Fact] + public void Test_EndOFgameEvent() + { + Player p = new Player("test"); + + EndOfGameNotifiedEventArgs events = new EndOfGameNotifiedEventArgs(p); + + Assert.Equal(p, events.Player); + } + + [Theory] + [InlineData(true)] + [InlineData(false)] + public void Test_IsMoveCorrectOne(bool except) + { + Game game = new Game(); + game.AddPlayerInGame("Test1"); + game.AddPlayerInGame("Test2"); + + game.StartGame(); + game.SetNextPlayer(); + + Tile t1 = new Tile(Shape.Square, Color.Red); + Tile t2 = new Tile(Shape.Club, Color.Purple); + Tile t3 = new Tile(Shape.Round, Color.Red); + + game.PlaceTile(game.GetPlayingPlayer(), t1, 0, 0); + + if (except) + { + Assert.True(game.IsMoveCorrect(t3, 0, 1, game.GetBoard())); + } + else + { + Assert.False(game.IsMoveCorrect(t2, 0, 1, game.GetBoard())); + } + } + + [Fact] + public void Test_IsMoveCorrectSixLine() + { + Game game = new Game(); + game.AddPlayerInGame("Test1"); + game.AddPlayerInGame("Test2"); + + game.StartGame(); + game.SetNextPlayer(); + + Tile t1 = new Tile(Shape.Square, Color.Red); + Tile t2 = new Tile(Shape.Club, Color.Red); + Tile t3 = new Tile(Shape.Round, Color.Red); + Tile t4 = new Tile(Shape.Shuriken, Color.Red); + Tile t5 = new Tile(Shape.Star, Color.Red); + Tile t6 = new Tile(Shape.Rhombus, Color.Red); + Tile t7 = new Tile(Shape.Round, Color.Red); + + + game.PlaceTile(game.GetPlayingPlayer(), t1, 0, 0); + game.PlaceTile(game.GetPlayingPlayer(), t2, 1, 0); + game.PlaceTile(game.GetPlayingPlayer(), t3, 2, 0); + game.PlaceTile(game.GetPlayingPlayer(), t4, 3, 0); + game.PlaceTile(game.GetPlayingPlayer(), t5, 4, 0); + game.PlaceTile(game.GetPlayingPlayer(), t6, 5, 0); + + + Assert.False(game.IsMoveCorrect(t7, 6, 0, game.GetBoard())); + + } + }