public void GetAllNamesCategories_ReturnsAsACorrectListOfAllCategoryNames() { // Arrange var categories = new List <Category> { new Category { Name = "TestCategory1", Id = 1 }, new Category { Name = "TestCategory2", Id = 2 } }.AsQueryable(); var mockSet = new Mock <DbSet <Category> >(); mockSet.As <IQueryable <Category> >().Setup(m => m.Provider).Returns(categories.Provider); mockSet.As <IQueryable <Category> >().Setup(m => m.Expression).Returns(categories.Expression); mockSet.As <IQueryable <Category> >().Setup(m => m.ElementType).Returns(categories.ElementType); mockSet.As <IQueryable <Category> >().Setup(m => m.GetEnumerator()).Returns(categories.GetEnumerator()); var mockContext = new Mock <EazyCartContext>(); mockContext.Setup(c => c.Categories).Returns(mockSet.Object); var categoryBusiness = new CategoryBusiness(mockContext.Object); // Act string expectedFirstName = "TestCategory1"; string expectedSecondName = "TestCategory2"; var categoryNames = categoryBusiness.GetAllNames(); // Assert Assert.AreEqual(expectedFirstName, categoryNames[0], "First category name does not match."); Assert.AreEqual(expectedSecondName, categoryNames[1], "First category name does not match."); }