Skip to content

Commit be5dd61

Browse files
committed
Fixed tests
1 parent 97b44ea commit be5dd61

30 files changed

+240
-98
lines changed

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

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
use Symfony\Component\Security\Core\Authorization\Voter\TraceableVoter;
3030
use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface;
3131
use Symfony\Component\Security\Core\Role\RoleHierarchy;
32+
use Symfony\Component\Security\Core\User\InMemoryUser;
3233
use Symfony\Component\Security\Http\FirewallMapInterface;
3334
use Symfony\Component\Security\Http\Logout\LogoutUrlGenerator;
3435
use Symfony\Contracts\EventDispatcher\EventDispatcherInterface;
@@ -78,7 +79,7 @@ public function testCollectWhenAuthenticationTokenIsNull()
7879
public function testCollectAuthenticationTokenAndRoles(array $roles, array $normalizedRoles, array $inheritedRoles)
7980
{
8081
$tokenStorage = new TokenStorage();
81-
$tokenStorage->setToken(new UsernamePasswordToken('hhamon', 'P4$$w0rD', 'provider', $roles));
82+
$tokenStorage->setToken(new UsernamePasswordToken(new InMemoryUser('hhamon', 'P4$$w0rD', $roles), 'provider', $roles));
8283

8384
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null, true);
8485
$collector->collect(new Request(), new Response());
@@ -99,10 +100,10 @@ public function testCollectAuthenticationTokenAndRoles(array $roles, array $norm
99100

100101
public function testCollectSwitchUserToken()
101102
{
102-
$adminToken = new UsernamePasswordToken('yceruto', 'P4$$w0rD', 'provider', ['ROLE_ADMIN']);
103+
$adminToken = new UsernamePasswordToken(new InMemoryUser('yceruto', 'P4$$w0rD', ['ROLE_ADMIN']), 'provider', ['ROLE_ADMIN']);
103104

104105
$tokenStorage = new TokenStorage();
105-
$tokenStorage->setToken(new SwitchUserToken('hhamon', 'P4$$w0rD', 'provider', ['ROLE_USER', 'ROLE_PREVIOUS_ADMIN'], $adminToken));
106+
$tokenStorage->setToken(new SwitchUserToken(new InMemoryUser('hhamon', 'P4$$w0rD', ['ROLE_USER', 'ROLE_PREVIOUS_ADMIN']), 'provider', ['ROLE_USER', 'ROLE_PREVIOUS_ADMIN'], $adminToken));
106107

107108
$collector = new SecurityDataCollector($tokenStorage, $this->getRoleHierarchy(), null, null, null, null, true);
108109
$collector->collect(new Request(), new Response());

src/Symfony/Bundle/SecurityBundle/Tests/Functional/MissingUserProviderTest.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ public function testUserProviderIsNeeded()
2828
]);
2929
}
3030

