diff --git a/API_SQLuedo/TestAPI/QueryUnitTest.cs b/API_SQLuedo/TestAPI/QueryUnitTest.cs index 4c149e6..94f4b03 100644 --- a/API_SQLuedo/TestAPI/QueryUnitTest.cs +++ b/API_SQLuedo/TestAPI/QueryUnitTest.cs @@ -1,4 +1,5 @@ using API.Controllers; +using Castle.Components.DictionaryAdapter.Xml; using Dto; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging.Abstractions; @@ -51,6 +52,92 @@ public class QueryUnitTest } } + [Fact] + public void Get_Tables_Success() + { + var tablesList = GetTables(); + _queryService.Setup(x => x.GetTables("SQLuedo")) + .Returns(new QueryDto { Result = tablesList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.GetTables("SQLuedo"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + + [Fact] + public void Get_Tables_Failed_Cause_Database_Doesnt_Exist() + { + var tablesList = GetTables(); + _queryService.Setup(x => x.GetTables("SQLuedo")) + .Returns(new QueryDto { Result = tablesList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.GetTables("LABSEEEEEEEEEEEEEEEEEEEE"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + + + [Fact] + public void Get_Columns_Success() + { + var tablesList = GetColumns(); + _queryService.Setup(x => x.GetColumns("SQLuedo","User")) + .Returns(new QueryDto { Result = tablesList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.GetColumns("SQLuedo","User"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + + [Fact] + public void Get_Columns_Failed_Cause_Database_Doesnt_Exist() + { + var tablesList = GetColumns(); + _queryService.Setup(x => x.GetColumns("SQLuedo", "User")) + .Returns(new QueryDto { Result = tablesList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.GetColumns("UDHUE", "User"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + + [Fact] + public void Get_Columns_Failed_Cause_Table_Doesnt_Exist() + { + var tablesList = GetColumns(); + _queryService.Setup(x => x.GetColumns("SQLuedo", "User")) + .Returns(new QueryDto { Result = tablesList.ToString() }); + var queryController = new QueryController(new NullLogger(), _queryService.Object); + + var queryResult = queryController.GetColumns("SQLuedo", "GEGEIU"); + + if (queryResult is OkObjectResult okObjectResult) + { + + Assert.NotNull(okObjectResult); + } + } + private List GetUsersData() { @@ -89,4 +176,31 @@ public class QueryUnitTest }; return usersData; } + + + private List GetColumns() + { + List columns = new List(4) + { + "Id", + "Name", + "Password", + "IsAdmin" + }; + return columns; + } + + + + private List GetTables() + { + List columns = new List(4) + { + "User", + "Solution", + "Inquiry", + "Success" + }; + return columns; + } } \ No newline at end of file