diff options
-rw-r--r-- | Core/Authorization/DebugAccessDecisionManager.php | 38 | ||||
-rw-r--r-- | Core/Tests/Authorization/DebugAccessDecisionManagerTest.php | 14 |
2 files changed, 8 insertions, 44 deletions
diff --git a/Core/Authorization/DebugAccessDecisionManager.php b/Core/Authorization/DebugAccessDecisionManager.php index aa15443..219ca76 100644 --- a/Core/Authorization/DebugAccessDecisionManager.php +++ b/Core/Authorization/DebugAccessDecisionManager.php @@ -11,7 +11,6 @@ namespace Symfony\Component\Security\Core\Authorization; -use Doctrine\Common\Util\ClassUtils; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; /** @@ -50,7 +49,7 @@ class DebugAccessDecisionManager implements AccessDecisionManagerInterface $this->decisionLog[] = array( 'attributes' => $attributes, - 'object' => $this->getStringRepresentation($object), + 'object' => $object, 'result' => $result, ); @@ -96,39 +95,4 @@ class DebugAccessDecisionManager implements AccessDecisionManagerInterface { return $this->decisionLog; } - - /** - * @param mixed $object - * - * @return string - */ - private function getStringRepresentation($object) - { - if (null === $object) { - return 'NULL'; - } - - if (!is_object($object)) { - if (is_bool($object)) { - return sprintf('%s (%s)', gettype($object), $object ? 'true' : 'false'); - } - if (is_scalar($object)) { - return sprintf('%s (%s)', gettype($object), $object); - } - - return gettype($object); - } - - $objectClass = class_exists('Doctrine\Common\Util\ClassUtils') ? ClassUtils::getClass($object) : get_class($object); - - if (method_exists($object, 'getId')) { - $objectAsString = sprintf('ID: %s', $object->getId()); - } elseif (method_exists($object, '__toString')) { - $objectAsString = (string) $object; - } else { - $objectAsString = sprintf('object hash: %s', spl_object_hash($object)); - } - - return sprintf('%s (%s)', $objectClass, $objectAsString); - } } diff --git a/Core/Tests/Authorization/DebugAccessDecisionManagerTest.php b/Core/Tests/Authorization/DebugAccessDecisionManagerTest.php index f90f776..16661f7 100644 --- a/Core/Tests/Authorization/DebugAccessDecisionManagerTest.php +++ b/Core/Tests/Authorization/DebugAccessDecisionManagerTest.php @@ -32,12 +32,12 @@ class DebugAccessDecisionManagerTest extends \PHPUnit_Framework_TestCase { $object = new \stdClass(); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'NULL', 'result' => false)), null); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'boolean (true)', 'result' => false)), true); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'string (jolie string)', 'result' => false)), 'jolie string'); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'integer (12345)', 'result' => false)), 12345); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'resource', 'result' => false)), fopen(__FILE__, 'r')); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'array', 'result' => false)), array()); - yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => sprintf('stdClass (object hash: %s)', spl_object_hash($object)), 'result' => false)), $object); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => null, 'result' => false)), null); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => true, 'result' => false)), true); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 'jolie string', 'result' => false)), 'jolie string'); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => 12345, 'result' => false)), 12345); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => $x = fopen(__FILE__, 'r'), 'result' => false)), $x); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => $x = array(), 'result' => false)), $x); + yield array(array(array('attributes' => array('ATTRIBUTE_1'), 'object' => $object, 'result' => false)), $object); } } |