31+
/**
32+
* @group legacy
33+
*/
3134
public function testLegacyUserProviderIsNeeded()
3235
{
3336
$client = $this->createClient(['test_case' => 'MissingUserProvider', 'root_config' => 'config.yml', 'debug' => true]);

src/Symfony/Bundle/SecurityBundle/Tests/Functional/SecurityTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public function testServiceIsFunctional()
2727

2828
// put a token into the storage so the final calls can function
2929
$user = new InMemoryUser('foo', 'pass');
30-
$token = new UsernamePasswordToken($user, '', 'provider', ['ROLE_USER']);
30+
$token = new UsernamePasswordToken($user, 'provider', ['ROLE_USER']);
3131
$container->get('functional.test.security.token_storage')->setToken($token);
3232

3333
$security = $container->get('functional_test.security.helper');
@@ -105,7 +105,7 @@ public function testLegacyServiceIsFunctional()
105105

106106
// put a token into the storage so the final calls can function
107107
$user = new InMemoryUser('foo', 'pass');
108-
$token = new UsernamePasswordToken($user, '', 'provider', ['ROLE_USER']);
108+
$token = new UsernamePasswordToken($user, 'provider', ['ROLE_USER']);
109109
$container->get('functional.test.security.token_storage')->setToken($token);
110110

111111
$security = $container->get('functional_test.security.helper');

src/Symfony/Component/Security/Core/Authentication/Token/AnonymousToken.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ class AnonymousToken extends AbstractToken
3131
*/
3232
public function __construct(string $secret, $user, array $roles = [])
3333
{
34+
trigger_deprecation('symfony/security-core', '5.4', 'The "%s" class is deprecated.', __CLASS__);
35+
3436
parent::__construct($roles);
3537

3638
$this->secret = $secret;

src/Symfony/Component/Security/Core/Tests/Authentication/AuthenticationTrustResolverTest.php

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ public function testIsAnonymous()
2626
$this->assertFalse($resolver->isAnonymous($this->getToken()));
2727
$this->assertFalse($resolver->isAnonymous($this->getRememberMeToken()));
2828
$this->assertFalse($resolver->isAnonymous(new FakeCustomToken()));
29-
$this->assertTrue($resolver->isAnonymous(new RealCustomAnonymousToken()));
30-
$this->assertTrue($resolver->isAnonymous($this->getAnonymousToken()));
3129
}
3230

3331
public function testIsRememberMe()
@@ -36,7 +34,6 @@ public function testIsRememberMe()
3634

3735
$this->assertFalse($resolver->isRememberMe(null));
3836
$this->assertFalse($resolver->isRememberMe($this->getToken()));
39-
$this->assertFalse($resolver->isRememberMe($this->getAnonymousToken()));
4037
$this->assertFalse($resolver->isRememberMe(new FakeCustomToken()));
4138
$this->assertTrue($resolver->isRememberMe(new RealCustomRememberMeToken()));
4239
$this->assertTrue($resolver->isRememberMe($this->getRememberMeToken()));
@@ -47,9 +44,7 @@ public function testisFullFledged()
4744
$resolver = new AuthenticationTrustResolver();
4845

4946
$this->assertFalse($resolver->isFullFledged(null));
50-
$this->assertFalse($resolver->isFullFledged($this->getAnonymousToken()));
5147
$this->assertFalse($resolver->isFullFledged($this->getRememberMeToken()));
52-
$this->assertFalse($resolver->isFullFledged(new RealCustomAnonymousToken()));
5348
$this->assertFalse($resolver->isFullFledged(new RealCustomRememberMeToken()));
5449
$this->assertTrue($resolver->isFullFledged($this->getToken()));
5550
$this->assertTrue($resolver->isFullFledged(new FakeCustomToken()));
@@ -62,8 +57,6 @@ public function testIsAnonymousWithClassAsConstructorButStillExtending()
6257
$this->assertFalse($resolver->isAnonymous(null));
6358
$this->assertFalse($resolver->isAnonymous($this->getToken()));
6459
$this->assertFalse($resolver->isAnonymous($this->getRememberMeToken()));
65-
$this->assertTrue($resolver->isAnonymous($this->getAnonymousToken()));
66-
$this->assertTrue($resolver->isAnonymous(new RealCustomAnonymousToken()));
6760
}
6861

6962
public function testIsRememberMeWithClassAsConstructorButStillExtending()
@@ -72,7 +65,6 @@ public function testIsRememberMeWithClassAsConstructorButStillExtending()
7265

7366
$this->assertFalse($resolver->isRememberMe(null));
7467
$this->assertFalse($resolver->isRememberMe($this->getToken()));
75-
$this->assertFalse($resolver->isRememberMe($this->getAnonymousToken()));
7668
$this->assertTrue($resolver->isRememberMe($this->getRememberMeToken()));
7769
$this->assertTrue($resolver->isRememberMe(new RealCustomRememberMeToken()));
7870
}
@@ -82,13 +74,27 @@ public function testisFullFledgedWithClassAsConstructorButStillExtending()
8274
$resolver = $this->getResolver();
8375

8476
$this->assertFalse($resolver->isFullFledged(null));
85-
$this->assertFalse($resolver->isFullFledged($this->getAnonymousToken()));
8677
$this->assertFalse($resolver->isFullFledged($this->getRememberMeToken()));
87-
$this->assertFalse($resolver->isFullFledged(new RealCustomAnonymousToken()));
8878
$this->assertFalse($resolver->isFullFledged(new RealCustomRememberMeToken()));
8979
$this->assertTrue($resolver->isFullFledged($this->getToken()));
9080
}
9181

