InMemoryProviderTest.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /*
  3. * This file is part of the Symfony package.
  4. * (c) Fabien Potencier <fabien.potencier@symfony-project.com>
  5. *
  6. * For the full copyright and license information, please view the LICENSE
  7. * file that was distributed with this source code.
  8. */
  9. namespace Symfony\Tests\Component\Security\User;
  10. use Symfony\Component\Security\User\InMemoryUserProvider;
  11. use Symfony\Component\Security\User\User;
  12. class InMemoryUserProviderTest extends \PHPUnit_Framework_TestCase
  13. {
  14. public function testConstructor()
  15. {
  16. $provider = new InMemoryUserProvider(array(
  17. 'fabien' => array(
  18. 'password' => 'foo',
  19. 'enabled' => false,
  20. 'roles' => array('ROLE_USER'),
  21. ),
  22. ));
  23. $user = $provider->loadUserByUsername('fabien');
  24. $this->assertEquals('foo', $user->getPassword());
  25. $this->assertEquals(array('ROLE_USER'), $user->getRoles());
  26. $this->assertFalse($user->isEnabled());
  27. }
  28. public function testCreateUser()
  29. {
  30. $provider = new InMemoryUserProvider();
  31. $provider->createUser(new User('fabien', 'foo'));
  32. $user = $provider->loadUserByUsername('fabien');
  33. $this->assertEquals('foo', $user->getPassword());
  34. }
  35. /**
  36. * @expectedException LogicException
  37. */
  38. public function testCreateUserAlreadyExist()
  39. {
  40. $provider = new InMemoryUserProvider();
  41. $provider->createUser(new User('fabien', 'foo'));
  42. $provider->createUser(new User('fabien', 'foo'));
  43. }
  44. /**
  45. * @expectedException Symfony\Component\Security\Exception\UsernameNotFoundException
  46. */
  47. public function testLoadUserByUsernameDoesNotExist()
  48. {
  49. $provider = new InMemoryUserProvider();
  50. $provider->loadUserByUsername('fabien');
  51. }
  52. }