相关疑难解决方法(0)

Moq:回调无效.使用参数设置方法不能使用参数调用回调

我正在尝试使用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

17
推荐指数
1
解决办法
1万
查看次数

标签 统计

moq ×1