我正在尝试使用moq编写单元测试.这是我的单元测试代码
var sender = new Mock<ICommandSender>();
sender.Setup(m => m.SendCommand(It.IsAny<MyCommand>(), false))
.Callback(delegate(object o)
{
var msg = o as MyCommand;
Assert.AreEqual(cmd.Id, msg.Id);
Assert.AreEqual(cmd.Name, msg.Name);
})
.Verifiable();
Run Code Online (Sandbox Code Playgroud)
SendCommand接受一个对象和可选的布尔参数.而MyCommand来自ICommand.
void SendCommand(ICommand commands, bool idFromContent = false);
Run Code Online (Sandbox Code Playgroud)
测试运行时,我看到错误
System.ArgumentException : Invalid callback. Setup on method with parameters (ICommand,Boolean) cannot invoke callback with parameters (Object).
Run Code Online (Sandbox Code Playgroud)
我想检查邮件的内容是否是我发送的内容.我搜索了论坛,发现了这个问题的几个不同变体,但那些没有帮助.任何帮助是极大的赞赏.
moq ×1