Skip to content

Commit cd8b407

Browse files
Merge branch '6.4' into 7.3
* 6.4: [SecurityBundle] Remove legacy parameter in SecurityDataCollectorTest [Console] Specify types of interactive question choices Prevent duplicate entries in module preloads prefer the public API over reflection in test
2 parents 71fd85a + fa22f8e commit cd8b407

File tree

4 files changed

+18
-38
lines changed

4 files changed

+18
-38
lines changed

src/Symfony/Bundle/SecurityBundle/Tests/DataCollector/SecurityDataCollectorTest.php

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class SecurityDataCollectorTest extends TestCase
4141
{
4242
public function testCollectWhenSecurityIsDisabled()
4343
{
44-
$collector = new SecurityDataCollector(null, null, null, null, null, null, true);
44+
$collector = new SecurityDataCollector(null, null, null, null, null, null);
4545
$collector->collect(new Request(), new Response());
4646

4747
$this->assertSame('security', $collector->getName());
@@ -61,7 +61,7 @@ public function testCollectWhenSecurityIsDisabled()
6161
public function testCollectWhenAuthenticationTokenIsNull()
6262
{
6363
$tokenStorage = new TokenStorage();
64-
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null, true);
64+
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null);
6565
$collector->collect(new Request(), new Response());
6666

6767
$this->assertTrue($collector->isEnabled());
@@ -83,7 +83,7 @@ public function testCollectAuthenticationTokenAndRoles(array $roles, array $norm
8383
$tokenStorage = new TokenStorage();
8484
$tokenStorage->setToken(new UsernamePasswordToken(new InMemoryUser('hhamon', 'P4$$w0rD', $roles), 'provider', $roles));
8585

86-
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null, true);
86+
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null);
8787
$collector->collect(new Request(), new Response());
8888
$collector->lateCollect();
8989

@@ -106,7 +106,7 @@ public function testCollectSwitchUserToken()
106106
$tokenStorage = new TokenStorage();
107107
$tokenStorage->setToken(new SwitchUserToken(new InMemoryUser('hhamon', 'P4$$w0rD', ['ROLE_USER']), 'provider', ['ROLE_USER'], $adminToken));
108108

109-
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null, true);
109+
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null);
110110
$collector->collect(new Request(), new Response());
111111
$collector->lateCollect();
112112

@@ -136,7 +136,7 @@ public function testGetFirewall()
136136
->with($request)
137137
->willReturn($firewallConfig);
138138

139-
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()), true);
139+
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()));
140140
$collector->collect($request, new Response());
141141
$collector->lateCollect();
142142
$collected = $collector->getFirewall();
@@ -160,7 +160,7 @@ public function testGetFirewallReturnsNull()
160160
$response = new Response();
161161

162162
// Don't inject any firewall map
163-
$collector = new SecurityDataCollector(null, null, null, null, null, null, true);
163+
$collector = new SecurityDataCollector(null, null, null, null, null, null);
164164
$collector->collect($request, $response);
165165
$this->assertNull($collector->getFirewall());
166166

@@ -170,7 +170,7 @@ public function testGetFirewallReturnsNull()
170170
->disableOriginalConstructor()
171171
->getMock();
172172

173-
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()), true);
173+
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()));
174174
$collector->collect($request, $response);
175175
$this->assertNull($collector->getFirewall());
176176

@@ -180,7 +180,7 @@ public function testGetFirewallReturnsNull()
180180
->disableOriginalConstructor()
181181
->getMock();
182182

183-
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()), true);
183+
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator()));
184184
$collector->collect($request, $response);
185185
$this->assertNull($collector->getFirewall());
186186
}
@@ -214,7 +214,7 @@ public function testGetListeners()
214214
$firewall = new TraceableFirewallListener($firewallMap, new EventDispatcher(), new LogoutUrlGenerator());
215215
$firewall->onKernelRequest($event);
216216

217-
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, $firewall, true);
217+
$collector = new SecurityDataCollector(null, null, null, null, $firewallMap, $firewall);
218218
$collector->collect($request, $response);
219219

