0
假設包含ITache,IStockPalette等子對象的IMouvement對象。使用Rhino Mock模擬包含子對象的對象
public interface IMouvement : IObjectBase<Guid>
{
ITache Tache { get; set; }
IStockPalette StockPalOrigine { get; set; }
}
我該如何使用Rhino Mock對此進行模擬?
假設這個測試,這有什麼問題?
[TestMethod]
public void Can_Validate_EmplacementTransitoireRule()
{
var mocks = new MockRepository();
var mouvement = mocks.StrictMock<IMouvement>();
var manager = mocks.StrictMock<ValidationManager>();
mouvement.Tache = mocks.StrictMock<ITache>();
mouvement.StockPalOrigine = mocks.StrictMock<IStockPalette>();
mouvement.ID = Guid.NewGuid();
var rule = new EmplacementTransitoireRule(mouvement);
manager.AddRule(rule);
Expect.Call(manager.ValidateAll()).Return(true);
mocks.ReplayAll();
var all = manager.ValidateAll();
mocks.VerifyAll();
Assert.IsTrue(all);
}
這個測試總是失敗..
好吧,我剛剛嘗試過,但現在我面臨着另一個問題。我需要除了受保護的方法的結果,我可以使用InternalsVisibleTo Assembly Attribute來獲得與犀牛模擬的工作嗎? – 2009-01-10 16:09:32