public void ProductService_GetProductsByCategory() { //Initializing Test Data IEnumerable <Product> inputTestData = ProductDataInitialization.ProductTestData(); //creating mock objects var iProductRepositoryMock = new Mock <IProductRepository>(); var iUnitOfWorkMock = new Mock <IUnitOfWork>(); var iServiceManagerMock = new Mock <IServiceManager>(); //setting-up mock objects iProductRepositoryMock.Setup(x => x.GetProductsByCategory(It.IsAny <int>())).Returns(inputTestData); //Object Creation and Invocation ProductService productService = new ProductService(iProductRepositoryMock.Object, iUnitOfWorkMock.Object, iServiceManagerMock.Object); IEnumerable <Product> productData = productService.GetProductsByCategory(1); Assert.IsNotNull(productData); Assert.AreNotEqual(0, ((IEnumerable <Product>)productData).Count <Product>()); Assert.AreEqual(10, ((IEnumerable <Product>)productData).Count <Product>()); }
public void ProductRepository_GetAllProducts() { //Initializing Test Data IEnumerable <Product> inputTestData = ProductDataInitialization.ProductTestData(); var mockSet = new Mock <DbSet <Product> >(); //creating mock objects var databaseContextMock = new Mock <DatabaseContext>(); var iProductRepositoryMock = new Mock <IProductRepository>(); //setting-up mock objects databaseContextMock.Setup(x => x.Set <Product>()).Returns(mockSet.Object); iProductRepositoryMock.Setup(x => x.GetAll()).Returns(inputTestData); //Object Creation and Invocation ProductRepository productRepository = new ProductRepository(databaseContextMock.Object); IEnumerable <Product> productData = productRepository.GetAll(); //Results Comparison Assert.IsNotNull(productData); Assert.AreNotEqual(0, ((IEnumerable <Product>)productData).Count <Product>()); }