Yuna/Yuna.Tests/Repositories/DeviceRepositoryTests.cs

84 lines
2.3 KiB
C#

using Yuna.Website.Server.Infrastructure;
using Yuna.Website.Server.Model;
using Yuna.Website.Server.Storage;
using Yuna.Website.Server.Storage.Repositories.Device;
namespace Yuna.Tests.Repositories
{
public class DeviceRepositoriesTests
{
[Fact]
public async Task Create_Creates_Device()
{
// Arrange
Settings.Init();
var _context = new DapperContext(true);
var repo = new DeviceRepository(_context);
// Act
Device device = new Device
{
Name = "Test Device",
Description = "Test Description",
DeviceUrl = "Test Url",
UserId = 1
};
var result = await repo.Create(device);
// Assert
Assert.NotNull(result);
Assert.Equal(result.Name, device.Name);
Assert.Equal(result.Description, device.Description);
Assert.Equal(result.DeviceUrl, device.DeviceUrl);
Assert.Equal(result.UserId, device.UserId);
}
[Fact]
public async Task GetById_Gets_DeviceWithId()
{
// Arrange
Settings.Init();
var _context = new DapperContext(true);
var repo = new DeviceRepository(_context);
// Act
var result = await repo.GetById(1);
// Assert
Assert.NotNull(result);
Assert.Equal(1, result.Id);
}
[Fact]
public async Task GetList_Gets_List()
{
// Arrange
Settings.Init();
var _context = new DapperContext(true);
var repo = new DeviceRepository(_context);
// Act
var result = await repo.GetList();
// Assert
Assert.NotNull(result);
Assert.NotEmpty(result);
}
[Fact]
public async Task GetListForUser_GetsListForUser()
{
// Arrange
Settings.Init();
var _context = new DapperContext(true);
var repo = new DeviceRepository(_context);
//Act
var result = await repo.GetList(1);
//Assert
Assert.NotNull(result);
Assert.True(result.All(x => x.UserId == 1));
}
}
}