You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
API_SQLuedo/API_SQLuedo/TestAPI/ServiceAPI/UnitTestQueryDataServiceApi.cs

51 lines
1.3 KiB

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<UserDbContext>()
.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<User[]>(jsonResult.Result);
Assert.NotNull(result);
Assert.Equal(11, result.Count());
}
}
}