summaryrefslogtreecommitdiffstats
path: root/Tests/Core/Util/ClassUtilsTest.php
diff options
context:
space:
mode:
authorJordan Alliot <jordan.alliot@gmail.com>2012-04-07 22:09:48 +0200
committerJordan Alliot <jordan.alliot@gmail.com>2012-04-12 00:40:59 +0200
commit477dfe3591444527bd840c1ba325085883c62841 (patch)
tree33641fc2a0b9a48031252644c5d30986023c45de /Tests/Core/Util/ClassUtilsTest.php
parent1cba0bf91c88db420cfe11f49098df2b31071c33 (diff)
downloadsymfony-security-477dfe3591444527bd840c1ba325085883c62841.zip
symfony-security-477dfe3591444527bd840c1ba325085883c62841.tar.gz
symfony-security-477dfe3591444527bd840c1ba325085883c62841.tar.bz2
[Security][ACL] Fixed ObjectIdentity::fromDomainObject and UserSecurityIdentity::from(Account|Token) when working with proxies
Backported ClassUtils class from Doctrine Common 2.2 Fixes #2611, #2056, #2048, #2035
Diffstat (limited to 'Tests/Core/Util/ClassUtilsTest.php')
-rw-r--r--Tests/Core/Util/ClassUtilsTest.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/Tests/Core/Util/ClassUtilsTest.php b/Tests/Core/Util/ClassUtilsTest.php
new file mode 100644
index 0000000..7a6e698
--- /dev/null
+++ b/Tests/Core/Util/ClassUtilsTest.php
@@ -0,0 +1,41 @@
+<?php
+
+namespace Symfony\Component\Security\Tests\Core\Util
+{
+ use Symfony\Component\Security\Core\Util\ClassUtils;
+
+ class ClassUtilsTest extends \PHPUnit_Framework_TestCase
+ {
+ static public function dataGetClass()
+ {
+ return array(
+ array('stdClass', 'stdClass'),
+ array('Symfony\Component\Security\Core\Util\ClassUtils', 'Symfony\Component\Security\Core\Util\ClassUtils'),
+ array('MyProject\Proxies\__CG__\stdClass', 'stdClass'),
+ array('MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\stdClass', 'stdClass'),
+ array('MyProject\Proxies\__CG__\Symfony\Component\Security\Tests\Core\Util\ChildObject', 'Symfony\Component\Security\Tests\Core\Util\ChildObject'),
+ array(new TestObject(), 'Symfony\Component\Security\Tests\Core\Util\TestObject'),
+ array(new \Acme\DemoBundle\Proxy\__CG__\Symfony\Component\Security\Tests\Core\Util\TestObject(), 'Symfony\Component\Security\Tests\Core\Util\TestObject'),
+ );
+ }
+
+ /**
+ * @dataProvider dataGetClass
+ */
+ public function testGetRealClass($object, $expectedClassName)
+ {
+ $this->assertEquals($expectedClassName, ClassUtils::getRealClass($object));
+ }
+ }
+
+ class TestObject
+ {
+ }
+}
+
+namespace Acme\DemoBundle\Proxy\__CG__\Symfony\Component\Security\Tests\Core\Util
+{
+ class TestObject extends \Symfony\Component\Security\Tests\Core\Util\TestObject
+ {
+ }
+}