У меня есть AccountController с действием входа.MVC AccountController с IsAuthenticated false OWIN
Мы зарегистрировались пользователю в нашей службы приложений, как, что:
_signInManager.AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = userDto.RememberMe }, identity);
После этого я перенаправляет пользователя Home/Index.
В Home/проиндексирует User.IsAuthenticated является истинным
Но прежде чем сделать это переназначение, в AccountController, даже после вызова _signInManager.AuthenticationManager.SignIn (...) User.IsAuthenticated является ложным.
Что мы делаем неправильно?
Проблема заключается в том, что мне нужно модульного тестирования AccountController и хотите проверить, если после вызова _signInManager.AuthenticationManager.SignIn (...), пользователь действительно вошли в систему.
Большое спасибо за помочь
Daniel
EDIT:
После использования этого кода:
ClaimsPrincipal principal = new ClaimsPrincipal(identity);
System.Threading.Thread.CurrentPrincipal = principal;
HttpContext.Current.User = principal;
Хорошо работает, но запахи странные!
Это было мое предположение. Но в AccountController все еще нет перенаправления, и мне нужно проверить, действительно ли пользователь аутентифицирован. – DAG
Проверка подлинности на основе файлов cookie на основе запроса пользователей, и вы не можете ее протестировать без получения нового запроса от клиента. –
Вы можете проверить, был ли отправлен ответ заголовка Set-cookie в потоке ответов. –