如何检查是否在Mock对象上调用了特定的属性设置器?
本文关键字:调用 属性 设置 对象 何检查 检查 Mock 是否 | 更新日期: 2023-09-27 18:11:09
对于下面给定的模拟对象,我如何检查WashCar(ICar car)方法是否正在设置TiresWashed属性?
public interface ICar
{
string Model {get;set;}
bool TiresWashed {get; set;}
bool WindowsWashed {get; set; }
}
[TestMethod]
public vouid MyUnitTest()
{
ICar mockCar = MockRepository.GenerateMock<ICar>();
CarServiceUtility.WashCar(mockCar);
//Assert if PrepareCar method is called: (this is why I had mock)
mockCar.AssertWasCalled(c=>c.PrepareCar());
//TODO
// Assert if mockCar.TiresWashed is set with any value
}
From Here:
mock.AssertWasCalled(x => x.Name ="Bob");
或
mock.AssertWasCalled(x => x.Name =Arg.Is("Bob"));
或
mock.AssertWasCalled(x => x.Name =Arg<string>.Is.NotNull);
我如何在the_ajp的链接后做到这一点:
mockCar.AssertWasCalled(car => { var dummy = car.TiresWashed; }, options
=> options.SetPropertyWithArgument(Arg<object>.Is.Anything));