2013-09-22 17 views
0

我想嘲笑我的倉庫,我有一個調用它看起來像這樣的功能:帶有Linq表達式的Moq存儲庫。

return _mailingListRepository.Find(ml => ml.EmailAddress == email).Any(); 

設置我這樣的模擬庫:

_mailingListRepositoryMock.Setup(m => m.Find(It.IsAny<Expression<Func<MailingList, bool>>>())).Returns((IEnumerable<MailingList>) null); 

但隨後拋出異常:值不能爲空。我應該在我的設置中返回什麼?

+0

你能後要測試的方法是什麼? –

回答

1

你想讓你的模擬函數返回一個空的列表嗎?如果是這樣,那麼返回Enumerable.Empty<MailingList>()

+0

謝謝!就是這樣。 – ekenman

0

試試這個

_mailingListRepositoryMock.Setup(m => m.Find(It.IsAny<Expression<Func<MailingList, bool>>>())).Returns<IEnumerable<MailingList>>(null);