SessionAppService_Tests.cs 1.4 KB

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