Помогите создать модульный тест для заголовка ответа теста, в частности Cache-Control, при определении, было ли отключено кэширование или нет - PullRequest
3 голосов
/ 17 февраля 2010

Сценарий:

У меня есть базовый контроллер, который отключает кэширование в переопределении OnActionExecuting.

protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
    filterContext.HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
    filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
    filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
    filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache); //IE
    filterContext.HttpContext.Response.Cache.SetNoStore(); //FireFox 
}

Как создать модульный тест для проверки этого поведения?

1 Ответ

0 голосов
/ 28 февраля 2010

Попытка сделать то же самое. Лучшее, что у меня есть, это ...

    [TestCase]
    public void ResponseNotFromCache()
    {

            System.Net.WebRequest rq = System.Net.WebRequest.Create("testmethod");
            System.Net.HttpWebResponse rs = rq.GetResponse() as System.Net.HttpWebResponse;

            Assert.IsFalse(rs.IsFromCache);
    }

Должен быть лучший способ!

Обновление: Как проверить событие контроллера MVC

...