我的问题如下:我如何测试是否在模拟对象上调用了ICommand的Execute方法?
我正在使用以下代码:
var mockOperandVM = new Mock<UCOperandViewModel> ();
mockOperandVM.Setup (x => x.EditCommand).Returns (new RelayCommand<String> (x => { }));
var toolbarTrayVM = new UCToolbarTrayViewModel (mockComponentsLocator.Object);
toolbarTrayVM.EditCommand.Execute ("Edit");
mockOperandVM.Verify (x => x.EditCommand.Execute ("Edit"), "EditCommand with 'Edit' parameter was not executed on the mock object.");
我必须在这里指定我在UCOperandViewModel上也有一个EditCommand ICommand,我想测试当我在toolbarTrayVM上调用EditCommand.Execute时是否执行该ICommand。
我在调用Verify时遇到ArgumentException。它说“在模拟类型上找不到给定参数的匹配构造函数。”。
提前致谢。