|
|
@ -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<IQueryService<QueryDto>> _queryService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public QueryUnitTest()
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
_queryService = new Mock<IQueryService<QueryDto>>();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[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<QueryController>(), _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<QueryController>(), _queryService.Object);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var queryResult = queryController.ExecuteQuery("Select * from \"User\";", "LABASEDEDONNEES");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (queryResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
Assert.IsNotType<OkObjectResult>(queryResult);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private List<UserDto> GetUsersData()
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
List<UserDto> usersData = new List<UserDto>(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;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|