Beispiel #1
0
 /**
  * @param RequesterInterface $requester
  * @param ResourceInterface  $resource
  *
  * @return PermissionInterface
  *
  * @throws PermissionNotFoundException
  */
 protected function findPermission(RequesterInterface $requester, ResourceInterface $resource)
 {
     if (null === ($permission = $this->permissionBuffer->get($requester, $resource))) {
         try {
             $mask = $this->databaseProvider->findMask($requester, $resource);
         } catch (MaskNotFoundException $e) {
             throw new PermissionNotFoundException($requester, $resource);
         }
         $permission = $this->initPermission($requester, $resource, $mask);
         $permission->setPersistent(true);
         $this->permissionBuffer->add($permission);
     }
     return $permission;
 }
 public function testFindMaskShouldReturnIntegerWhenFound()
 {
     $this->insertFixture($this->aliceRequester, $this->fooResource, 1);
     $this->assertInternalType('int', $this->databaseProvider->findMask($this->aliceRequester, $this->fooResource));
 }