使用 Moq 和本机 VS 测试框架。我正在尝试测试传入值的递归函数:
public bool AuthenticateByDomain(string domainName, string password, string username, string email)
{
用于查找实体:
// look for an existent domain name.
var matchFound = this.FindDomainPasswordMatch(domainName, password);
如果找到,则查找存在的UserName(帐户已存在):
if (matchFound)
{
var account = this.GetByEmail(null, email);
if (account != null)
{
如果未找到,请根据提供的电子邮件和用户名创建帐户:
var uAccount = this.CreateAccount(username, password, email, domainName);
然后递归地调用自身,其中(可能)GetByEmail()
满足调用并调用身份验证分支。
我发现了一些 Moq 与存储库交互的示例,但无法确切了解如何解决我的特定问题 - 测试存储库是否已更新并且递归是否成功。我能够统一获取顶层中的每个方法 - 我是否声明足够好并继续前进?这是一个持久性测试吗?