public function isAccessibleReturnsTrueIfAccessRolesIsSetAndSecurityContextHasOneOfTheRequiredRoles() { /** @var SecurityContext|\PHPUnit_Framework_MockObject_MockObject $mockSecurityContext */ $mockSecurityContext = $this->createMock(SecurityContext::class); $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('SomeOtherRole')->will($this->returnValue(true)); $this->inject($this->nodeData, 'securityContext', $mockSecurityContext); $this->nodeData->setAccessRoles(array('SomeRole', 'SomeOtherRole')); $this->assertTrue($this->nodeData->isAccessible()); }