我试图嘲弄这个名单嘲笑私人只读的IList
private readonly IList<MyClass> myList = new List<MyClass>();
使用这个(如图here):
IList<MyClass> mockList = Builder<MyClass>.CreateListOfSize(5).Build();
mockObj.SetupGet<IEnumerable<MyClass>>(o => o.myList).Returns(stakeHoldersList);
但是在运行时,我得到InvalidCastException:
Unable to cast object of type 'System.Collections.Generic.List`1[MyClass]' to
type 'System.Collections.ObjectModel.ReadOnlyCollection`1[MyClass]'.
我在做什么错?
可以公开这个私有只读成员的公共虚拟财产?另外,如果有问题的项目是私人的,这听起来像你没有测试正确的组件。 – Tejs 2012-04-17 19:30:55
@Tejs你是对的,请看更新 - 现在更准确 - 问题:) – epzee 2012-04-17 19:55:31
请不要编辑一个完全改变它的含义的问题。编辑应该是澄清,而不是从根本上改变意义。如果你想问一个不同的问题...问一个不同的问题。 – jason 2012-04-17 20:57:11