public void AddTrailToDatabase() { var data = new List <Trail>() { new Trail("a", "Beginner", "Green"), new Trail("b", "Beginner", "Green") }.AsQueryable(); var mockSet = new Mock <DbSet <Trail> >(); mockSet.As <IQueryable <Trail> >().Setup(m => m.Provider).Returns(data.Provider); mockSet.As <IQueryable <Trail> >().Setup(m => m.Expression).Returns(data.Expression); mockSet.As <IQueryable <Trail> >().Setup(m => m.ElementType).Returns(data.ElementType); mockSet.As <IQueryable <Trail> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator()); var mockContext = new Mock <SkiResortContext>(); mockContext.Setup(c => c.Trails).Returns(mockSet.Object); var service = new TrailController(mockContext.Object); data.ToList().ForEach(t => service.Add(t)); }