public void TestPasswordExpiryCalculator(bool passwordExpired, int remindPasswordExpiryInDays, TimeSpan?maxPasswordAge, int expectedDays) { //Arrange var user = new ApplicationUser { LastPasswordChangedDate = DateTime.UtcNow.AddDays(-20), PasswordExpired = passwordExpired }; var userOptionsExtended = new UserOptionsExtended { RemindPasswordExpiryInDays = remindPasswordExpiryInDays, MaxPasswordAge = maxPasswordAge }; //Act var daysTillPasswordExpiry = PasswordExpiryHelper.ContDaysTillPasswordExpiry(user, userOptionsExtended); //Assert Assert.Equal(expectedDays, daysTillPasswordExpiry); }
public async Task <ActionResult <UserDetail> > GetCurrentUser() { var user = await _userManager.FindByNameAsync(User.Identity.Name); if (user == null) { return(NotFound()); } var result = new UserDetail { Id = user.Id, isAdministrator = user.IsAdministrator, UserName = user.UserName, PasswordExpired = user.PasswordExpired, DaysTillPasswordExpiry = PasswordExpiryHelper.ContDaysTillPasswordExpiry(user, _userOptionsExtended), Permissions = user.Roles.SelectMany(x => x.Permissions).Select(x => x.Name).Distinct().ToArray() }; return(Ok(result)); }