From 963ac990015415c5f607cc4088a1a0ca829f3a82 Mon Sep 17 00:00:00 2001 From: Ismail TAHA JANAN Date: Tue, 11 Oct 2022 06:59:42 +0200 Subject: [PATCH] :white_check_mark: dice and faces tests implementd --- Sources/Tests/Model_UTs/Dice/ColorDieTest.cs | 47 +++++++++++-- .../Model_UTs/Dice/Faces/ColorFaceTest.cs | 66 +++++++++++++++++-- .../Model_UTs/Dice/Faces/ImageFaceTest.cs | 66 +++++++++++++++++-- .../Model_UTs/Dice/Faces/NumberFaceTest.cs | 49 ++++++++++++-- Sources/Tests/Model_UTs/Dice/ImageDieTest.cs | 49 ++++++++++++-- Sources/Tests/Model_UTs/Dice/NumberDieTest.cs | 32 ++++++--- 6 files changed, 279 insertions(+), 30 deletions(-) diff --git a/Sources/Tests/Model_UTs/Dice/ColorDieTest.cs b/Sources/Tests/Model_UTs/Dice/ColorDieTest.cs index c12f636..06c2ffa 100644 --- a/Sources/Tests/Model_UTs/Dice/ColorDieTest.cs +++ b/Sources/Tests/Model_UTs/Dice/ColorDieTest.cs @@ -1,12 +1,51 @@ -using System; +using Model.Dice.Faces; +using Model.Dice; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Drawing; +using Xunit; namespace Tests.Model_UTs.Dice { public class ColorDieTest { + public static IEnumerable Data_Uri() + { + yield return new object[] + { + new ColorFace(Color.FromName("Chocolate")), + new ColorFace(Color.FromName("Aqua")), + new ColorFace(Color.FromName("Beige")), + new ColorFace(Color.FromName("Black")), + new ColorFace(Color.FromName("BurlyWood")), + }; + } + + + [Theory] + [MemberData(nameof(Data_Uri))] + public void RndmFaceTest(ColorFace f1, ColorFace f2, ColorFace f3, ColorFace f4, ColorFace f5) + { + //Arrange + List listFaces = new() { + f1,f2,f3,f4,f5 + }; + ColorDie die = new( + listFaces[1], + listFaces[2], + listFaces[3], + listFaces[4] + ); + + + //Act + ColorFace actual = (ColorFace)die.GetRandomFace(); + + + + //Assert + Assert.Contains(listFaces, face => face == actual); + + + } } } diff --git a/Sources/Tests/Model_UTs/Dice/Faces/ColorFaceTest.cs b/Sources/Tests/Model_UTs/Dice/Faces/ColorFaceTest.cs index 5126ece..5e4933d 100644 --- a/Sources/Tests/Model_UTs/Dice/Faces/ColorFaceTest.cs +++ b/Sources/Tests/Model_UTs/Dice/Faces/ColorFaceTest.cs @@ -1,12 +1,70 @@ -using System; +using Model.Dice.Faces; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Drawing; +using Xunit; namespace Tests.Model_UTs.Dice.Faces { public class ColorFaceTest { + public static IEnumerable Data_Colors() + { + yield return new object[] + { + Color.FromName("Chocolate"), + Color.FromArgb(144, 255, 78, 240), + }; + yield return new object[] + { + Color.FromName("Chocolate"), + Color.FromArgb(144, 255, 78, 240), + }; + } + + + [Theory] + [MemberData(nameof(Data_Colors))] + public void ColorFaceValueTest(Color clrA, Color clrB) + { + + + //Arrage + ColorFace face1 = new(clrA); + ColorFace face2 = new(clrB); + + //Act + Color expected1 = clrA; + Color actual1 = face1.Value; + + Color expected2 = clrB; + Color actual2 = face2.Value; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } + + + [Theory] + [MemberData(nameof(Data_Colors))] + public void ColorFaceValueToStringTest(Color clrA, Color clrB) + { + + + //Arrage + ColorFace face1 = new(clrA); + ColorFace face2 = new(clrB); + + //Act + string expected1 = clrA.ToString(); + string actual1 = face1.StringValue; + + string expected2 = clrB.ToString(); + string actual2 = face2.StringValue; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } } } diff --git a/Sources/Tests/Model_UTs/Dice/Faces/ImageFaceTest.cs b/Sources/Tests/Model_UTs/Dice/Faces/ImageFaceTest.cs index 0117bb5..470b3be 100644 --- a/Sources/Tests/Model_UTs/Dice/Faces/ImageFaceTest.cs +++ b/Sources/Tests/Model_UTs/Dice/Faces/ImageFaceTest.cs @@ -1,12 +1,70 @@ -using System; +using Model.Dice.Faces; +using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using Xunit; namespace Tests.Model_UTs.Dice.Faces { public class ImageFaceTest { + public static IEnumerable Data_Colors() + { + yield return new object[] + { + new Uri("http://www.contoso.com/"), + new Uri("https://www.pedagojeux.fr/wp-content/uploads/2019/11/1280x720_LoL.jpg"), + }; + yield return new object[] + { + new Uri("https://www.lacremedugaming.fr/wp-content/uploads/creme-gaming/2022/02/media-13411.jpg"), + new Uri("https://i1.moyens.net/io/images/2022/01/1642321015_Mises-a-jour-de-VALORANT-en-melee-a-venir-dans.jpg"), + }; + } + + + [Theory] + [MemberData(nameof(Data_Colors))] + public void ImageFaceValueTest(Uri uriA, Uri uriB) + { + + + //Arrage + ImageFace face1 = new(uriA); + ImageFace face2 = new(uriB); + + //Act + Uri expected1 = uriA; + Uri actual1 = face1.Value; + + Uri expected2 = uriB; + Uri actual2 = face2.Value; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } + + + [Theory] + [MemberData(nameof(Data_Colors))] + public void ImageFaceValueToStringTest(Uri uriA, Uri uriB) + { + + + //Arrage + ImageFace face1 = new(uriA); + ImageFace face2 = new(uriB); + + //Act + string expected1 = uriA.ToString(); + string actual1 = face1.StringValue; + + string expected2 = uriB.ToString(); + string actual2 = face2.StringValue; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } } } diff --git a/Sources/Tests/Model_UTs/Dice/Faces/NumberFaceTest.cs b/Sources/Tests/Model_UTs/Dice/Faces/NumberFaceTest.cs index b3c1398..7029c2c 100644 --- a/Sources/Tests/Model_UTs/Dice/Faces/NumberFaceTest.cs +++ b/Sources/Tests/Model_UTs/Dice/Faces/NumberFaceTest.cs @@ -1,12 +1,51 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using Model.Dice.Faces; +using Xunit; namespace Tests.Model_UTs.Dice.Faces { public class NumberFaceTest { + [Fact] + public void NumberFaceValueTest() + { + + + //Arrage + NumberFace face1 = new NumberFace(3); + NumberFace face2 = new NumberFace(5); + + //Act + int expected1 = 3; + int actual1 = face1.Value; + + int expected2 = 5; + int actual2 = face2.Value; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } + + + [Fact] + public void NumberFaceValueToStringTest() + { + + + //Arrage + NumberFace face1 = new(3); + NumberFace face2 = new(5); + + //Act + string expected1 = 3.ToString(); + string actual1 = face1.StringValue; + + string expected2 = 5.ToString(); + string actual2 = face2.StringValue; + + //Assert + Assert.Equal(expected1, actual1); + Assert.Equal(expected2, actual2); + } } } diff --git a/Sources/Tests/Model_UTs/Dice/ImageDieTest.cs b/Sources/Tests/Model_UTs/Dice/ImageDieTest.cs index c24ab7a..2478828 100644 --- a/Sources/Tests/Model_UTs/Dice/ImageDieTest.cs +++ b/Sources/Tests/Model_UTs/Dice/ImageDieTest.cs @@ -1,12 +1,53 @@ -using System; +using Model.Dice.Faces; +using Model.Dice; +using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using Xunit; namespace Tests.Model_UTs.Dice { public class ImageDieTest { + + + public static IEnumerable Data_Uri() + { + yield return new object[] + { + new ImageFace(new Uri("https://nothing1/")), + new ImageFace(new Uri("https://nothing2/")), + new ImageFace(new Uri("https://nothing3/")), + new ImageFace(new Uri("https://nothing4/")), + new ImageFace(new Uri("https://nothing5/")), + }; + } + + + [Theory] + [MemberData(nameof(Data_Uri))] + public void RndmFaceTest(ImageFace f1, ImageFace f2, ImageFace f3, ImageFace f4, ImageFace f5) + { + //Arrange + List listFaces = new() { + f1,f2,f3,f4,f5 + }; + ImageDie die = new( + listFaces[1], + listFaces[2], + listFaces[3], + listFaces[4] + ); + + + //Act + ImageFace actual = (ImageFace)die.GetRandomFace(); + + + + //Assert + Assert.Contains(listFaces, face => face == actual); + + + } } } diff --git a/Sources/Tests/Model_UTs/Dice/NumberDieTest.cs b/Sources/Tests/Model_UTs/Dice/NumberDieTest.cs index ba48b1a..a79a067 100644 --- a/Sources/Tests/Model_UTs/Dice/NumberDieTest.cs +++ b/Sources/Tests/Model_UTs/Dice/NumberDieTest.cs @@ -1,5 +1,6 @@ using Model.Dice; using Model.Dice.Faces; +using System.Collections.Generic; using Xunit; namespace Tests.Model_UTs.Dice @@ -8,20 +9,33 @@ namespace Tests.Model_UTs.Dice { [Fact] - public void TestGetRandomFace() + public void RndmFaceTest() { - // Arrange - int val1 = 1, val2 = 2; - NumberDie die = new(new NumberFace(val1), new NumberFace(val2)); + //Arrange + List listFaces = new() { + new NumberFace(1), + new NumberFace(2), + new NumberFace(3), + new NumberFace(4), + new NumberFace(5), + }; + NumberDie die = new( + listFaces[1], + listFaces[2], + listFaces[3], + listFaces[4] + ); - // Act - Face thing = die.GetRandomFace(); + //Act + NumberFace actual = (NumberFace)die.GetRandomFace(); + + + + //Assert + Assert.Contains(listFaces, face => face == actual); - // Assert - Assert.IsType(thing); - Assert.True(thing.Value == val1 || thing.Value == val2); } } }