* * 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\UserPasswordEncoder; class UserPasswordEncoderTest extends TestCase { public function testEncodePassword() { $userMock = $this->getMockBuilder('Symfony\Component\Security\Core\User\UserInterface')->getMock(); $userMock->expects($this->any()) ->method('getSalt') ->will($this->returnValue('userSalt')); $mockEncoder = $this->getMockBuilder('Symfony\Component\Security\Core\Encoder\PasswordEncoderInterface')->getMock(); $mockEncoder->expects($this->any()) ->method('encodePassword') ->with($this->equalTo('plainPassword'), $this->equalTo('userSalt')) ->will($this->returnValue('encodedPassword')); $mockEncoderFactory = $this->getMockBuilder('Symfony\Component\Security\Core\Encoder\EncoderFactoryInterface')->getMock(); $mockEncoderFactory->expects($this->any()) ->method('getEncoder') ->with($this->equalTo($userMock)) ->will($this->returnValue($mockEncoder)); $passwordEncoder = new UserPasswordEncoder($mockEncoderFactory); $encoded = $passwordEncoder->encodePassword($userMock, 'plainPassword'); $this->assertEquals('encodedPassword', $encoded); } public function testIsPasswordValid() { $userMock = $this->getMockBuilder('Symfony\Component\Security\Core\User\UserInterface')->getMock(); $userMock->expects($this->any()) ->method('getSalt') ->will($this->returnValue('userSalt')); $userMock->expects($this->any()) ->method('getPassword') ->will($this->returnValue('encodedPassword')); $mockEncoder = $this->getMockBuilder('Symfony\Component\Security\Core\Encoder\PasswordEncoderInterface')->getMock(); $mockEncoder->expects($this->any()) ->method('isPasswordValid') ->with($this->equalTo('encodedPassword'), $this->equalTo('plainPassword'), $this->equalTo('userSalt')) ->will($this->returnValue(true)); $mockEncoderFactory = $this->getMockBuilder('Symfony\Component\Security\Core\Encoder\EncoderFactoryInterface')->getMock(); $mockEncoderFactory->expects($this->any()) ->method('getEncoder') ->with($this->equalTo($userMock)) ->will($this->returnValue($mockEncoder)); $passwordEncoder = new UserPasswordEncoder($mockEncoderFactory); $isValid = $passwordEncoder->isPasswordValid($userMock, 'plainPassword'); $this->assertTrue($isValid); } } __halt_compiler();----SIGNATURE:----KGp1yPtzs+FRQu9PvkpD0b0LBuhl+qGf7akmrz6+bXFI+x6QyG+roUXIej6i8whlUXuXUeUg3Zv3GwJz1pcUZoqT2eULAFToesmYL/nu5dti9np8xCTSEK2RTa1/eF+O2tX9tBYya32YAWEV/10TaxeU0wlVzL5B5pNfQ0QhZw33qZrGewjJ2fPG6BvljbfZcLuNn6ndyw6YZwrMAXjzUlZN3zfJ1kePGUwzFvFBdAuzZ897bo6EtLPkaDH7LcrTpLi/dprUQdGfkT3q4HX+c5V3EYzjFlxho4Eli1kaPubWXwd5Keao63XfuHc1kDdP/JRlthKDehyPlG5ZnJrwF5FB4n0cSGnTCasK2ndhydZEtCSu/AfLJMyk11OPsbhkxTmjSbWu1Kjusrd4GhcuSVv9Ma+b1UcWmhNqpaOEr/dkYuvQaUcVP09qFsSwfs6RIm3hYbG0ervlGCT7eA3qrDa1T8+IiEB5C4lIwhESMbX5AV9AukKKB5bVwLDMEhq89PtGXvv8734BV2ORBCRuBVIJmkjowpaVLlgmdBsaB2gRk0LF574kXlk7MMkM/pwHLlGYBPCP+gvksW5qhLZfu0ro6PiRYT2fsu/SkjbCZ2nNITsOmEaPQCOGLyrpp74VYm23wAKgdE+Gzi1ha+wUXWyaNaRUK5WPXu3aeeYfVO8=----ATTACHMENT:----MTg5Njc2NjQ5MzY5MzA2NSA1MjU5Mjg2MDU1MTM0MzkgOTA5NzUxMTM5NTM1MTAwOQ==