Unit testing 断言使用方法中更改的对象调用了方法
这就是我要测试的方法:Unit testing 断言使用方法中更改的对象调用了方法,unit-testing,mocking,rhino-mocks,Unit Testing,Mocking,Rhino Mocks,这就是我要测试的方法: public void Set1(ViewModelA viewModelA) { var viewModelB = new ViewModelB { FirstName = viewModelA.FirstName, LastName = viewModelB.LastName } service.Set2(viewModelB); } 如何断言传递给service.Set2的viewModelB实例具有从viewMod
public void Set1(ViewModelA viewModelA)
{
var viewModelB = new ViewModelB
{
FirstName = viewModelA.FirstName,
LastName = viewModelB.LastName
}
service.Set2(viewModelB);
}
如何断言传递给service.Set2的viewModelB实例具有从viewModelA映射的属性值,并且Set2将viewModelB作为参数?假设您模拟了
服务
实例,您应该能够执行以下操作:
service.AssertWasCalled(s => s.Set2(
Arg<ViewModelB>.Matches(b =>
b.FirstName == "TheFirstName" && b.LastName == "TheLastName"
)
));
service.assertwastcalled(s=>s.Set2(
参数匹配(b=>
b、 FirstName==“TheFirstName”和&b.LastName==“TheLastName”
)
));
本质上,您所做的是断言调用了Set2
方法,并为其提供了一个名和姓与您期望的相符的ViewModelB
实例