Skip to content

Commit 3d3d1c6

Browse files
committed
Test on Symfony 7.*
1 parent 538b051 commit 3d3d1c6

File tree

11 files changed

+148
-71
lines changed

11 files changed

+148
-71
lines changed

composer.json

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,21 @@
3838
"knplabs/knp-menu": "^3.3",
3939
"knplabs/knp-menu-bundle": "^3.2",
4040
"psr/event-dispatcher": "^1.0",
41-
"symfony/asset": "^4.4|^5.4|^6.0",
42-
"symfony/config": "^4.4.12|^5.4|^6.0",
43-
"symfony/dependency-injection": "^4.4.12|^5.4|^6.0",
44-
"symfony/doctrine-bridge": "^4.4|^5.4|^6.0",
45-
"symfony/form" : "^4.4|^5.4|^6.0",
46-
"symfony/framework-bundle" : "^4.4|^5.4|^6.0",
47-
"symfony/http-foundation": "^4.4|^5.4|^6.0",
48-
"symfony/http-kernel": "^4.4|^5.4|^6.0",
49-
"symfony/intl" : "^4.4|^5.4|^6.0",
50-
"symfony/options-resolver": "^4.4|^5.4|^6.0",
51-
"symfony/proxy-manager-bridge": "^4.4|^5.4|^6.0",
52-
"symfony/security-csrf": "^4.4|^5.4|^6.0",
53-
"symfony/translation": "^4.4.12|^5.4|^6.0",
54-
"symfony/twig-bundle": "^4.4|^5.4|^6.0",
55-
"symfony/validator": "^4.4|^5.4|^6.0",
41+
"symfony/asset": "^4.4|^5.4|^6.0|^7.0",
42+
"symfony/config": "^4.4.12|^5.4|^6.0|^7.0",
43+
"symfony/dependency-injection": "^4.4.12|^5.4|^6.0|^7.0",
44+
"symfony/doctrine-bridge": "^4.4|^5.4|^6.0|^7.0",
45+
"symfony/form" : "^4.4|^5.4|^6.0|^7.0",
46+
"symfony/framework-bundle" : "^4.4|^5.4|^6.0|^7.0",
47+
"symfony/http-foundation": "^4.4|^5.4|^6.0|^7.0",
48+
"symfony/http-kernel": "^4.4|^5.4|^6.0|^7.0",
49+
"symfony/intl" : "^4.4|^5.4|^6.0|^7.0",
50+
"symfony/options-resolver": "^4.4|^5.4|^6.0|^7.0",
51+
"symfony/proxy-manager-bridge": "^4.4|^5.4|^6.0|^7.0",
52+
"symfony/security-csrf": "^4.4|^5.4|^6.0|^7.0",
53+
"symfony/translation": "^4.4.12|^5.4|^6.0|^7.0",
54+
"symfony/twig-bundle": "^4.4|^5.4|^6.0|^7.0",
55+
"symfony/validator": "^4.4|^5.4|^6.0|^7.0",
5656
"twig/twig": "^3.7"
5757
},
5858
"require-dev": {
@@ -81,14 +81,14 @@
8181
"sebastian/comparator": "^4.0|^5.0",
8282
"sebastian/exporter": "^4.0|^5.0",
8383
"squizlabs/php_codesniffer": "^3.7",
84-
"symfony/dom-crawler": "^4.4.12|^5.4|^6.0",
85-
"symfony/error-handler": "^4.4|^5.4|^6.0",
86-
"symfony/event-dispatcher": "^4.4.27|^5.4|^6.0",
87-
"symfony/http-client": "^4.4|^5.4|^6.0",
88-
"symfony/monolog-bridge": "^4.4|^5.4|^6.0",
84+
"symfony/dom-crawler": "^4.4.12|^5.4|^6.0|^7.0",
85+
"symfony/error-handler": "^4.4|^5.4|^6.0|^7.0",
86+
"symfony/event-dispatcher": "^4.4.27|^5.4|^6.0|^7.0",
87+
"symfony/http-client": "^4.4|^5.4|^6.0|^7.0",
88+
"symfony/monolog-bridge": "^4.4|^5.4|^6.0|^7.0",
8989
"symfony/monolog-bundle": "^3.7",
90-
"symfony/var-dumper": "^4.4|^5.4|^6.0",
91-
"symfony/yaml": "^4.4|^5.4|^6.0"
90+
"symfony/var-dumper": "^4.4|^5.4|^6.0|^7.0",
91+
"symfony/yaml": "^4.4|^5.4|^6.0|^7.0"
9292
},
9393
"conflict": {
9494
"fsi/admin-positionable-bundle": "*",

spec/FSi/Bundle/AdminBundle/Admin/CRUD/Context/BatchElementContextSpec.php

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,13 @@
2020
use Symfony\Component\Form\FormBuilderInterface;
2121
use Symfony\Component\Form\FormInterface;
2222
use Symfony\Component\Form\FormView;
23+
use Symfony\Component\HttpFoundation\InputBag;
2324
use Symfony\Component\HttpFoundation\ParameterBag;
2425
use Symfony\Component\HttpFoundation\Request;
2526
use Symfony\Component\HttpFoundation\Response;
2627

28+
use function class_exists;
29+
2730
class BatchElementContextSpec extends ObjectBehavior
2831
{
2932
public function let(
@@ -58,32 +61,39 @@ public function it_does_not_have_template_name(): void
5861

5962
public function it_handles_request_with_request_handlers(
6063
HandlerInterface $handler,
61-
Request $request,
62-
ParameterBag $requestParameterBag
64+
Request $request
6365
): void {
6466
$handler->handleRequest(Argument::type(FormEvent::class), $request)
6567
->willReturn(null);
6668

69+
if (class_exists(InputBag::class)) {
70+
$requestParameterBag = new InputBag();
71+
} else {
72+
$requestParameterBag = new ParameterBag();
73+
}
74+
$requestParameterBag->set('indexes', []);
6775
$request->request = $requestParameterBag;
68-
$requestParameterBag->all()->willReturn(['indexes' => []]);
6976

7077
$this->handleRequest($request)->shouldReturn(null);
7178
}
7279

7380
public function it_return_response_from_handler(
7481
HandlerInterface $handler,
7582
Request $request,
76-
ParameterBag $requestParameterBag,
7783
Response $response
7884
): void {
7985
$handler->handleRequest(Argument::type(FormEvent::class), $request)
8086
->willReturn($response);
8187

88+
if (class_exists(InputBag::class)) {
89+
$requestParameterBag = new InputBag();
90+
} else {
91+
$requestParameterBag = new ParameterBag();
92+
}
93+
$requestParameterBag->set('indexes', []);
8294
$request->request = $requestParameterBag;
83-
$requestParameterBag->all()->willReturn(['indexes' => []]);
8495

85-
$this->handleRequest($request)
86-
->shouldReturnAnInstanceOf(Response::class);
96+
$this->handleRequest($request)->shouldReturnAnInstanceOf(Response::class);
8797
}
8898

8999
public function getMatchers(): array

spec/FSi/Bundle/AdminBundle/Admin/CRUD/Context/DeleteElementContextSpec.php

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,13 @@
2020
use Symfony\Component\Form\FormBuilderInterface;
2121
use Symfony\Component\Form\FormInterface;
2222
use Symfony\Component\Form\FormView;
23+
use Symfony\Component\HttpFoundation\InputBag;
2324
use Symfony\Component\HttpFoundation\ParameterBag;
2425
use Symfony\Component\HttpFoundation\Request;
2526
use Symfony\Component\HttpFoundation\Response;
2627

28+
use function class_exists;
29+
2730
class DeleteElementContextSpec extends ObjectBehavior
2831
{
2932
public function let(
@@ -58,26 +61,35 @@ public function it_does_not_have_template_name(): void
5861

5962
public function it_handles_request_with_request_handlers(
6063
HandlerInterface $handler,
61-
Request $request,
62-
ParameterBag $requestParameterBag
64+
Request $request
6365
): void {
6466
$handler->handleRequest(Argument::type(FormEvent::class), $request)->willReturn(null);
6567

68+
if (class_exists(InputBag::class)) {
69+
$requestParameterBag = new InputBag();
70+
} else {
71+
$requestParameterBag = new ParameterBag();
72+
}
73+
$requestParameterBag->set('indexes', []);
6674
$request->request = $requestParameterBag;
67-
$requestParameterBag->all()->willReturn(['indexes' > []]);
6875

6976
$this->handleRequest($request)->shouldReturn(null);
7077
}
7178

7279
public function it_return_response_from_handler(
7380
HandlerInterface $handler,
7481
Request $request,
75-
ParameterBag $requestParameterBag,
7682
Response $response
7783
): void {
7884
$handler->handleRequest(Argument::type(FormEvent::class), $request)->willReturn($response);
85+
86+
if (class_exists(InputBag::class)) {
87+
$requestParameterBag = new InputBag();
88+
} else {
89+
$requestParameterBag = new ParameterBag();
90+
}
91+
$requestParameterBag->set('indexes', []);
7992
$request->request = $requestParameterBag;
80-
$requestParameterBag->all()->willReturn(['indexes' => []]);
8193

8294
$this->handleRequest($request)->shouldReturnAnInstanceOf(Response::class);
8395
}

spec/FSi/Bundle/AdminBundle/Admin/CRUD/Context/Request/BatchFormValidRequestHandlerSpec.php

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,34 @@
3131
use Psr\EventDispatcher\EventDispatcherInterface;
3232
use stdClass;
3333
use Symfony\Component\Form\FormInterface;
34+
use Symfony\Component\HttpFoundation\InputBag;
3435
use Symfony\Component\HttpFoundation\ParameterBag;
3536
use Symfony\Component\HttpFoundation\RedirectResponse;
3637
use Symfony\Component\HttpFoundation\Request;
3738
use Symfony\Component\HttpFoundation\Response;
3839
use Symfony\Component\Routing\RouterInterface;
3940

41+
use function class_exists;
42+
4043
class BatchFormValidRequestHandlerSpec extends ObjectBehavior
4144
{
4245
public function let(
4346
EventDispatcherInterface $eventDispatcher,
4447
RouterInterface $router,
4548
FlashMessages $flashMessage,
4649
Request $request,
47-
ParameterBag $requestParameterBag,
48-
ParameterBag $queryParameterBag,
4950
FormInterface $form,
5051
BatchElement $element,
5152
FormEvent $event
5253
): void {
53-
$requestParameterBag->all()->willReturn(['indexes' => ['index']]);
54+
if (class_exists(InputBag::class)) {
55+
$requestParameterBag = new InputBag();
56+
$queryParameterBag = new InputBag();
57+
} else {
58+
$requestParameterBag = new ParameterBag();
59+
$queryParameterBag = new ParameterBag();
60+
}
61+
$requestParameterBag->set('indexes', ['index']);
5462
$request->request = $requestParameterBag;
5563
$request->query = $queryParameterBag;
5664
$request->isMethod(Request::METHOD_POST)->willReturn(true);
@@ -127,7 +135,6 @@ public function it_handles_POST_request(
127135
public function it_returns_redirect_response_with_redirect_uri_passed_by_request(
128136
FormEvent $event,
129137
Request $request,
130-
ParameterBag $queryParameterBag,
131138
EventDispatcherInterface $eventDispatcher,
132139
FormInterface $form,
133140
BatchElement $element,
@@ -150,8 +157,7 @@ public function it_returns_redirect_response_with_redirect_uri_passed_by_request
150157

151158
$dataIndexer->getDataSlice(['index'])->willReturn([$object]);
152159

153-
$queryParameterBag->has('redirect_uri')->willReturn(true);
154-
$queryParameterBag->get('redirect_uri')->willReturn('some_redirect_uri');
160+
$request->query->set('redirect_uri', 'some_redirect_uri');
155161

156162
$response = $this->handleRequest($event, $request);
157163
$response->shouldBeAnInstanceOf(RedirectResponse::class);
@@ -215,7 +221,7 @@ public function it_displays_warning_when_no_elements_sent(
215221
FlashMessages $flashMessage,
216222
DataIndexerInterface $dataIndexer
217223
): void {
218-
$requestParameterBag->all()->willReturn(['indexes' => []]);
224+
$request->request->set('indexes', []);
219225
$event->getElement()->willReturn($deleteElement);
220226
$eventDispatcher->dispatch(Argument::type(BatchObjectsPreApplyEvent::class))->shouldBeCalled();
221227

spec/FSi/Bundle/AdminBundle/Admin/CRUD/Context/Request/DeleteRequestHandlerSpec.php

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,14 @@
2020
use LogicException;
2121
use PhpSpec\ObjectBehavior;
2222
use Prophecy\Argument;
23+
use Symfony\Component\HttpFoundation\InputBag;
2324
use Symfony\Component\HttpFoundation\ParameterBag;
2425
use Symfony\Component\HttpFoundation\RedirectResponse;
2526
use Symfony\Component\HttpFoundation\Request;
2627
use Symfony\Component\Routing\RouterInterface;
2728

29+
use function class_exists;
30+
2831
class DeleteRequestHandlerSpec extends ObjectBehavior
2932
{
3033
public function let(
@@ -33,13 +36,16 @@ public function let(
3336
RouterInterface $router,
3437
DeleteElement $element,
3538
FormEvent $event,
36-
ParameterBag $queryParameterBag,
3739
Request $request,
3840
RedirectResponse $response
3941
): void {
42+
if (class_exists(InputBag::class)) {
43+
$queryParameterBag = new InputBag();
44+
} else {
45+
$queryParameterBag = new ParameterBag();
46+
}
4047
$request->query = $queryParameterBag;
4148

42-
$queryParameterBag->has('redirect_uri')->willReturn(false);
4349
$element->getSuccessRoute()->willReturn('fsi_admin_list');
4450
$element->getSuccessRouteParameters()->willReturn(['element' => 'element_list_id']);
4551
$element->getId()->willReturn('element_form_id');
@@ -75,11 +81,8 @@ public function it_uses_redirect_uri_if_present(
7581
DeleteElement $element,
7682
FormEvent $event,
7783
Request $request,
78-
ParameterBag $queryParameterBag,
7984
FlashMessages $flashMessage
8085
): void {
81-
$queryParameterBag->has('redirect_uri')->shouldNotBeCalled();
82-
$queryParameterBag->get('redirect_uri')->shouldNotBeCalled();
8386
$element->getSuccessRoute()->shouldNotBeCalled();
8487
$element->getSuccessRouteParameters()->shouldNotBeCalled();
8588
$element->getId()->shouldNotBeCalled();

spec/FSi/Bundle/AdminBundle/Admin/CRUD/Context/Request/FormValidRequestHandlerSpec.php

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,15 @@
2727
use Psr\EventDispatcher\EventDispatcherInterface;
2828
use stdClass;
2929
use Symfony\Component\Form\FormInterface;
30+
use Symfony\Component\HttpFoundation\InputBag;
3031
use Symfony\Component\HttpFoundation\ParameterBag;
3132
use Symfony\Component\HttpFoundation\RedirectResponse;
3233
use Symfony\Component\HttpFoundation\Request;
3334
use Symfony\Component\HttpFoundation\Response;
3435
use Symfony\Component\Routing\RouterInterface;
3536

37+
use function class_exists;
38+
3639
class FormValidRequestHandlerSpec extends ObjectBehavior
3740
{
3841
public function let(
@@ -95,14 +98,18 @@ public function it_do_nothing_on_non_POST_request(
9598
public function it_handle_POST_request(
9699
FormEvent $event,
97100
Request $request,
98-
ParameterBag $queryParameterBag,
99101
EventDispatcherInterface $eventDispatcher,
100102
FormInterface $form,
101103
FormElement $element,
102104
RouterInterface $router,
103105
stdClass $object
104106
): void {
105107
$request->isMethod(Request::METHOD_POST)->willReturn(true);
108+
if (class_exists(InputBag::class)) {
109+
$queryParameterBag = new InputBag();
110+
} else {
111+
$queryParameterBag = new ParameterBag();
112+
}
106113
$request->query = $queryParameterBag;
107114

108115
$event->getForm()->willReturn($form);
@@ -118,7 +125,6 @@ public function it_handle_POST_request(
118125
$element->getSuccessRoute()->willReturn('fsi_admin_list');
119126
$element->getSuccessRouteParameters()->willReturn(['element' => 'element_list_id']);
120127
$element->getId()->willReturn('element_form_id');
121-
$queryParameterBag->has('redirect_uri')->willReturn(false);
122128
$router->generate('fsi_admin_list', ['element' => 'element_list_id'])->willReturn('/list/page');
123129

124130
$this->handleRequest($event, $request)->shouldReturnAnInstanceOf(RedirectResponse::class);
@@ -127,13 +133,17 @@ public function it_handle_POST_request(
127133
public function it_return_redirect_response_with_redirect_uri_passed_by_request(
128134
FormEvent $event,
129135
Request $request,
130-
ParameterBag $queryParameterBag,
131136
EventDispatcherInterface $eventDispatcher,
132137
FormInterface $form,
133138
FormElement $element,
134139
stdClass $object
135140
): void {
136141
$request->isMethod(Request::METHOD_POST)->willReturn(true);
142+
if (class_exists(InputBag::class)) {
143+
$queryParameterBag = new InputBag();
144+
} else {
145+
$queryParameterBag = new ParameterBag();
146+
}
137147
$request->query = $queryParameterBag;
138148

139149
$event->getForm()->willReturn($form);
@@ -149,8 +159,7 @@ public function it_return_redirect_response_with_redirect_uri_passed_by_request(
149159
$element->getSuccessRoute()->willReturn('fsi_admin_list');
150160
$element->getSuccessRouteParameters()->willReturn(['element' => 'element_list_id']);
151161
$element->getId()->willReturn('element_form_id');
152-
$queryParameterBag->has('redirect_uri')->willReturn(true);
153-
$queryParameterBag->get('redirect_uri')->willReturn('some_redirect_uri');
162+
$queryParameterBag->set('redirect_uri', 'some_redirect_uri');
154163

155164
$response = $this->handleRequest($event, $request);
156165
$response->shouldBeAnInstanceOf(RedirectResponse::class);

spec/FSi/Bundle/AdminBundle/Admin/ResourceRepository/Context/Request/FormValidRequestHandlerSpec.php

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,15 @@
2525
use Prophecy\Argument;
2626
use Psr\EventDispatcher\EventDispatcherInterface;
2727
use Symfony\Component\Form\FormInterface;
28+
use Symfony\Component\HttpFoundation\InputBag;
2829
use Symfony\Component\HttpFoundation\ParameterBag;
2930
use Symfony\Component\HttpFoundation\RedirectResponse;
3031
use Symfony\Component\HttpFoundation\Request;
3132
use Symfony\Component\HttpFoundation\Response;
3233
use Symfony\Component\Routing\RouterInterface;
3334

35+
use function class_exists;
36+
3437
class FormValidRequestHandlerSpec extends ObjectBehavior
3538
{
3639
public function let(
@@ -77,7 +80,6 @@ public function it_do_nothing_on_non_POST_request(
7780
public function it_handle_POST_request(
7881
FormEvent $event,
7982
Request $request,
80-
ParameterBag $queryParameterBag,
8183
ParameterBag $attributesParameterBag,
8284
ResourceElement $element,
8385
EventDispatcherInterface $eventDispatcher,
@@ -86,8 +88,13 @@ public function it_handle_POST_request(
8688
Resource $resource1,
8789
Resource $resource2
8890
): void {
91+
if (class_exists(InputBag::class)) {
92+
$queryParameterBag = new InputBag();
93+
} else {
94+
$queryParameterBag = new ParameterBag();
95+
}
96+
$request->query = $queryParameterBag;
8997
$attributesParameterBag->has('translatableLocale')->willReturn(false);
90-
$queryParameterBag->has('redirect_uri')->willReturn(false);
9198
$request->isMethod(Request::METHOD_POST)->willReturn(true);
9299
$request->query = $queryParameterBag;
93100
$request->attributes = $attributesParameterBag;

0 commit comments

Comments
 (0)