From fd18a3e0995473c5ba111cda30d51316245bfc04 Mon Sep 17 00:00:00 2001 From: masapountz Date: Mon, 1 Apr 2024 19:15:00 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9but=20test=20Controller=20et=20suppressi?= =?UTF-8?q?on=20des=20test=20service=20car=20impossible?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- API_SQLuedo/TestAPI/QueryUnitTest.cs | 92 +++++++++++++++++++ .../ServiceAPI/UnitTestQueryDataServiceApi.cs | 50 ---------- 2 files changed, 92 insertions(+), 50 deletions(-) create mode 100644 API_SQLuedo/TestAPI/QueryUnitTest.cs delete mode 100644 API_SQLuedo/TestAPI/ServiceAPI/UnitTestQueryDataServiceApi.cs diff --git a/API_SQLuedo/TestAPI/QueryUnitTest.cs b/API_SQLuedo/TestAPI/QueryUnitTest.cs new file mode 100644 index 0000000..4c149e6 --- /dev/null +++ b/API_SQLuedo/TestAPI/QueryUnitTest.cs @@ -0,0 +1,92 @@ +using API.Controllers; +using Dto; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging.Abstractions; +using Moq; +using Shared; +using TestAPI.Extensions; + +namespace TestAPI; + +public class QueryUnitTest +{ + private readonly Mock> _queryService; + + public QueryUnitTest() + { + _queryService = new Mock>(); + } + + [Fact] + public void Select_Users_Success() + { + var userList = GetUsersData(); + _queryService.Setup(x => x.ExecuteQuery("Select * from \"User\";","SQLuedo")) + .Returns(new QueryDto{Result = userList.ToString()}); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.ExecuteQuery("Select * from \"User\";", "SQLuedo"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + + [Fact] + public void Select_Users_Failed_Cause_Database_Doesnt_Exists() + { + var userList = GetUsersData(); + _queryService.Setup(x => x.ExecuteQuery("Select * from \"User\";", "SQLuedo")) + .Returns(new QueryDto { Result = userList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.ExecuteQuery("Select * from \"User\";", "LABASEDEDONNEES"); + + if (queryResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204) + + { + Assert.IsNotType(queryResult); + } + } + + + private List GetUsersData() + { + List usersData = new List(4) + { + new( + 0, + "Useruser", + "motdepasse", + "adressemail@gmail.com", + true + ), + new + ( + 1, + "Leuser", + "motdepasse", + "deuxadresse@gmail.com", + false + ), + new + ( + 2, + "gygyggyg", + "ennodlavehc", + "thirdadress@gmail.com", + false + ), + new + ( + "ferferf", + "h_nh_78", + "fourthadress@gmail.com", + false + ), + }; + return usersData; + } +} \ No newline at end of file diff --git a/API_SQLuedo/TestAPI/ServiceAPI/UnitTestQueryDataServiceApi.cs b/API_SQLuedo/TestAPI/ServiceAPI/UnitTestQueryDataServiceApi.cs deleted file mode 100644 index 1f82a44..0000000 --- a/API_SQLuedo/TestAPI/ServiceAPI/UnitTestQueryDataServiceApi.cs +++ /dev/null @@ -1,50 +0,0 @@ -using DbContextLib; -using DbDataManager.Service; -using Entities; -using Microsoft.Data.Sqlite; -using Microsoft.EntityFrameworkCore; -using Model.OrderCriteria; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using API.Service; -using Model; -using Newtonsoft.Json; -using StubbedContextLib; - -namespace TestAPI.ServiceAPI -{ - public class UnitTestQueryDataServiceApi - { - private readonly StubbedContext _dbContext; - private readonly QueryDataServiceApi _queryService; - - public UnitTestQueryDataServiceApi() - { - var connection = new SqliteConnection("DataSource=:memory:"); - connection.Open(); - var options = new DbContextOptionsBuilder() - .UseSqlite(connection) - .Options; - - _dbContext = new StubbedContext(options); - _queryService = new QueryDataServiceApi(); - - } - - [Fact] - public void ExecuteQuery_Success_When_Select_Users() - { - - var jsonResult = _queryService.ExecuteQuery("Select * from \"User\";", "SQLuedo"); - var result = JsonConvert.DeserializeObject(jsonResult.Result); - - Assert.NotNull(result); - Assert.Equal(11, result.Count()); - - } - - } -}