UserTest.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  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\User;
  11. class UserTest extends \PHPUnit_Framework_TestCase
  12. {
  13. /**
  14. * @covers Symfony\Component\Security\User\User::__construct
  15. * @expectedException InvalidArgumentException
  16. */
  17. public function testConstructorException()
  18. {
  19. new User('', 'superpass');
  20. }
  21. /**
  22. * @covers Symfony\Component\Security\User\User::__construct
  23. * @covers Symfony\Component\Security\User\User::getRoles
  24. */
  25. public function testGetRoles()
  26. {
  27. $user = new User('fabien', 'superpass');
  28. $this->assertEquals(array(), $user->getRoles());
  29. $user = new User('fabien', 'superpass', array('ROLE_ADMIN'));
  30. $this->assertEquals(array('ROLE_ADMIN'), $user->getRoles());
  31. }
  32. /**
  33. * @covers Symfony\Component\Security\User\User::__construct
  34. * @covers Symfony\Component\Security\User\User::getPassword
  35. */
  36. public function testGetPassword()
  37. {
  38. $user = new User('fabien', 'superpass');
  39. $this->assertEquals('superpass', $user->getPassword());
  40. }
  41. /**
  42. * @covers Symfony\Component\Security\User\User::__construct
  43. * @covers Symfony\Component\Security\User\User::getUsername
  44. */
  45. public function testGetUsername()
  46. {
  47. $user = new User('fabien', 'superpass');
  48. $this->assertEquals('fabien', $user->getUsername());
  49. }
  50. /**
  51. * @covers Symfony\Component\Security\User\User::getSalt
  52. */
  53. public function testGetSalt()
  54. {
  55. $user = new User('fabien', 'superpass');
  56. $this->assertEquals('', $user->getSalt());
  57. }
  58. /**
  59. * @covers Symfony\Component\Security\User\User::isAccountNonExpired
  60. */
  61. public function testIsAccountNonExpired()
  62. {
  63. $user = new User('fabien', 'superpass');
  64. $this->assertTrue($user->isAccountNonExpired());
  65. $user = new User('fabien', 'superpass', array(), true, false);
  66. $this->assertFalse($user->isAccountNonExpired());
  67. }
  68. /**
  69. * @covers Symfony\Component\Security\User\User::isCredentialsNonExpired
  70. */
  71. public function testIsCredentialsNonExpired()
  72. {
  73. $user = new User('fabien', 'superpass');
  74. $this->assertTrue($user->isCredentialsNonExpired());
  75. $user = new User('fabien', 'superpass', array(), true, true, false);
  76. $this->assertFalse($user->isCredentialsNonExpired());
  77. }
  78. /**
  79. * @covers Symfony\Component\Security\User\User::isAccountNonLocked
  80. */
  81. public function testIsAccountNonLocked()
  82. {
  83. $user = new User('fabien', 'superpass');
  84. $this->assertTrue($user->isAccountNonLocked());
  85. $user = new User('fabien', 'superpass', array(), true, true, true, false);
  86. $this->assertFalse($user->isAccountNonLocked());
  87. }
  88. /**
  89. * @covers Symfony\Component\Security\User\User::isEnabled
  90. */
  91. public function testIsEnabled()
  92. {
  93. $user = new User('fabien', 'superpass');
  94. $this->assertTrue($user->isEnabled());
  95. $user = new User('fabien', 'superpass', array(), false);
  96. $this->assertFalse($user->isEnabled());
  97. }
  98. /**
  99. * @covers Symfony\Component\Security\User\User::eraseCredentials
  100. */
  101. public function testEraseCredentials()
  102. {
  103. $user = new User('fabien', 'superpass');
  104. $user->eraseCredentials();
  105. $this->assertNull($user->getPassword());
  106. }
  107. /**
  108. * @covers Symfony\Component\Security\User\User::__toString
  109. */
  110. public function testMagicToString()
  111. {
  112. $user = new User('fabien', 'superpass');
  113. $this->assertEquals('fabien', (string) $user);
  114. }
  115. }