/** * @test * @dataProvider provideFloats */ public function CorrectlyConvertsFloatAmountsToInteger($string, $integer) { $paymentResponse = new EcommercePaymentResponse(array('amount' => $string, 'shasign' => '123')); $this->assertEquals($integer, $paymentResponse->getParam('amount')); }
/** * @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; }