如何为该代码块编写单元测试

时间:2018-08-02 12:30:06

标签: c#

public static LoginResult CreateLoginSuccessResponse(this PortalIdentity user)
    {
        return new LoginResult(
            true,
            string.Empty,
            user.Roles,
            false
        );
    }

public class PortalIdentity : IdentityUser
{
    public string Firstname { get; set; }

    public string Lastname { get; set; }
}

此代码块用于在用户成功登录时创建成功响应。我是质量检查人员,正在尝试学习如何编写单元测试。我不确定如何为“ this”关键字编写单元测试

1 个答案:

答案 0 :(得分:1)

this(至少在上述情况下)仅表示它是extension method

要对其进行测试,请new向上PortalIdentity,分配给变量(bob)并调用bob.CreateLoginSuccessResponse()

var bob = new PortalIdentity(you may need parameters here);
var result = bob.CreateLoginSuccessResponse();

如果对bob.CreateLoginSuccessResponse()的调用未编译,则扩展方法可能在其他名称空间中。根据{{​​3}},您需要:

  

在调用代码中,添加using指令以指定名称空间   包含扩展方法类。