/** * @return void */ public function testSaveDiscountMustSaveSalesItemsDiscount() { $discountSaver = $this->getDiscountOrderSaverMock(['persistSalesDiscount']); $discountSaver->expects($this->once())->method('persistSalesDiscount'); $quoteTransfer = new QuoteTransfer(); $discountTransfer = new CalculatedDiscountTransfer(); $discountTransfer->setDisplayName(self::DISCOUNT_DISPLAY_NAME); $discountTransfer->setUnitGrossAmount(self::DISCOUNT_AMOUNT); $orderItemTransfer = new ItemTransfer(); $orderItemTransfer->addCalculatedDiscount($discountTransfer); $quoteTransfer->addItem($orderItemTransfer); $checkoutResponseTransfer = new CheckoutResponseTransfer(); $saverOrderTransfer = new SaveOrderTransfer(); $saverOrderTransfer->setIdSalesOrder(self::ID_SALES_ORDER); $saverOrderTransfer->setOrderItems($quoteTransfer->getItems()); $checkoutResponseTransfer->setSaveOrder($saverOrderTransfer); $discountSaver->saveDiscounts($quoteTransfer, $checkoutResponseTransfer); }