【发布时间】:2012-07-20 07:39:00
【问题描述】:
假设我有以下实体:
public class User
{
public int Id { get; set; }
public string Username { get; set; }
public Guid UserGuid { get; set; }
public Guid ConfirmationGuid { get; set; }
}
还有如下接口方法:
void CreateUser(string username);
部分实现应该创建两个新的 GUID:一个用于UserGuid,另一个用于ConfirmationGuid。他们应该通过将值设置为 Guid.NewGuid() 来做到这一点。
我已经使用接口抽象了 Guid.NewGuid():
public interface IGuidService
{
Guid NewGuid();
}
所以当只需要一个新的 GUID 时,我可以轻松地模拟它。但我不确定如何从一个方法中模拟对同一方法的两个不同调用,以便它们返回不同的值。
【问题讨论】:
标签: c# unit-testing mocking tdd moq