Interface IView
{
List<string> Names {get; set;}
}
public class Presenter
{
public List<string> GetNames(IView view)
{
return view.Names;
}
}
var mockView = MockRepository.GenerateMock<IView>();
var presenter = new Presenter();
var names = new List<string> {"Test", "Test1"};
mockView.Expect(v => v.Names).Return(names);
Assert.AreEqual(names, presenter.GetNames(mockView)) // Here presenter returns null which is incorrect behaviour in my case;
当我使用上面的代码返回名称的模拟列表时,它与预期不匹配,然后返回 null 并失败
感谢您的帮助
编辑:我将视图作为参数传递给演示者的 GetNames 方法。这里的问题是,当我从模拟属性返回列表对象时,它返回 null。但是,当我将属性数据类型更改为 string/int iepremitive 类型时,值会正确返回