我可以在运行时更改存根的行为吗?就像是:
public interface IFoo { string GetBar(); }
[TestMethod]
public void TestRhino()
{
var fi = MockRepository.GenerateStub<IFoo>();
fi.Stub(x => x.GetBar()).Return("A");
Assert.AreEqual("A", fi.GetBar());
fi.Stub(x => x.GetBar()).Return("B");
Assert.AreEqual("B", fi.GetBar()); // Currently fails here
}
我的代码示例在给定行中仍然失败,fi.GetBar()
仍然返回"A"
.
或者是否有另一个技巧来模拟行为随时间变化的存根?我宁愿不诉诸使用fi.Stub(...).Do(...)
.
啊,可能我只需要精美手册的硬拷贝,以便有人用它打我的头。看起来应该很明显,但我找不到。