82+
/**
83+
* @group legacy
84+
*/
85+
public function testLegacy()
86+
{
87+
$resolver = $this->getResolver();
88+
89+
$this->assertTrue($resolver->isAnonymous($this->getAnonymousToken()));
90+
$this->assertTrue($resolver->isAnonymous($this->getRealCustomAnonymousToken()));
91+
92+
$this->assertFalse($resolver->isRememberMe($this->getAnonymousToken()));
93+
94+
$this->assertFalse($resolver->isFullFledged($this->getAnonymousToken()));
95+
$this->assertFalse($resolver->isFullFledged($this->getRealCustomAnonymousToken()));
96+
}
97+
9298
protected function getToken()
9399
{
94100
return $this->createMock(TokenInterface::class);
@@ -99,6 +105,15 @@ protected function getAnonymousToken()
99105
return $this->getMockBuilder(AnonymousToken::class)->setConstructorArgs(['', ''])->getMock();
100106
}
101107

108+
private function getRealCustomAnonymousToken()
109+
{
110+
return new class() extends AnonymousToken {
111+
public function __construct()
112+
{
113+
}
114+
};
115+
}
116+
102117
protected function getRememberMeToken()
103118
{
104119
return $this->getMockBuilder(RememberMeToken::class)->setMethods(['setPersistent'])->disableOriginalConstructor()->getMock();
@@ -192,13 +207,6 @@ public function setAttribute(string $name, $value)
192207
}
193208
}
194209

195-
class RealCustomAnonymousToken extends AnonymousToken
196-
{
197-
public function __construct()
198-
{
199-
}
200-
}
201-
202210
class RealCustomRememberMeToken extends RememberMeToken
203211
{
204212
public function __construct()

src/Symfony/Component/Security/Core/Tests/Authentication/Token/AbstractTokenTest.php

Lines changed: 30 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -63,18 +63,38 @@ public function eraseCredentials()
6363
$this->assertEquals('fabien', $token->getUserIdentifier());
6464
}
6565

66-
public function testGetUserIdentifier()
66+
/**
67+
* @dataProvider provideUsers
68+
*/
69+
public function testGetUserIdentifier($user, string $username)
6770
{
6871
$token = new ConcreteToken(['ROLE_FOO']);
69-
$token->setUser('fabien');
70-
$this->assertEquals('fabien', $token->getUserIdentifier());
72+
$token->setUser($user);
73+
$this->assertEquals($username, $token->getUserIdentifier());
74+
}
7175

72-
$token->setUser(new TestUser('fabien'));
73-
$this->assertEquals('fabien', $token->getUserIdentifier());
76+
public function provideUsers()
77+
{
78+
yield [new InMemoryUser('fabien', null), 'fabien'];
79+
}
7480

75-
$user = new InMemoryUser('fabien', null);
81+
/**
82+
* @dataProvider provideLegacyUsers
83+
* @group legacy
84+
*/
85+
public function testLegacyGetUserIdentifier($user, string $username)
86+
{
87+
$token = new ConcreteToken(['ROLE_FOO']);
7688
$token->setUser($user);
77-
$this->assertEquals('fabien', $token->getUserIdentifier());
89+
$this->assertEquals($username, $token->getUserIdentifier());
90+
}
91+
92+
public function provideLegacyUsers()
93+
{
94+
return [
95+
[new TestUser('fabien'), 'fabien'],
96+
['fabien', 'fabien'],
97+
];
7898
}
7999

80100
public function testEraseCredentials()
@@ -143,7 +163,7 @@ public function testAttributes()
143163
}
144164

145165
/**
146-
* @dataProvider getUsers
166+
* @dataProvider provideUsers
147167
*/
148168
public function testSetUser($user)
149169
{
@@ -152,15 +172,6 @@ public function testSetUser($user)
152172
$this->assertSame($user, $token->getUser());
153173
}
154174

