UserSecurityIdentityTest.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. namespace Symfony\Tests\Component\Security\Acl\Domain;
  3. use Symfony\Component\Security\Acl\Domain\RoleSecurityIdentity;
  4. use Symfony\Component\Security\Acl\Domain\UserSecurityIdentity;
  5. class UserSecurityIdentityTest extends \PHPUnit_Framework_TestCase
  6. {
  7. public function testConstructor()
  8. {
  9. $id = new UserSecurityIdentity('foo');
  10. $this->assertEquals('foo', $id->getUsername());
  11. }
  12. public function testConstructorWithToken()
  13. {
  14. $token = $this->getMock('Symfony\Component\Security\Authentication\Token\TokenInterface');
  15. $token
  16. ->expects($this->once())
  17. ->method('__toString')
  18. ->will($this->returnValue('foo'))
  19. ;
  20. $id = new UserSecurityIdentity($token);
  21. $this->assertEquals('foo', $id->getUsername());
  22. }
  23. /**
  24. * @dataProvider getCompareData
  25. */
  26. public function testEquals($id1, $id2, $equal)
  27. {
  28. if ($equal) {
  29. $this->assertTrue($id1->equals($id2));
  30. }
  31. else {
  32. $this->assertFalse($id1->equals($id2));
  33. }
  34. }
  35. public function getCompareData()
  36. {
  37. $token = $this->getMock('Symfony\Component\Security\Authentication\Token\TokenInterface');
  38. $token
  39. ->expects($this->once())
  40. ->method('__toString')
  41. ->will($this->returnValue('foo'))
  42. ;
  43. return array(
  44. array(new UserSecurityIdentity('foo'), new UserSecurityIdentity('foo'), true),
  45. array(new UserSecurityIdentity('foo'), new UserSecurityIdentity($token), true),
  46. array(new UserSecurityIdentity('bla'), new UserSecurityIdentity('blub'), false),
  47. array(new UserSecurityIdentity('foo'), new RoleSecurityIdentity('foo'), false),
  48. );
  49. }
  50. }