/** @test */
 public function CanBeConvertedToArray()
 {
     $aRequest = $this->provideRequest();
     $paymentResponse = new EcommercePaymentResponse($aRequest);
     $paymentResponse->isValid(new FakeShaComposer());
     $array = $paymentResponse->toArray();
     $this->assertArrayHasKey('ORDERID', $array);
     $this->assertArrayHasKey('STATUS', $array);
     $this->assertArrayHasKey('AMOUNT', $array);
     $this->assertArrayHasKey('SHASIGN', $array);
 }
Esempio n. 2
0
 /**
  * @param array $parameters
  * @return bool
  */
 public function paymentResponse(array $parameters)
 {
     $paymentResponse = new EcommercePaymentResponse($parameters);
     $passphrase = $this->shaOut;
     $shaComposer = new AllParametersShaComposer($passphrase);
     $shaComposer->addParameterFilter(new ShaOutParameterFilter());
     //optional
     if ($paymentResponse->isValid($shaComposer) && $paymentResponse->isSuccessful()) {
         $event = new OgoneEvent($parameters);
         $this->eventDispatcher->dispatch(OgoneEvents::SUCCESS, $event);
         // handle payment confirmation
         $this->logger->info('Ogone payment success');
         return true;
     } else {
         $event = new OgoneEvent($parameters);
         $this->eventDispatcher->dispatch(OgoneEvents::ERROR, $event);
         $this->logger->warn('Ogone payment failure', $parameters);
     }
     return false;
 }