作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在试用最小起订量,但我陷入了一个非常基本的示例。我想模拟一个非常简单的接口(interface) IInput:
namespace Example
{
public interface IInput
{
int SomeProperty { get; set; }
}
}
这似乎是一项非常容易的工作。但是,当我尝试在以下测试代码中模拟它时出现编译错误:
using Moq;
using NUnit.Framework;
namespace FirstEniro._Test
{
[TestFixture]
class TestFirstClass
{
[Test]
public void TestConstructionOk()
{
var mock = new Mock<IInput>();
mock.Setup(r => r.SomeProperty).Returns(3);
var x = new FirstClass(mock);
Assert.That(x, Is.EqualTo(3));
}
}
}
编译器说“无法从 Moq.Mock<Example.IInput>
转换为 <Example.IInput>
。我看不出我做错了什么。请帮助我
最佳答案
使用 mock 的 Object
属性检索模拟对象的实例。
var x = new FirstClass(mock.Object);
在 Moq 框架中,Mock
不是您正在模拟的实例(就像在 Rhino Mocks 中一样)。
关于c# - 真正基本的最小起订量示例失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13026340/
我是一名优秀的程序员,十分优秀!