public void A_ProductService_Should_Retrieve_From_The_Cache_The_Second_Time_The_Method_Is_Called_With_The_Same_Argumengts() { MockCacheStorage mockCacheStorage = new MockCacheStorage(); StubProductRepository stubProductRepository = new StubProductRepository(); int categoryId = 1; ProductService productService = new ProductService(stubProductRepository, mockCacheStorage); productService.GetAllProductsIn(categoryId); Assert.AreEqual(0, mockCacheStorage.RetrievedFromCacheCount()); productService.GetAllProductsIn(categoryId); Assert.AreEqual(1, mockCacheStorage.RetrievedFromCacheCount()); }
private IProductRepository GetProductRepository() { IProductRepository productRepository = new StubProductRepository(); string PRODUCT_DESC = "IPad"; string PRODUCT_FACTORY = "Apple"; double PRODUCT_PRICE = 23.50; string PRODUCT_NAME = "Tablet"; Product product = new Product(PRODUCT_ID, PRODUCT_NAME, PRODUCT_DESC, PRODUCT_PRICE, PRODUCT_FACTORY); product.AvailableStock = 100; productRepository.AddEntity(product); return(productRepository); }
public CategoryServiceTest() { string PRODUCT_DESC = "IPad"; double PRODUCT_PRICE = 23.50; string PRODUCT_FACTORY = "Apple"; string PRODUCT_NAME = "Tablet"; ICategoryRepository categoryRepository = new StubCategoryRepository(); IProductRepository productRepository = new StubProductRepository(); Product product = new Product(PRODUCT_ID, PRODUCT_NAME, PRODUCT_DESC, PRODUCT_PRICE, PRODUCT_FACTORY); productRepository.AddEntity(product); request = new CategoryRequest(); request.CategoryId = "vest."; request.Description = "Vestimenta"; request.ProductId = PRODUCT_ID; ICategoryManager categoryManager = new CategoryManager(categoryRepository, productRepository); categoryService = new CategoryServiceImpl(categoryManager, new CategoryBuilderDTO(new FullProductDTOBuilder(new FieldDTOBuilder(),new ImageDTOBuilder()))); }
public CartServiceTest() { ICartRepository cartRepository = new StubCartRepository(); IProductRepository productRepository = new StubProductRepository(); IUserRepository userRepository = new StubUserRepository(); request = new CartRequest(); request.UserId = USER_ID; request.ProductId = PRODUCT_ID; request.Quantity = 1; AddUserOnRepository(userRepository); AddProductOnRepository(productRepository); IPointSystemConfigurationRepository configurationRepository = new StubPointSystemConfigurationRepository(); configurationRepository.AddEntity(new PointSystemConfiguration() { PropertyName = ESportUtils.LOYALTY_PROPERTY_NAME, PropertyValue = 100 }); ICartManager cartManager = new CartManager(cartRepository, new StubCartItemRepository(), productRepository, userRepository, configurationRepository); cartService = new CartServiceImpl(cartManager, new SimpleCartDTOBuilder(), new PendingReviewDTOBuilder()); }
public void GetFeaturedProductsWillReturnCorrectProductsForNonPreferredUser() { var user = new StubUserContext(); var expectedProducts = new[] { new { Name = "Olives", UnitPrice = 24.5m }, new { Name = "Mushrooms", UnitPrice = 14.2m }, }; var featuredProducts = new[] { new Product { Name = "Olives", UnitPrice = 24.5m }, new Product { Name = "Mushrooms", UnitPrice = 14.2m } }; // Arrange var repository = new StubProductRepository { FeaturedProducts = featuredProducts }; var sut = new ProductService(repository, user); // Act var actualProducts = from p in sut.GetFeaturedProducts() select new { p.Name, p.UnitPrice }; // Assert Assert.True( condition: expectedProducts.SequenceEqual(actualProducts), userMessage: string.Join(", ", actualProducts.Select(p => p.ToString()))); }
public void GetFeaturedProductsWillReturnCorrectProduct() { // Arrange var expected = new { Name = "Olives", UnitPrice = 24.5m }; var repository = new StubProductRepository { FeaturedProducts = new[] { new Product { Name = expected.Name, UnitPrice = expected.UnitPrice } } }; var sut = new ProductService(repository, new StubUserContext()); // Act var products = sut.GetFeaturedProducts(); var result = products.Single(); // Assert Assert.Equal(expected, actual: new { result.Name, result.UnitPrice }); }