Мок заполнение запроса и ответа у контроллера
Добавь куки в httpResponse и httpRequest
Не знаю насколько это правильно, но делаю себе моки такие
#region Mock
// Not working - IsAjaxRequest() is static extension method and cannot be mocked
// request.Setup(x => x.IsAjaxRequest()).Returns(true /* or false */);
// use this
var httpResponse = new Mock<HttpResponseBase>();
httpResponse.SetupGet(x => x.Headers).Returns(
new System.Net.WebHeaderCollection {
{"X-Requested-With", "XMLHttpRequest"}
});
var httpRequest = new Mock<HttpRequestBase>();
httpRequest.SetupGet(x => x.Headers).Returns(
new System.Net.WebHeaderCollection {
{"X-Requested-With", "XMLHttpRequest"}
});
httpRequest.SetupGet(x => x.IsAuthenticated).Returns(false);
httpRequest.SetupGet(x => x.ServerVariables).Returns(new NameValueCollection());
httpRequest.SetupGet(x => x.UserHostAddress).Returns("192.168.1.1");
var context = new Mock<HttpContextBase>();
context.SetupGet(x => x.Request).Returns(httpRequest.Object);
context.SetupGet(x => x.Response).Returns(httpResponse.Object);
context.SetupGet(x => x.User).Returns(new CustomPrincipal(""));
controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller);
#endregion