220220
$this->assertNotEmpty($collected = $collector->getListeners()[0]);
@@ -261,7 +261,7 @@ public function dispatch(object $event, ?string $eventName = null): object
261261
],
262262
]]);
263263

264-
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null, true);
264+
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null);
265265

266266
$dataCollector->collect(new Request(), new Response());
267267

@@ -349,7 +349,7 @@ public function dispatch(object $event, ?string $eventName = null): object
349349
],
350350
]);
351351

352-
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null, true);
352+
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null);
353353

354354
$dataCollector->collect(new Request(), new Response());
355355

@@ -421,7 +421,7 @@ public function testGetVotersIfAccessDecisionManagerHasNoVoters()
421421
'voterDetails' => [],
422422
]]);
423423

424-
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null, true);
424+
$dataCollector = new SecurityDataCollector(null, null, null, $accessDecisionManager, null, null);
425425

426426
$dataCollector->collect(new Request(), new Response());
427427

src/Symfony/Component/AssetMapper/ImportMap/ImportMapRenderer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public function render(string|array $entryPoint, array $attributes = []): string
7373
if ('css' !== $data['type']) {
7474
$importMap[$importName] = $path;
7575
if ($preload) {
76-
$modulePreloads[] = $path;
76+
$modulePreloads[$path] = $path;
7777
}
7878
} elseif ($preload) {
7979
$cssLinks[] = $path;

src/Symfony/Component/Console/Question/ChoiceQuestion.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ class ChoiceQuestion extends Question
2525
private string $errorMessage = 'Value "%s" is invalid';
2626

2727
/**
28-
* @param string $question The question to ask to the user
29-
* @param array $choices The list of available choices
30-
* @param string|bool|int|float|null $default The default answer to return
28+
* @param string $question The question to ask to the user
29+
* @param array<string|bool|int|float> $choices The list of available choices
30+
* @param string|bool|int|float|null $default The default answer to return
3131
*/
3232
public function __construct(
3333
string $question,
@@ -45,7 +45,7 @@ public function __construct(
4545
}
4646

4747
/**
48-
* Returns available choices.
48+
* @return array<string|bool|int|float>
4949
*/
5050
public function getChoices(): array
5151
{

src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/NumberToLocalizedStringTransformerTest.php

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -732,7 +732,7 @@ public function testReverseTransformDoesNotCauseIntegerPrecisionLoss()
732732
$this->markTestSkipped('Test is not applicable on 32-bit systems where no integer loses precision when cast to float.');
733733
}
734734

735-
$transformer = new NumberToLocalizedStringTransformer();
735+
$transformer = new NumberToLocalizedStringTransformer(2);
736736

737737
// Test a large integer that causes actual precision loss when cast to float
738738
$largeInt = \PHP_INT_MAX - 1; // This value loses precision when cast to float
@@ -741,24 +741,4 @@ public function testReverseTransformDoesNotCauseIntegerPrecisionLoss()
741741
$this->assertSame($largeInt, $result);
742742
$this->assertIsInt($result);
743743
}
744-
745-
public function testRoundMethodKeepsIntegersAsIntegers()
746-
{
747-
if (\PHP_INT_SIZE === 4) {
748-
$this->markTestSkipped('Test is not applicable on 32-bit systems where no integer loses precision when cast to float.');
749-
}
750-
751-
$transformer = new NumberToLocalizedStringTransformer(2); // scale=2 triggers rounding
752-
753-
// Use reflection to test the private round() method directly
754-
$reflection = new \ReflectionClass($transformer);
755-
$roundMethod = $reflection->getMethod('round');
756-
757-
$int = \PHP_INT_MAX - 1;
758-
$result = $roundMethod->invoke($transformer, $int);
759-
760-
// With the fix, integers should stay as integers, not be converted to floats
761-
$this->assertSame($int, $result);
762-
$this->assertIsInt($result);
763-
}
764744
}

0 commit comments

Comments
 (0)