Я очень, очень плохо знаком с модульным тестированием и пытаюсь написать тест для довольно простого метода:
public class myClass : RequireHttpsAttribute
{
public override void OnAuthorization(AuthoizationContext filterContext)
{
var request = filterContext.HttpContext.Request;
var header = Convert.ToBoolean(request.Headers["Special-Header-Name"]);
if (!(header || request.IsSecureConnection))
{
HandleNonHttpsRequest(filterContext);
}
}
}
Этот метод, который наследуется от RequireHttpsAttribute
, проверяет наличие определенного заголовкаприсутствует на странице, если она отсутствует или неверна, а страница не защищена, то она будет вызывать HandleNonHttpsRequest
, в противном случае она ничего не делает.
Мы используем Moq и Nunit для тестирования.Я нашел некоторые ресурсы, которые помогут создать fakeHttpContext с Moq, но, честно говоря, я не уверен, как его использовать или куда идти в рамках моих модульных тестов, чтобы убедиться, что поддельные HttpContexts вызывают или не вызывают метод HandleNonHttpsRequest
.
Я очень ценю любые рекомендации по этому вопросу.