BMC/BCS.BMC/test/BCS.BMC.Tests/Sessions/SessionAppService_Tests.cs

53 lines
1.5 KiB
C#
Raw Permalink Normal View History

2022-10-10 20:44:01 +05:30
using System.Threading.Tasks;
using Shouldly;
using Xunit;
using BCS.BMC.Sessions;
namespace BCS.BMC.Tests.Sessions
{
public class SessionAppService_Tests : BMCTestBase
{
private readonly ISessionAppService _sessionAppService;
public SessionAppService_Tests()
{
_sessionAppService = Resolve<ISessionAppService>();
}
[MultiTenantFact]
public async Task Should_Get_Current_User_When_Logged_In_As_Host()
{
// Arrange
LoginAsHostAdmin();
// Act
var output = await _sessionAppService.GetCurrentLoginInformations();
// Assert
var currentUser = await GetCurrentUserAsync();
output.User.ShouldNotBe(null);
output.User.Name.ShouldBe(currentUser.Name);
output.User.Surname.ShouldBe(currentUser.Surname);
output.Tenant.ShouldBe(null);
}
[Fact]
public async Task Should_Get_Current_User_And_Tenant_When_Logged_In_As_Tenant()
{
// Act
var output = await _sessionAppService.GetCurrentLoginInformations();
// Assert
var currentUser = await GetCurrentUserAsync();
var currentTenant = await GetCurrentTenantAsync();
output.User.ShouldNotBe(null);
output.User.Name.ShouldBe(currentUser.Name);
output.Tenant.ShouldNotBe(null);
output.Tenant.Name.ShouldBe(currentTenant.Name);
}
}
}