加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

写单元测试在ASP.NET Web API中使用User.Identity.Name的方法

发布时间:2020-12-15 19:09:12 所属栏目:asp.Net 来源:网络整理
导读:我使用ASP.NET Web API的单元测试编写测试用例。 现在我有一个操作,它调用我在服务层中定义的一些方法,其中我使用了下面的代码行。 string username = User.Identity.Name;// do something with username// return something 现在如何为此创建单元测试方法
我使用ASP.NET Web API的单元测试编写测试用例。

现在我有一个操作,它调用我在服务层中定义的一些方法,其中我使用了下面的代码行。

string username = User.Identity.Name;
// do something with username
// return something

现在如何为此创建单元测试方法,我得到空引用异常。我有点新写单元测试和东西。

并且我想使用单元测试这一点。

请帮助我。谢谢。

解决方法

下面一个只是一种方法:
public class FooController : ApiController {

    public string Get() {

        return User.Identity.Name;
    }
}

public class FooTest {

    [Fact]
    public void Foo() {

        var identity = new GenericIdentity("tugberk");
        Thread.CurrentPrincipal = new GenericPrincipal(identity,null);
        var controller = new FooController();

        Assert.Equal(controller.Get(),identity.Name);
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读