在我的方法,我有我的存儲庫這樣做:MOQ - LINQ謂詞設置方法
bool isConditionMet = MyRepository.Any(x => x.Condition == true);
我試圖嘲弄這個使用最小起訂量,像這樣:
MyMockedRepository.Setup(x => x.Any(y => y.Condition == true)).Returns(true);
然而,當代碼執行時,存儲庫調用始終返回false。
有沒有辦法用MOQ做到這一點?
**編輯 - 每個請求添加代碼**
我使用NHibernate的,所以我的任何方法都在我的基地倉庫,因此實現的:
public virtual bool Any(Expression<Func<T, bool>> predicate)
{
return Session.Query<T>().Cacheable().Any(predicate);
}
你能展示更多代碼爲'MyRepository'是'Any()'Linq擴展方法還是'MyRepository'的一部分? –
我從我的基礎知識庫中爲每個請求添加了我的任何方法。模擬類是'MyRepository'中實現的'IMyRepository'。 – Brandon