RoleSecurityIdentityTest.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace Symfony\Tests\Component\Security\Acl\Domain;
  3. use Symfony\Component\Security\Acl\Domain\UserSecurityIdentity;
  4. use Symfony\Component\Security\Role\Role;
  5. use Symfony\Component\Security\Acl\Domain\RoleSecurityIdentity;
  6. class RoleSecurityIdentityTest extends \PHPUnit_Framework_TestCase
  7. {
  8. public function testConstructor()
  9. {
  10. $id = new RoleSecurityIdentity('ROLE_FOO');
  11. $this->assertEquals('ROLE_FOO', $id->getRole());
  12. }
  13. public function testConstructorWithRoleInstance()
  14. {
  15. $id = new RoleSecurityIdentity(new Role('ROLE_FOO'));
  16. $this->assertEquals('ROLE_FOO', $id->getRole());
  17. }
  18. /**
  19. * @dataProvider getCompareData
  20. */
  21. public function testEquals($id1, $id2, $equal)
  22. {
  23. if ($equal) {
  24. $this->assertTrue($id1->equals($id2));
  25. }
  26. else {
  27. $this->assertFalse($id1->equals($id2));
  28. }
  29. }
  30. public function getCompareData()
  31. {
  32. return array(
  33. array(new RoleSecurityIdentity('ROLE_FOO'), new RoleSecurityIdentity('ROLE_FOO'), true),
  34. array(new RoleSecurityIdentity('ROLE_FOO'), new RoleSecurityIdentity(new Role('ROLE_FOO')), true),
  35. array(new RoleSecurityIdentity('ROLE_USER'), new RoleSecurityIdentity('ROLE_FOO'), false),
  36. array(new RoleSecurityIdentity('ROLE_FOO'), new UserSecurityIdentity('ROLE_FOO', 'Foo'), false),
  37. );
  38. }
  39. }