private void ApplyCouponToCart() { var couponManager = new CouponManager(_shoppingCartRepository); var discountAmount = couponManager.GetCouponDiscountAmountForCart(); _shoppingCartRepository.SetDiscountAmountByCoupon(discountAmount); }
public void WhenGetCouponDiscount_IfCampaignOfCartIsNull_Expect0() { var cart = new Mock <IShoppingCartRepository>(); cart.Setup(c => c.GetCart()).Returns(new ShoppingCart()); var manager = new CouponManager(cart.Object); var result = manager.GetCouponDiscountAmountForCart(); Assert.Equal(0, result); }
public void WhenGetCouponDiscount_NotEnoughCartAmount_Expect0() { var campaignRepository = new Mock <ICampaignRepository>(); var repository = new ShoppingCartRepository(); var service = new ShoppingCartService(repository, campaignRepository.Object, _couponRepository); service.ApplyCoupon(_coupon); var manager = new CouponManager(repository); var result = manager.GetCouponDiscountAmountForCart(); Assert.Equal(0, result); }
public void WhenGetCouponDiscount_GetSuccessfully() { var campaignRepository = new Mock <ICampaignRepository>(); var product = new Product("Iphone 5S", 1000, new Category("Phone")); var repository = new ShoppingCartRepository(); var service = new ShoppingCartService(repository, campaignRepository.Object, _couponRepository); service.AddItem(product, 1); service.ApplyCoupon(_coupon); var expectedDiscount = 100; var manager = new CouponManager(repository); var couponDiscount = manager.GetCouponDiscountAmountForCart(); Assert.Equal(expectedDiscount, couponDiscount); }