public void WhenSettingAuthenticationCookieFromTicket_ThenAddsToResponseCookie() { var cookies = new HttpCookieCollection(); var formsAuth = new DefaultFormsAuthentication(); var context = MvcMockHelpers.FakeHttpContext(); var responseMock = Mock.Get(context.Response); responseMock.Setup(r => r.Cookies).Returns(cookies); formsAuth.SetAuthCookie(context, new FormsAuthenticationTicket("TestName", false, 55)); Assert.NotNull(cookies[FormsAuthentication.FormsCookieName]); Assert.Equal("TestName", FormsAuthentication.Decrypt(cookies[FormsAuthentication.FormsCookieName].Value).Name); }
public void WhenSettingAuthenticationCookieFromTicket_ThenSetsExpiryFromFormsAuthenticationTimeoutValue() { var cookies = new HttpCookieCollection(); var formsAuth = new DefaultFormsAuthentication(); var context = MvcMockHelpers.FakeHttpContext(); var responseMock = Mock.Get(context.Response); responseMock.Setup(r => r.Cookies).Returns(cookies); formsAuth.SetAuthCookie(context, new FormsAuthenticationTicket("TestName", false, 55)); var cookie = cookies[FormsAuthentication.FormsCookieName]; var now = DateTime.Now; var formsTimeout = FormsAuthentication.Timeout; // assumes test can run +/- 1 minute Assert.True(cookie.Expires >= now.AddMinutes(formsTimeout.Minutes - 1)); Assert.True(cookie.Expires <= now.AddMinutes(formsTimeout.Minutes + 1)); }