/** * @return static */ public function withCartPriceRules() { foreach ($this->entity->getCartPriceRules() as $cartPriceRule) { $this->entityDTO->cartPriceRules[] = $this->dtoBuilderFactory->getCartPriceRuleDTOBuilder($cartPriceRule)->build(); } return $this; }
public function testCreate() { $coupon = $this->dummyData->getCoupon(); $cartPriceRule = $this->dummyData->getCartPriceRule(); $taxRate = $this->dummyData->getTaxRate(); $cartTotal = new CartTotal(); $cartTotal->origSubtotal = 1; $cartTotal->subtotal = 2; $cartTotal->taxSubtotal = 3; $cartTotal->discount = 4; $cartTotal->shipping = 5; $cartTotal->shippingDiscount = 6; $cartTotal->tax = 7; $cartTotal->total = 8; $cartTotal->savings = 9; $cartTotal->coupons = [$coupon]; $cartTotal->addCartPriceRule($cartPriceRule); $cartTotal->taxRate = $taxRate; $this->assertTrue($cartTotal instanceof CartTotal); $this->assertSame(1, $cartTotal->origSubtotal); $this->assertSame(2, $cartTotal->subtotal); $this->assertSame(3, $cartTotal->taxSubtotal); $this->assertSame(4, $cartTotal->discount); $this->assertSame(5, $cartTotal->shipping); $this->assertSame(6, $cartTotal->shippingDiscount); $this->assertSame(7, $cartTotal->tax); $this->assertSame(8, $cartTotal->total); $this->assertSame(9, $cartTotal->savings); $this->assertSame($taxRate, $cartTotal->taxRate); $this->assertSame($coupon, $cartTotal->coupons[0]); $this->assertSame($cartPriceRule, $cartTotal->getCartPriceRules()[0]); }
private function setDiscountNames() { $discountNames = []; foreach ($this->total->getCartPriceRules() as $cartPriceRule) { $this->cartPriceRules[] = $cartPriceRule; $discountNames[] = $cartPriceRule->getName(); } foreach ($this->getCoupons() as $coupon) { $discountNames[] = $coupon->getName(); } $this->discountNames = implode(', ', $discountNames); }