[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