public void WhenApplyCampaignToCart_NoCampaign() { var cartRepository = new Mock <IShoppingCartRepository>(); var campaignRepository = new Mock <ICampaignRepository>(); campaignRepository.Setup(c => c.GetAll()) .Returns(new List <Campaign>()); var manager = new CampaignManager(campaignRepository.Object, cartRepository.Object); manager.ApplyCampaignToCart(); cartRepository.Verify(c => c.GetCart(), Times.Never); }
public void WhenApplyCampaignToCart_NotEnoughItemCount_ExpectNoDiscount() { var shoppingCartRepository = new ShoppingCartRepository(); var shoppingCartService = new ShoppingCartService(shoppingCartRepository, _campaignRepository, _couponRepository); shoppingCartService.AddItem(_productService.GetByID(0), 1); var campaignManager = new CampaignManager(_campaignRepository, shoppingCartRepository); campaignManager.ApplyCampaignToCart(); var finalCart = shoppingCartService.GetCart(); Assert.Equal(0, finalCart.DiscountAmount); Assert.Equal(0, finalCart.Items[0].DiscountAmount); }
public void WhenApplyCampaignToCart_MultipleCategoryItemForCampaign_ExpectSuccess() { var shoppingCartRepository = new ShoppingCartRepository(); var shoppingCartService = new ShoppingCartService(shoppingCartRepository, _campaignRepository, _couponRepository); shoppingCartService.AddItem(_productService.GetByID(0), 1); shoppingCartService.AddItem(_productService.GetByID(1), 1); var campaignManager = new CampaignManager(_campaignRepository, shoppingCartRepository); campaignManager.ApplyCampaignToCart(); var expectedResult = 2500 * 20 / 100; var finalCart = shoppingCartService.GetCart(); Assert.Equal(expectedResult, finalCart.DiscountAmount); }
private void ApplyCampaignToCart() { var campaignmanager = new CampaignManager(_campaignRepository, _shoppingCartRepository); campaignmanager.ApplyCampaignToCart(); }