小编Dre*_*edj的帖子

如何进行单元测试以测试检查请求标头的方法?

我对单元测试非常非常新,我正在尝试为一个非常简单的方法编写测试:

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);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这个方法继承自RequireHttpsAttribute,检查页面是否存在某个标题,如果它丢失或为假,并且页面不安全,那么它将调用HandleNonHttpsRequest,否则它什么都不做.

我们正在使用Moq和Nunit进行测试.我找到了一些资源来帮助用Moq构建一个fakeHttpContext,但说实话,我不确定如何使用它或在我的单元测试中去哪里以确保假的HttpContexts是或不是导致该HandleNonHttpsRequest方法调用.

我真的很感激这个问题的任何指导.

c# asp.net-mvc nunit unit-testing moq

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

moq ×1

nunit ×1

unit-testing ×1