[limb-svn] r7057 - in 3.x/trunk/limb/core: src tests/cases
svn at limb-project.com
svn at limb-project.com
Fri Jun 6 08:57:35 MSD 2008
Author: pachanga
Date: 2008-06-06 08:57:35 +0400 (Fri, 06 Jun 2008)
New Revision: 7057
URL: http://fisheye.limb-project.com/changelog/limb/?cs=7057
Modified:
3.x/trunk/limb/core/src/lmbSerializable.class.php
3.x/trunk/limb/core/tests/cases/lmbSerializableTest.class.php
Log:
-- special cases for internal classes added into lmbSerializable
Modified: 3.x/trunk/limb/core/src/lmbSerializable.class.php
===================================================================
--- 3.x/trunk/limb/core/src/lmbSerializable.class.php 2008-06-05 14:07:20 UTC (rev 7056)
+++ 3.x/trunk/limb/core/src/lmbSerializable.class.php 2008-06-06 04:57:35 UTC (rev 7057)
@@ -76,7 +76,8 @@
foreach($classes as $class)
{
$reflect = new ReflectionClass($class);
- $this->class_paths[] = $reflect->getFileName();
+ if(!$reflect->isInternal())
+ $this->class_paths[] = $reflect->getFileName();
}
}
Modified: 3.x/trunk/limb/core/tests/cases/lmbSerializableTest.class.php
===================================================================
--- 3.x/trunk/limb/core/tests/cases/lmbSerializableTest.class.php 2008-06-05 14:07:20 UTC (rev 7056)
+++ 3.x/trunk/limb/core/tests/cases/lmbSerializableTest.class.php 2008-06-06 04:57:35 UTC (rev 7057)
@@ -60,6 +60,20 @@
$this->assertEqual(lmbSerializable :: extractSerializedClasses($serialized), array('SerializableTestChildStub'));
}
+ function testSerializeUnserializeInternalClass()
+ {
+ if(!class_exists('StdObject'))
+ return;
+
+ $obj = new StdObject;
+ $obj->foo = "foo";
+ $container = new lmbSerializable($obj);
+
+ $file = $this->_writeToFile(serialize($container));
+ $this->_phpSerializedObjectCall($file, '->foo', "foo");
+ unlink($file);
+ }
+
function _writeToFile($serialized)
{
$tmp_serialized_file = LIMB_VAR_DIR . '/serialized.' . mt_rand();
More information about the limb-svn
mailing list