【发布时间】:2015-09-18 16:16:05
【问题描述】:
我有 MyClass 类,它在构造函数中接收TheyClass 的实例。 MyClass 在 MyMethod 函数中使用实例的属性值,类似这样
public class MyClass
{
ITheirClass theirClass;
public MyClass( ITheirClass TheirClass)
{
theirClass =TheirClass;
}
public MyMethod ()
{
if (theirClass.TheirProperty) return;
}
}
我想为 MyClass 和 MyClass.MyMethod 函数创建一个单元测试。我创建了一个像这样的 Moq 对象
var MoqTheirClass = new Mock<ITheirClass>();
MoqTheirClass.SetupGet(p => p.TheirProperty).Returns(false);
但是,MoqTheirClass 对象不能转换为 ITheirClass 类型,我无法将它传递给 MyClass 构造函数。
问题是如何使用预设的TheyClass.TheirProperty 值创建 MoqTheyClass 对象并将其传递给 MyClass 构造函数?
还有其他方法可以对 MyClass.MyMethod 函数进行单元测试吗?
【问题讨论】:
标签: c# class unit-testing constructor moq