0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-06-29 18:21:08 +00:00
CleanArchitecture/CleanArchitecture.IntegrationTests/gRPC/GetUsersByIdsTests.cs

36 lines
1.0 KiB
C#

using System.Linq;
using System.Threading.Tasks;
using CleanArchitecture.IntegrationTests.Fixtures.gRPC;
using CleanArchitecture.Proto.Users;
using Shouldly;
namespace CleanArchitecture.IntegrationTests.gRPC;
public sealed class GetUsersByIdsTests
{
private readonly GetUsersByIdsTestFixture _fixture = new();
[OneTimeSetUp]
public async Task Setup() => await _fixture.SeedTestData();
[Test]
public async Task Should_Get_Users_By_Ids()
{
var client = new UsersApi.UsersApiClient(_fixture.GrpcChannel);
var request = new GetUsersByIdsRequest();
request.Ids.Add(_fixture.CreatedUserId.ToString());
var response = await client.GetByIdsAsync(request);
response.Users.ShouldHaveSingleItem();
var user = response.Users.First();
var createdUser = _fixture.CreateUser();
user.Email.ShouldBe(createdUser.Email);
user.FirstName.ShouldBe(createdUser.FirstName);
user.LastName.ShouldBe(createdUser.LastName);
user.DeletedAt.ShouldNotBeNullOrWhiteSpace();
}
}