Was ist im HttpContext erforderlich, damit FormsAuthentication.SignOut () ausgeführt werden kann?
Ich versuche, einen Komponententest für unsere Abmeldemethode zu schreiben. Unter anderem ist esFormsAuthentication.SignOut()
. Es wirft jedoch einSystem.NullReferenceException
.
Ich habe ein Mock erstellt.HttpContext
(mit Moq), aber es fehlt offensichtlich etwas.
Mein Scheinkontext enthält:
Eine verspotteteHttpRequestBase
aufRequest
Eine verspotteteHttpResponseBase
aufResponse
Mit einerHttpCookieCollection
aufRequest.Cookies
und ein anderer aufResponse.Cookies
Eine verspotteteIPrincipal
aufUser
Mir ist bewusst, dass ich die Verpackungsroute gehen und eine leere injizieren könnteFormsAuth
Wrapper-Objekt an seiner Stelle, aber ich möchte wirklich die 3 zusätzlichen Dateien vermeiden, nur um eine Codezeile zu reparieren. Das und ich bin immer noch neugierig auf eine Antwort
Also meine Frage ist "Was wird in der benötigtHttpContext
erlaubenFormsAuthentication.SignOut() to execute.
"