155-
public function getUsers()
156-
{
157-
return [
158-
[new InMemoryUser('foo', null)],
159-
[new TestUser('foo')],
160-
['foo'],
161-
];
162-
}
163-
164175
/**
165176
* @group legacy
166177
* @dataProvider getUserChanges
@@ -196,7 +207,8 @@ public function getUserChanges()
196207

197208
/**
198209
* @group legacy
199-
* @dataProvider getUsers
210+
* @dataProvider provideUsers
211+
* @dataProvider provideLegacyUsers
200212
*/
201213
public function testSetUserDoesNotSetAuthenticatedToFalseWhenUserDoesNotChange($user)
202214
{

src/Symfony/Component/Security/Core/Tests/Authentication/Token/AnonymousTokenTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414
use PHPUnit\Framework\TestCase;
1515
use Symfony\Component\Security\Core\Authentication\Token\AnonymousToken;
1616

17+
/**
18+
* @group legacy
19+
*/
1720
class AnonymousTokenTest extends TestCase
1821
{
1922
public function testConstructor()
@@ -22,9 +25,6 @@ public function testConstructor()
2225
$this->assertEquals(['ROLE_FOO'], $token->getRoleNames());
2326
}
2427

25-
/**
26-
* @group legacy
27-
*/
2828
public function testIsAuthenticated()
2929
{
3030
$token = new AnonymousToken('foo', 'bar');

src/Symfony/Component/Security/Core/Tests/Authentication/Token/PreAuthenticatedTokenTest.php

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,30 @@
1313

1414
use PHPUnit\Framework\TestCase;
1515
use Symfony\Component\Security\Core\Authentication\Token\PreAuthenticatedToken;
16+
use Symfony\Component\Security\Core\User\InMemoryUser;
1617

1718
class PreAuthenticatedTokenTest extends TestCase
1819
{
1920
public function testConstructor()
21+
{
22+
$token = new PreAuthenticatedToken(new InMemoryUser('foo', 'bar', ['ROLE_FOO']), 'key', ['ROLE_FOO']);
23+
$this->assertEquals(['ROLE_FOO'], $token->getRoleNames());
24+
$this->assertEquals('key', $token->getFirewallName());
25+
}
26+
27+
/**
28+
* @group legacy
29+
*/
30+
public function testLegacyConstructor()
2031
{
2132
$token = new PreAuthenticatedToken('foo', 'bar', 'key', ['ROLE_FOO']);
2233
$this->assertEquals(['ROLE_FOO'], $token->getRoleNames());
2334
$this->assertEquals('key', $token->getFirewallName());
2435
}
2536

37+
/**
38+
* @group legacy
39+
*/
2640
public function testGetCredentials()
2741
{
2842
$token = new PreAuthenticatedToken('foo', 'bar', 'key');
@@ -31,15 +45,18 @@ public function testGetCredentials()
3145

3246
public function testGetUser()
3347
{
34-
$token = new PreAuthenticatedToken('foo', 'bar', 'key');
35-
$this->assertEquals('foo', $token->getUser());
48+
$token = new PreAuthenticatedToken($user = new InMemoryUser('foo', 'bar'), 'key');
49+
$this->assertEquals($user, $token->getUser());
3650
}
3751

52+
/**
53+
* @group legacy
54+
*/
3855
public function testEraseCredentials()
3956
{
4057
$token = new PreAuthenticatedToken('foo', 'bar', 'key');
4158
$token->eraseCredentials();
42-
$this->assertEquals('', $token->getCredentials());
59+
$this->assertEquals(null, $token->getCredentials());
4360
}
4461

4562
/**

src/Symfony/Component/Security/Core/Tests/Authentication/Token/Storage/TokenStorageTest.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,15 @@
1414
use PHPUnit\Framework\TestCase;
1515
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage;
1616
use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken;
17+
use Symfony\Component\Security\Core\User\InMemoryUser;
1718

1819
class TokenStorageTest extends TestCase
1920
{
2021
public function testGetSetToken()
2122
{
2223
$tokenStorage = new TokenStorage();
2324
$this->assertNull($tokenStorage->getToken());
24-
$token = new UsernamePasswordToken('username', 'password', 'provider');
25+
$token = new UsernamePasswordToken(new InMemoryUser('username', 'password'), 'provider');
2526
$tokenStorage->setToken($token);
2627
$this->assertSame($token, $tokenStorage->getToken());
2728
}

0 commit comments

Comments
 (0)