0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-06-30 02:31:08 +00:00
CleanArchitecture/CleanArchitecture.gRPC.Tests/Fixtures/UserTestsFixture.cs
2023-03-23 18:37:24 +01:00

56 lines
1.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using CleanArchitecture.Application.gRPC;
using CleanArchitecture.Domain.Entities;
using CleanArchitecture.Domain.Enums;
using CleanArchitecture.Domain.Interfaces.Repositories;
using MockQueryable.Moq;
using Moq;
namespace CleanArchitecture.gRPC.Tests.Fixtures;
public sealed class UserTestsFixture
{
public UserTestsFixture()
{
ExistingUsers = new List<User>
{
new(
Guid.NewGuid(),
"test@test.de",
"Test First Name",
"Test Last Name",
"Test Password",
UserRole.User),
new(
Guid.NewGuid(),
"email@Email.de",
"Email First Name",
"Email Last Name",
"Email Password",
UserRole.Admin),
new(
Guid.NewGuid(),
"user@user.de",
"User First Name",
"User Last Name",
"User Password",
UserRole.User)
};
var queryable = ExistingUsers.AsQueryable().BuildMock();
UserRepository
.Setup(repository => repository.GetAllNoTracking())
.Returns(queryable);
UsersApiImplementation = new UsersApiImplementation(UserRepository.Object);
}
private Mock<IUserRepository> UserRepository { get; } = new();
public UsersApiImplementation UsersApiImplementation { get; }
public IEnumerable<User> ExistingUsers { get; }
}