Wondering if I need to use the Genericrepository pattern and UnitOfWork to mock the repository.I am using MOQ.Is it now redundant since I have noticed that EF 4.1 has IDBSet
public class MockDbSet : IDbSet where T : class, new()
{
private List _entities;
public MockDbSet(List entities)
{
_entities = entities;
}
public virtual T Add(T entity)
{
_entities.Add(entity);
return entity;
}
public virtual T Attach(T entity)
{
_entities.Add(entity);
return entity;
}
public TDerivedEntity Create() where TDerivedEntity : class, T
{
return new T() as TDerivedEntity;
}
public virtual T Create()
{
return new T();
}
public virtual T Find(params object[] keyValues)
{
throw new NotImplementedException();
}
public System.Collections.ObjectModel.ObservableCollection Local
{
get
{
return new ObservableCollection(_entities);
}
}
public virtual T Remove(T entity)
{
_entities.Remove(entity);
return entity;
}
public IEnumerator GetEnumerator()
{
return _entities.GetEnumerator();
}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
return _entities.GetEnumerator();
}
public Type ElementType
{
get { return _entities.AsQueryable().ElementType; }
}
public System.Linq.Expressions.Expression Expression
{
get { return _entities.AsQueryable().Expression; }
}
public IQueryProvider Provider
{
get { return _entities.AsQueryable().Provider; }
}
}