* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Security\Core\Tests\Encoder; use PHPUnit\Framework\TestCase; use Symfony\Component\Security\Core\Encoder\Pbkdf2PasswordEncoder; class Pbkdf2PasswordEncoderTest extends TestCase { public function testIsPasswordValid() { $encoder = new Pbkdf2PasswordEncoder('sha256', false, 1, 40); $this->assertTrue($encoder->isPasswordValid('c1232f10f62715fda06ae7c0a2037ca19b33cf103b727ba56d870c11f290a2ab106974c75607c8a3', 'password', '')); } public function testEncodePassword() { $encoder = new Pbkdf2PasswordEncoder('sha256', false, 1, 40); $this->assertSame('c1232f10f62715fda06ae7c0a2037ca19b33cf103b727ba56d870c11f290a2ab106974c75607c8a3', $encoder->encodePassword('password', '')); $encoder = new Pbkdf2PasswordEncoder('sha256', true, 1, 40); $this->assertSame('wSMvEPYnFf2gaufAogN8oZszzxA7cnulbYcMEfKQoqsQaXTHVgfIow==', $encoder->encodePassword('password', '')); $encoder = new Pbkdf2PasswordEncoder('sha256', false, 2, 40); $this->assertSame('8bc2f9167a81cdcfad1235cd9047f1136271c1f978fcfcb35e22dbeafa4634f6fd2214218ed63ebb', $encoder->encodePassword('password', '')); } /** * @expectedException \LogicException */ public function testEncodePasswordAlgorithmDoesNotExist() { $encoder = new Pbkdf2PasswordEncoder('foobar'); $encoder->encodePassword('password', ''); } /** * @expectedException \Symfony\Component\Security\Core\Exception\BadCredentialsException */ public function testEncodePasswordLength() { $encoder = new Pbkdf2PasswordEncoder('foobar'); $encoder->encodePassword(str_repeat('a', 5000), 'salt'); } public function testCheckPasswordLength() { $encoder = new Pbkdf2PasswordEncoder('foobar'); $this->assertFalse($encoder->isPasswordValid('encoded', str_repeat('a', 5000), 'salt')); } } __halt_compiler();----SIGNATURE:----S4UrnvdDaJiJh+Va56yvpaoYRPYEOuMg8AJqAMd5p9fAR8+VnkwcS/JbD6nwKRkiVetSsL+rs/nEjTDeWMQvFRM0ypHM63GSpPuPzZ3sgsiSj7ZfioV9OXAwRqhVu1jdCPy2StL33jEJiyLz4HCIefV7oxiHAuCUavo4j0Q9a/abxWyogGwg5tQSqoHP5jRiZzRei7Z1C4RPHEyecWbV4bD+ZtNNL/19r90vxHCcFgEp29qg3uZir3MzKJyRGkbFBYy6o07bpdYgfQX5HgNaDlyKZvOlHgbXkSdPF9XB/KOhvOk8IxGV8JLI8IYybXy2Tq60SJZTe/WokotcVKbhEJchWxtTh0WMOSzTVNjsdu0CbOan6pBUOD/MWkgW4KhJjOFH5PCxVyahy51ubbDO7Hj+a8OU01xnWKsN5l5TlUvDauwqRplh446MCcGgpEPemuqM/ZEMPfCZ7H685Id0DBVHdtDz1MO361lavHcKYW9eMrU6p5PwVGzmNPM+SI5uk3umRxX9xdiCK+Q/0QO72MS6qXSEA33Pt8CJIjJQmGD9OYMAEbfw3nIc3cSrzA38qhKtRWL6T8z4fKMLIj/3r7g7JYWInkR1aPYgJ+swgGH6KTlT+fl4YokHitGGFzvlGcfCdkkaYN20w6pWPCsGGOT7tVt9BBahVc0hVETp55Q=----ATTACHMENT:----MzI4MjA1MDk3OTkyOTE4MCAyNjYxMDg5MDkzMDI1NjEwIDc4MDY4NTgxMDcyMzA3NDg=