У меня есть объект доступа к данным TransactionDao. Когда вы вызываете TransactionDao.Save (транзакция), я бы хотел, чтобы он установил флаг транзакции. IsSaved = true (это упрощение, которое я пытаюсь сделать, не так банально) Так, когда я высмеиваю мой TransactionDao с помощью RhinoMocks, как я могу указать, что он должен преобразовать свой ввод?
В идеале я хотел бы написать что-то вроде этого:
Expect.Call(delegate {dao.Save(transaction);}).Override(x => x.IsSaved=true);
Кто-нибудь знает, как это сделать?
Хотя я получил подсказку, как это сделать из ответа, указанного ниже, фактическая сигнатура типа отключена, вы должны сделать что-то вроде этого:
Из-за того, что написал Марк Ингрэм, кажется, что лучший ответ, хотя никто явно не сказал это, должен сделать это:
public delegate void FakeSave(Transaction t);
...
Expect.Call(delegate {dao.Save(t); }).Do( new FakeSave(delegate(Transaction t2) { t.IsSaved = true; }));