EncoderFactoryTest.php 1.4 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace Symfony\Tests\Component\Security\Encoder;
  3. use Symfony\Component\Security\Encoder\MessageDigestPasswordEncoder;
  4. use Symfony\Component\Security\Encoder\EncoderFactory;
  5. class EncoderFactoryTest extends \PHPUnit_Framework_TestCase
  6. {
  7. public function testGetEncoderWithMessageDigestEncoder()
  8. {
  9. $factory = new EncoderFactory(array('Symfony\Component\Security\User\AccountInterface' => array(
  10. 'class' => 'Symfony\Component\Security\Encoder\MessageDigestPasswordEncoder',
  11. 'arguments' => array('sha512', true, 5),
  12. )));
  13. $encoder = $factory->getEncoder($this->getMock('Symfony\Component\Security\User\AccountInterface'));
  14. $expectedEncoder = new MessageDigestPasswordEncoder('sha512', true, 5);
  15. $this->assertEquals($expectedEncoder->encodePassword('foo', 'moo'), $encoder->encodePassword('foo', 'moo'));
  16. }
  17. public function testGetEncoderWithService()
  18. {
  19. $factory = new EncoderFactory(array());
  20. $factory->addEncoder('Symfony\Component\Security\User\AccountInterface', new MessageDigestPasswordEncoder('sha1'));
  21. $encoder = $factory->getEncoder($this->getMock('Symfony\Component\Security\User\AccountInterface'));
  22. $expectedEncoder = new MessageDigestPasswordEncoder('sha1');
  23. $this->assertEquals($expectedEncoder->encodePassword('foo', ''), $encoder->encodePassword('foo', ''));
  24. }
  25. }