我正在使用Moq作爲我的嘲笑框架。根據下面的代碼,我有兩個模擬設置,我想設置第二個返回第一個模擬。這是可能的,如果是的話,我會怎麼做呢?目前它說模擬被返回是一個無效的候選人。是否有可能使用Moq在C#中從另一個模擬中返回一個模擬?
[SetUp]
private void SetupMarketRow()
{
var marketTotalRow = new Mock<ITotalRow>();
marketTotalRow.Setup(r => r.TotalBudgetCurrentFact).Returns(1860716);
marketTotalRow.Setup(r => r.TotalBudgetEvol).Returns(-26);
marketTotalRow.Setup(r => r.TotalBudgetPreviousFact).Returns(2514079);
var localMarketReport = new Mock<IReport>();
localMarketReport.Setup(r => r.TotalRow).Returns(marketTotalRow);
// Red swiggley here saying invalid candidate
}
謝謝弗萊徹。我試過這個,似乎仍然沒有工作,雖然我通過從r => r.TotalRow call.Cheers中返回ITotalRow的類型,發現問題如下。 – Matt 2010-08-09 13:57:08
Fletchers與我的編輯結合在一起回答,解決了問題。謝謝。 – Matt 2010-08-15 15:25:51