From 7219e2280327e80040006f0a6f0c44f078c827f2 Mon Sep 17 00:00:00 2001 From: rgraillon Date: Mon, 15 Apr 2019 13:54:23 +0200 Subject: [PATCH 1/2] Remove scoped services --- Resources/config/services.xml | 6 +++--- Response/FeedbackResponse.php | 20 +++++++++++--------- Tests/Response/FeedbackResponseTest.php | 22 +++++++++++++++++----- 3 files changed, 31 insertions(+), 17 deletions(-) diff --git a/Resources/config/services.xml b/Resources/config/services.xml index fe7941c..5455efd 100644 --- a/Resources/config/services.xml +++ b/Resources/config/services.xml @@ -78,11 +78,11 @@ - - + + - + diff --git a/Response/FeedbackResponse.php b/Response/FeedbackResponse.php index 13cb8ab..a5ab57d 100644 --- a/Response/FeedbackResponse.php +++ b/Response/FeedbackResponse.php @@ -2,9 +2,9 @@ namespace ETS\Payment\OgoneBundle\Response; -use Symfony\Component\HttpFoundation\Request; - use ETS\Payment\OgoneBundle\Hash\Sha1Out; +use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\RequestStack; /* * Copyright 2013 ETSGlobal @@ -32,14 +32,16 @@ class FeedbackResponse extends AbstractResponse private $values = array(); private $hash; - /** - * FeedbackResponse constructor - * - * @param Request $request - */ - public function __construct(Request $request) + public function __construct(RequestStack $requestStack) { - foreach (array_merge($request->query->all(), $request->request->all()) as $receivedField => $value) { + $requestParams = []; + + $request = $requestStack->getCurrentRequest(); + if ($request instanceof Request) { + $requestParams = array_merge($request->query->all(), $request->request->all()); + } + + foreach ($requestParams as $receivedField => $value) { if (Sha1Out::isAcceptableField($receivedField)) { if ((string) $value !== '') { $this->addValue($receivedField, $value); diff --git a/Tests/Response/FeedbackResponseTest.php b/Tests/Response/FeedbackResponseTest.php index 08e991e..114a02f 100644 --- a/Tests/Response/FeedbackResponseTest.php +++ b/Tests/Response/FeedbackResponseTest.php @@ -4,14 +4,21 @@ use ETS\Payment\OgoneBundle\Response\FeedbackResponse; use ETS\Payment\OgoneBundle\Test\RequestStubber; +use PHPUnit\Framework\TestCase; +use Symfony\Component\HttpFoundation\RequestStack; -class FeedbackResponseTest extends \PHPUnit\Framework\TestCase +class FeedbackResponseTest extends TestCase { /** - * @var \ETS\Payment\OgoneBundle\Test\RequestStubber + * @var RequestStubber */ private $requestStubber; + /** + * @var RequestStack + */ + private $requestStack; + public function setUp() { $this->requestStubber = new RequestStubber(array( @@ -24,6 +31,8 @@ public function setUp() array('PAYID', null, false, 43), array('SHASign', null, false, 'fzgzgzghz4648zh6z5h') )); + + $this->requestStack = new RequestStack(); } /** @@ -32,7 +41,8 @@ public function setUp() */ public function testAddValueFieldAlreadySetEvenIfDifferentCase() { - $feedbackResponse = new FeedbackResponse($this->requestStubber->getStubbedRequest()); + $this->requestStack->push($this->requestStubber->getStubbedRequest()); + $feedbackResponse = new FeedbackResponse($this->requestStack); $class = new \ReflectionClass($feedbackResponse); $addValueMethod = $class->getMethod('addValue'); @@ -47,7 +57,8 @@ public function testAddValueFieldAlreadySetEvenIfDifferentCase() */ public function testGetValueUnsetField() { - $feedbackResponse = new FeedbackResponse($this->requestStubber->getStubbedRequest()); + $this->requestStack->push($this->requestStubber->getStubbedRequest()); + $feedbackResponse = new FeedbackResponse($this->requestStack); $class = new \ReflectionClass($feedbackResponse); $getValueMethod = $class->getMethod('getValue'); @@ -58,7 +69,8 @@ public function testGetValueUnsetField() public function testConstructor() { - $feedbackResponse = new FeedbackResponse($this->requestStubber->getStubbedRequest()); + $this->requestStack->push($this->requestStubber->getStubbedRequest()); + $feedbackResponse = new FeedbackResponse($this->requestStack); $this->assertSame($this->requestStubber->getMapForParameterBags(false), $feedbackResponse->getValues()); $this->assertSame($this->requestStubber->getHashFromMap(), $feedbackResponse->getHash()); From 6e97e93d082ae2cc3327edbaaa89e55aa9ebf32b Mon Sep 17 00:00:00 2001 From: rgraillon Date: Mon, 15 Apr 2019 13:59:29 +0200 Subject: [PATCH 2/2] Fix test --- Tests/Plugin/OgoneGatewayPluginTest.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Tests/Plugin/OgoneGatewayPluginTest.php b/Tests/Plugin/OgoneGatewayPluginTest.php index e0004d5..ec88c9a 100644 --- a/Tests/Plugin/OgoneGatewayPluginTest.php +++ b/Tests/Plugin/OgoneGatewayPluginTest.php @@ -17,6 +17,7 @@ use ETS\Payment\OgoneBundle\Plugin\OgoneGatewayPluginMock; use ETS\Payment\OgoneBundle\Response\FeedbackResponse; use ETS\Payment\OgoneBundle\Test\RequestStubber; +use Symfony\Component\HttpFoundation\RequestStack; /** * Copyright 2013 ETSGlobal @@ -326,8 +327,12 @@ public function testProcesses() */ public function testGetResponseReturnsFeedbackResponse(FinancialTransaction $transaction) { + $requestStack = new RequestStack(); + $requestStack->push($this->requestStubber->getStubbedRequest()); + $feedbackResponse = new FeedbackResponse($requestStack); + $plugin = $this->createPluginMock(); - $plugin->setFeedbackResponse(new FeedbackResponse($this->requestStubber->getStubbedRequest())); + $plugin->setFeedbackResponse($feedbackResponse); $class = new \ReflectionClass($plugin); $getResponseMethod = $class->getMethod('getResponse');