Beispiel #1
0
 /**
  * Tests if getFrom returns correct value.
  *
  */
 public function testGetFromReturnsCorrectPermission()
 {
     $grantedResource = $this->getMockBuilder('\\Core\\Entity\\PermissionsResourceInterface')->getMockForAbstractClass();
     $grantedResource->expects($this->atLeastOnce())->method('getPermissionsUserIds')->will($this->onConsecutiveCalls(array('all' => array('user1', 'user2'), 'view' => array('popel', 'dopel')), array('all' => array('user3'))));
     $grantedResource->method('getPermissionsResourceId')->willReturn('grantResource');
     $ungrantedResource = $this->getMockBuilder('\\Core\\Entity\\PermissionsResourceInterface')->getMockForAbstractClass();
     $ungrantedResource->method('getPermissionsResourceId')->willReturn('ungrant');
     $target = new Permissions();
     $target->grant($grantedResource, PermissionsInterface::PERMISSION_ALL);
     $this->assertEquals(PermissionsInterface::PERMISSION_NONE, $target->getFrom($ungrantedResource));
     $this->assertEquals(null, $target->getFrom($grantedResource));
     $target->grant($grantedResource, PermissionsInterface::PERMISSION_CHANGE);
     $this->assertEquals(PermissionsInterface::PERMISSION_ALL, $target->getFrom($grantedResource));
 }