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”关键字编写单元测试
答案 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指令以指定名称空间 包含扩展方法类。