Пример #1
0
 public function testDenyWithoutInvoiceResultFalse()
 {
     $baseGrandTotal = null;
     $denyPayment = true;
     $this->payment->setData('transaction_id', $this->transactionId);
     $this->invoiceMock->expects($this->never())->method('cancel');
     $this->orderMock->expects($this->any())->method('getInvoiceCollection')->willReturn([]);
     $this->helperMock->expects($this->once())->method('getMethodInstance')->will($this->returnValue($this->paymentMethodMock));
     $this->paymentMethodMock->expects($this->once())->method('setStore')->will($this->returnSelf());
     $this->paymentMethodMock->expects($this->once())->method('denyPayment')->with($this->payment)->willReturn($denyPayment);
     $status = 'status';
     $this->mockGetDefaultStatus(Order::STATE_PROCESSING, $status);
     $this->assertOrderUpdated(Order::STATE_PROCESSING, $status, __('Denied the payment online'));
     $this->payment->deny();
     $this->assertEquals($baseGrandTotal, $this->payment->getBaseAmountPaidOnline());
 }
Пример #2
0
 /**
  * Add payment transaction
  *
  * @param \Magento\Sales\Model\Order\Payment $payment
  * @param string $transactionId
  * @param string $transactionType
  * @param array $transactionDetails
  * @param array $transactionAdditionalInfo
  * @param bool $message
  * @return null|\Magento\Sales\Model\Order\Payment\Transaction
  */
 protected function _addTransaction(\Magento\Sales\Model\Order\Payment $payment, $transactionId, $transactionType, array $transactionDetails = array(), array $transactionAdditionalInfo = array(), $message = false)
 {
     $payment->setTransactionId($transactionId);
     $payment->resetTransactionAdditionalInfo();
     foreach ($transactionDetails as $key => $value) {
         $payment->setData($key, $value);
     }
     foreach ($transactionAdditionalInfo as $key => $value) {
         $payment->setTransactionAdditionalInfo($key, $value);
     }
     $transaction = $payment->addTransaction($transactionType, null, false, $message);
     foreach ($transactionDetails as $key => $value) {
         $payment->unsetData($key);
     }
     $payment->unsLastTransId();
     /**
      * It for self using
      */
     $transaction->setMessage($message);
     return $transaction;
 }
Пример #3
0
 /**
  * {@inheritdoc}
  */
 public function setData($key, $value = null)
 {
     $pluginInfo = $this->pluginList->getNext($this->subjectType, 'setData');
     if (!$pluginInfo) {
         return parent::setData($key, $value);
     } else {
         return $this->___callPlugins('setData', func_get_args(), $pluginInfo);
     }
 }