public async Task GetToken_ItIsOkResult() { var provider = CreateServiceProvider(); var controller = new TokensController(provider.GetService <IQueryFactory>()); var mockOfGetCurrentUserStrategy = provider.GetService <Mock <IGetCurrentUserStrategy> >(); var userToReturn = new UserDto { Login = TestLogin, Roles = new[] { TestRole } }; mockOfGetCurrentUserStrategy.Setup(mock => mock.Get()).Returns(userToReturn); var result = await controller.GetAsync(); Assert.IsAssignableFrom <OkObjectResult>(result); }
public async Task GetToken_RoleFromTokenIsEqualFromCurrentUser() { var provider = CreateServiceProvider(); var controller = new TokensController(provider.GetService <IQueryFactory>()); var mockOfGetCurrentUserStrategy = provider.GetService <Mock <IGetCurrentUserStrategy> >(); var userToReturn = new UserDto { Login = TestLogin, Roles = new[] { TestRole } }; mockOfGetCurrentUserStrategy.Setup(mock => mock.Get()).Returns(userToReturn); var result = await controller.GetAsync(); var token = GetTokenFromResult(result); Assert.NotNull(token); Assert.Contains(token.Claims, claim => claim.Type == ClaimTypes.Role && claim.Value == userToReturn.Roles.Single()); }