diff --git a/API_SQLuedo/TestAPI/InquiryUnitTest.cs b/API_SQLuedo/TestAPI/InquiryUnitTest.cs index f5b3285..2a5f72b 100644 --- a/API_SQLuedo/TestAPI/InquiryUnitTest.cs +++ b/API_SQLuedo/TestAPI/InquiryUnitTest.cs @@ -9,6 +9,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using API.Controllers; +using Microsoft.Extensions.Logging; using TestAPI.Extensions; namespace TestAPI @@ -68,12 +69,99 @@ namespace TestAPI + [Fact] + public void GetInquiryIdSuccess() + { + var inquiryList = GetInquiriesData(); + inquiryService.Setup(x => x.GetInquiryById(1)) + .Returns(inquiryList[1]); + var InquiriesController = new InquiriesController(inquiryService.Object, new NullLogger() ); + + var inquiryResult = InquiriesController.GetInquiryById(1); + if (inquiryResult is OkObjectResult okObjectResult) + { + InquiryDTO valeur = okObjectResult.Value as InquiryDTO; + + Assert.NotNull(valeur); + Assert.Equal("titre 2", valeur.Title); + Assert.Equal("Description", valeur.Description); + Assert.True(valeur.IsUser); + Assert.Equal(valeur.GetHashCode(), inquiryList[1].GetHashCode()); + Assert.True(valeur.Equals(inquiryList[1])); + Assert.False(valeur.Equals(new object())); + Assert.IsType(valeur); + Assert.Contains(valeur, inquiryList); + } + + } + + [Fact] + public void GetInquiryIdFail() + { + var inquiryList = GetInquiriesData(); + inquiryService.Setup(x => x.GetInquiryById(1)) + .Returns(inquiryList[1]); + var InquiriesController = new InquiriesController(inquiryService.Object,new NullLogger()); + + var inquiryResult = InquiriesController.GetInquiryById(100); + if (inquiryResult is NotFoundObjectResult NFObjectResult) + { + var valeur = NFObjectResult.Value; + + Assert.NotNull(valeur); + Assert.IsNotType(valeur); + Assert.DoesNotContain(valeur, inquiryList); + } + + } + + + + [Fact] + public void GetInquiryTitleSuccess() + { + var inquiryList = GetInquiriesData(); + inquiryService.Setup(x => x.GetInquiryByTitle("ZUDZU")) + .Returns(inquiryList[2]); + var InquiriesController = new InquiriesController(inquiryService.Object,new NullLogger()); + + var userResult = InquiriesController.GetInquiryByTitle("ZUDZU"); + if (userResult is OkObjectResult okObjectResult) + { + InquiryDTO valeur = okObjectResult.Value as InquiryDTO; + + Assert.NotNull(valeur); + Assert.IsType(valeur); + Assert.Contains(valeur, inquiryList); + Assert.Equal("ZUDZU", valeur.Title); + Assert.Equal("OUHHHH", valeur.Description); + Assert.Equal(2, valeur.Id); + Assert.False(valeur.IsUser); + } + } + [Fact] + public void GetInquiryTitleFail() + { + var inquiryList = GetInquiriesData(); + inquiryService.Setup(x => x.GetInquiryByTitle("ZUDZU")) + .Returns(inquiryList[2]); + var InquiriesController = new InquiriesController(inquiryService.Object, new NullLogger()); + var userResult = InquiriesController.GetInquiryByTitle("GYIIieihhh"); + if (userResult is NotFoundObjectResult NFObjectResult) + { + var valeur = NFObjectResult.Value; + Assert.NotNull(valeur); + Assert.IsNotType(valeur); + Assert.DoesNotContain(valeur, inquiryList); + Assert.False(inquiryList == valeur); + } + } @@ -90,7 +178,7 @@ namespace TestAPI { new (0,"titre 1","La desc",false), new (1,"titre 2","Description",true), - new (2,"ZUDZU ","OUHHHH",false), + new (2,"ZUDZU","OUHHHH",false), new ("titre premium","Ascendant",true), }; return inquiriesData;