InMemoryProviderTest.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. $this->assertEquals('foo', $provider->loadUserByUsername('fabien')->getPassword());
  33. }
  34. /**
  35. * @expectedException LogicException
  36. */
  37. public function testCreateUserAlreadyExist()
  38. {
  39. $provider = new InMemoryUserProvider();
  40. $provider->createUser(new User('fabien', 'foo'));
  41. $provider->createUser(new User('fabien', 'foo'));
  42. }
  43. /**
  44. * @expectedException Symfony\Component\Security\Exception\UsernameNotFoundException
  45. */
  46. public function testLoadUserByUsernameDoesNotExist()
  47. {
  48. $provider = new InMemoryUserProvider();
  49. $provider->loadUserByUsername('fabien');
  50. }
  51. }