Пример #1
0
 /**
  * Sets the roles which are required to access this node
  *
  * @param array $accessRoles
  * @return void
  * @api
  */
 public function setAccessRoles(array $accessRoles)
 {
     if (!$this->isNodeDataMatchingContext()) {
         $this->materializeNodeData();
     }
     $this->nodeData->setAccessRoles($accessRoles);
     $this->context->getFirstLevelNodeCache()->flush();
     $this->emitNodeUpdated($this);
 }
Пример #2
0
 /**
  * @test
  */
 public function isAccessibleReturnsTrueIfRoleIsEveryone()
 {
     $mockSecurityContext = $this->getMock('TYPO3\\Flow\\Security\\Context');
     $mockSecurityContext->expects($this->any())->method('isInitialized')->will($this->returnValue(TRUE));
     $mockSecurityContext->expects($this->at(0))->method('hasRole')->with('SomeRole')->will($this->returnValue(FALSE));
     $mockSecurityContext->expects($this->at(1))->method('hasRole')->with('Everyone')->will($this->returnValue(TRUE));
     $this->nodeData->_set('securityContext', $mockSecurityContext);
     $this->nodeData->setAccessRoles(array('SomeRole', 'Everyone', 'SomeOtherRole'));
     $this->assertTrue($this->nodeData->isAccessible());
 }
 /**
  * @test
  */
 public function isAccessibleReturnsTrueIfRoleIsEveryone()
 {
     /** @var Context|\PHPUnit_Framework_MockObject_MockObject $mockSecurityContext */
     $mockSecurityContext = $this->createMock('TYPO3\\Flow\\Security\\Context');
     $mockSecurityContext->expects($this->at(0))->method('canBeInitialized')->will($this->returnValue(true));
     $mockSecurityContext->expects($this->at(1))->method('hasRole')->with('SomeRole')->will($this->returnValue(false));
     $mockSecurityContext->expects($this->at(2))->method('hasRole')->with('Everyone')->will($this->returnValue(true));
     $this->inject($this->nodeData, 'securityContext', $mockSecurityContext);
     $this->nodeData->setAccessRoles(array('SomeRole', 'Everyone', 'SomeOtherRole'));
     $this->assertTrue($this->nodeData->isAccessible());
 }