/**
  * @return void
  */
 public function testExecuteShouldSetExternalRedirectUrlIfResponseContainsOne()
 {
     $checkoutResponseTransfer = new CheckoutResponseTransfer();
     $checkoutResponseTransfer->setIsExternalRedirect(true);
     $checkoutResponseTransfer->setRedirectUrl(self::EXTERNAL_REDIRECT_URL);
     $checkoutClientMock = $this->getCheckoutClientMock();
     $checkoutClientMock->method('placeOrder')->willReturn($checkoutResponseTransfer);
     $abstractPlaceOrderStepMock = $this->getAbstractPlaceOrderStep($checkoutClientMock);
     $abstractPlaceOrderStepMock->execute($this->getRequest(), new QuoteTransfer());
     $this->assertSame(self::EXTERNAL_REDIRECT_URL, $abstractPlaceOrderStepMock->getExternalRedirectUrl());
 }
Ejemplo n.º 2
0
 /**
  * @param \Generated\Shared\Transfer\QuoteTransfer $quoteTransfer
  * @param \Generated\Shared\Transfer\CheckoutResponseTransfer $checkoutResponse
  *
  * @return \Generated\Shared\Transfer\CheckoutResponseTransfer
  */
 public function postSaveHook(QuoteTransfer $quoteTransfer, CheckoutResponseTransfer $checkoutResponse)
 {
     $apiLogsQuery = $this->queryContainer->getLastApiLogsByOrderId($quoteTransfer->getIdSalesOrder());
     $apiLog = $apiLogsQuery->findOne();
     if ($apiLog) {
         $redirectUrl = $apiLog->getRedirectUrl();
         if ($redirectUrl !== null) {
             $checkoutResponse->setIsExternalRedirect(true);
             $checkoutResponse->setRedirectUrl($redirectUrl);
         }
     }
     return $checkoutResponse;
 }