mirror of
https://github.com/alex289/CleanArchitecture.git
synced 2025-06-30 18:42:56 +00:00
46 lines
1.3 KiB
C#
46 lines
1.3 KiB
C#
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using CleanArchitecture.Application.Queries.Tenants.GetTenantById;
|
|
using CleanArchitecture.Application.Tests.Fixtures.Queries.Tenants;
|
|
using CleanArchitecture.Domain.Errors;
|
|
using Shouldly;
|
|
using Xunit;
|
|
|
|
namespace CleanArchitecture.Application.Tests.Queries.Tenants;
|
|
|
|
public sealed class GetTenantByIdQueryHandlerTests
|
|
{
|
|
private readonly GetTenantByIdTestFixture _fixture = new();
|
|
|
|
[Fact]
|
|
public async Task Should_Get_Existing_Tenant()
|
|
{
|
|
var tenant = _fixture.SetupTenant();
|
|
|
|
var result = await _fixture.QueryHandler.Handle(
|
|
new GetTenantByIdQuery(tenant.Id),
|
|
default);
|
|
|
|
_fixture.VerifyNoDomainNotification();
|
|
|
|
tenant.Id.ShouldBe(result!.Id);
|
|
tenant.Name.ShouldBe(result.Name);
|
|
tenant.Users.Count.ShouldBe(result.Users.Count());
|
|
}
|
|
|
|
[Fact]
|
|
public async Task Should_Not_Get_Deleted_Tenant()
|
|
{
|
|
var tenant = _fixture.SetupTenant(true);
|
|
|
|
var result = await _fixture.QueryHandler.Handle(
|
|
new GetTenantByIdQuery(tenant.Id),
|
|
default);
|
|
|
|
_fixture.VerifyExistingNotification(
|
|
nameof(GetTenantByIdQuery),
|
|
ErrorCodes.ObjectNotFound,
|
|
$"Tenant with id {tenant.Id} could not be found");
|
|
result.ShouldBeNull();
|
|
}
|
|
} |