Я выполняю модульное тестирование моего метода контроллера для получения информации из объекта ClaimsPrincipal, но Current.FindFirst()
ничего не возвращает, кто-нибудь может помочь?Благодарю.(написано на VB и C # тоже приемлемо):
Public Class TestController
Public Function GetEmail() As String
Return ClaimsPrincipal.Current.FindFirst(ClaimTypes.Name).Value
End Function
End Class
<TestMethod()>
Public Sub Test()
//Arrange
Dim fackClaimPrinciple = New Mock(Of ClaimsPrincipal)()
Dim claims = New List(Of Claim)() From {New Claim(ClaimTypes.Name, "user@hotmail.com")}
fackClaimPrinciple.Setup(Function(e) e.Claims).Returns(claims)
Thread.CurrentPrincipal = fackClaimPrinciple.[Object]
// Act
Dim result = TestController.GetEmail()
'... ClaimsPrincipal.Current.FindFirst(ClaimTypes.Name).Value Returns nothing??
End Sub