/**
  * {@inheritDoc}
  *
  * @param Convert $request
  */
 public function execute($request)
 {
     RequestNotSupportedException::assertSupports($this, $request);
     /** @var PaymentInterface $payment */
     $payment = $request->getSource();
     $details = ArrayObject::ensureArrayObject($payment->getDetails());
     $details->defaults(array('Ds_Merchant_Amount' => $payment->getTotalAmount(), 'Ds_Merchant_Order' => $this->api->ensureCorrectOrderNumber($payment->getNumber()), 'Ds_Merchant_MerchantCode' => $this->api->getMerchantCode(), 'Ds_Merchant_Currency' => $this->api->getISO4127($payment->getCurrencyCode()), 'Ds_Merchant_TransactionType' => Api::TRANSACTIONTYPE_AUTHORIZATION, 'Ds_Merchant_Terminal' => $this->api->getMerchantTerminalCode()));
     $request->setResult((array) $details);
 }
Beispiel #2
0
 /**
  * @test
  *
  * @dataProvider validOrderNumberProvider
  */
 public function shouldReturnOrderNumberPassedIfValid($orderNumber)
 {
     $options = array('merchant_code' => 'a_merchant_code', 'terminal' => 'a_terminal', 'secret_key' => 'a_secret_key', 'sandbox' => true);
     $api = new Api($options);
     $this->assertEquals($orderNumber, $api->ensureCorrectOrderNumber($orderNumber));
 }