diff --git a/Qwirkle/QwirkleClassLibrary/Score.cs b/Qwirkle/QwirkleClassLibrary/Score.cs index 14b5763..60adc70 100644 --- a/Qwirkle/QwirkleClassLibrary/Score.cs +++ b/Qwirkle/QwirkleClassLibrary/Score.cs @@ -13,6 +13,10 @@ namespace QwirkleClassLibrary public Score(Player p) { + if(p == null) + { + throw new ArgumentException(p.ToString()); + } score = 0; playerTag = p.NameTag; } diff --git a/Qwirkle/QwirkleClassLibrary/TileBag.cs b/Qwirkle/QwirkleClassLibrary/TileBag.cs index 9b16b4b..01ed06d 100644 --- a/Qwirkle/QwirkleClassLibrary/TileBag.cs +++ b/Qwirkle/QwirkleClassLibrary/TileBag.cs @@ -14,7 +14,7 @@ namespace QwirkleClassLibrary public TileBag(int nbSet) { - if (nbSet < 0 || nbSet < 3) + if (nbSet < 0 || nbSet > 3) { throw new ArgumentException(nbSet.ToString()); } @@ -35,7 +35,7 @@ namespace QwirkleClassLibrary public bool AddTileInBag(Tile tile) { - if (tiles == null) + if (tile == null) { return false; } diff --git a/Qwirkle/QwirkleConsoleApp/Properties/launchSettings.json b/Qwirkle/QwirkleConsoleApp/Properties/launchSettings.json new file mode 100644 index 0000000..c2bcc14 --- /dev/null +++ b/Qwirkle/QwirkleConsoleApp/Properties/launchSettings.json @@ -0,0 +1,11 @@ +{ + "profiles": { + "QwirkleConsoleApp": { + "commandName": "Project" + }, + "WSL": { + "commandName": "WSL2", + "distributionName": "" + } + } +} \ No newline at end of file diff --git a/Qwirkle/TestBase/TestPlayer.cs b/Qwirkle/TestBase/TestPlayer.cs index a619600..37b92e5 100644 --- a/Qwirkle/TestBase/TestPlayer.cs +++ b/Qwirkle/TestBase/TestPlayer.cs @@ -1,8 +1,7 @@ using QwirkleClassLibrary; +namespace TestBase; -namespace TestBase -{ - public class TestPlayers +public class TestPlayers { [Theory] [InlineData(true, "Mathis")] @@ -61,5 +60,4 @@ namespace TestBase } Assert.True(r); } - } -} \ No newline at end of file + } \ No newline at end of file diff --git a/Qwirkle/TestBase/TestScore.cs b/Qwirkle/TestBase/TestScore.cs new file mode 100644 index 0000000..b001591 --- /dev/null +++ b/Qwirkle/TestBase/TestScore.cs @@ -0,0 +1,42 @@ +using QwirkleClassLibrary; +namespace TestBase; + +public class TestScore +{ + public static IEnumerable Data_Score() + { + yield return new object[] + { + true, + new Player("Test"), + }; + yield return new object[] + { + false, + null, + }; + } + + [Theory] + [MemberData(nameof(Data_Score))] + public void Test_CellScoreConstructor(bool except, Player p) + { + if (!except) + { + Assert.Throws(() => new Score(p)); + return; + } + Score score = new Score(p); + Assert.True(true); + } + + + + + + + + + +} + diff --git a/Qwirkle/TestBase/TestTileBag.cs b/Qwirkle/TestBase/TestTileBag.cs index c06f72d..350f0f6 100644 --- a/Qwirkle/TestBase/TestTileBag.cs +++ b/Qwirkle/TestBase/TestTileBag.cs @@ -16,7 +16,7 @@ public class TestTileBag return; } TileBag bag = new TileBag(nbset); - Assert.Equal(bag.TilesBag.Count, nbset); + Assert.Equal(bag.TilesBag.Count, nbset*36); } [Fact] @@ -33,5 +33,23 @@ public class TestTileBag } } + + [Fact] + public void Test_RemoveTileInBag() + { + Tile t = null; + Tile tok = new(Shape.Club, Color.Green); + TileBag bag = new TileBag(2); + bag.AddTileInBag(tok); + + if (bag.RemoveTileInBag(t) == false) + { + Assert.True(bag.RemoveTileInBag(tok)); + + } + + } + + }