You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.5 KiB

2 years ago
  1. using System.Threading.Tasks;
  2. using Shouldly;
  3. using Xunit;
  4. using BCS.BMC.Sessions;
  5. namespace BCS.BMC.Tests.Sessions
  6. {
  7. public class SessionAppService_Tests : BMCTestBase
  8. {
  9. private readonly ISessionAppService _sessionAppService;
  10. public SessionAppService_Tests()
  11. {
  12. _sessionAppService = Resolve<ISessionAppService>();
  13. }
  14. [MultiTenantFact]
  15. public async Task Should_Get_Current_User_When_Logged_In_As_Host()
  16. {
  17. // Arrange
  18. LoginAsHostAdmin();
  19. // Act
  20. var output = await _sessionAppService.GetCurrentLoginInformations();
  21. // Assert
  22. var currentUser = await GetCurrentUserAsync();
  23. output.User.ShouldNotBe(null);
  24. output.User.Name.ShouldBe(currentUser.Name);
  25. output.User.Surname.ShouldBe(currentUser.Surname);
  26. output.Tenant.ShouldBe(null);
  27. }
  28. [Fact]
  29. public async Task Should_Get_Current_User_And_Tenant_When_Logged_In_As_Tenant()
  30. {
  31. // Act
  32. var output = await _sessionAppService.GetCurrentLoginInformations();
  33. // Assert
  34. var currentUser = await GetCurrentUserAsync();
  35. var currentTenant = await GetCurrentTenantAsync();
  36. output.User.ShouldNotBe(null);
  37. output.User.Name.ShouldBe(currentUser.Name);
  38. output.Tenant.ShouldNotBe(null);
  39. output.Tenant.Name.ShouldBe(currentTenant.Name);
  40. }
  41. }
  42. }